如何在 OPNsense 中解析區網主機名稱
原文由 Michael Lynch 于 發布,訂閱此部落格
我的路由器跑的是 OPNsense Business。我喜歡用開源路由器,但它還是有幾個讓人不甚滿意的地方。
最大的問題是,OPNsense 預設無法解析區域網路內的主機名稱。
為什麼 OPNsense 無法解析區網主機名稱?
我以前用過的其他路由器,只要區網內有一台電腦叫做 foo123,我在主要桌機上執行 ping foo123,就一切正常。桌機可以成功 ping 到 foo123。
換成 OPNsense 之後,我就沒辦法從桌機 ping 到 foo123 了。OPNsense 預設似乎不會解析區網主機名稱,我也不懂為什麼要這樣設計。
我找到了一些變通方法,多少能改善狀況,但還是不夠完美。
讓 Unbound 去解析區網主機名稱
前往 Services > Unbound DNS > General。
勾選以下選項:
- Register ISC DHCP4 Leases
- Register DHCP Static Mappings

在 Unbound 設定中勾選「Register ISC DHCP4 Leases」和「Register DHCP Static Mappings」
點擊 Apply 套用變更。
手動指定主機名稱
即使已經設定了 Unbound,我發現 OPNsense 還是常常無法解析區網主機,我也不知道原因。
在非得讓 OPNsense 解析不可的情況下,我就手動強制建立對應。
選擇區網使用的網域名稱
- 前往 System > Settings > General。
- 在「Domain」欄位中,為你的區域網路指定一個網域名稱。
- 我本來一直以為應該要用
local,但說明文字卻警告說不該這麼做。 - 我選了
home.arpa,因為那是家用網路在技術上正確的網域,不過真的醜到不行。 - 根據 IETF 的定義,網域實際上應該是
home.arpa.(最後面要加一個點),但 OPNsense 不接受這種寫法當作網域,而是建議用home.arpa,所以我就照它的建議用了。
- 我本來一直以為應該要用
- 點擊「Save」套用變更。

為主機建立靜態對應
- 前往 Services > ISC DHCPv4 > Leases
- 在主機清單中找到你想讓 OPNsense 能解析的那台主機。
- 點擊該列最右側的
+圖示。這會帶你進入 Static DHCP Mapping 對話框。 - 在
IP address欄位中輸入一組區網 IP 位址。 - 點擊「Save」儲存這組靜態 IP 對應。
為主機名稱建立手動覆寫
- 前往 Services > Unbound DNS > Overrides。
- 在「Host Overrides」下方,點擊橘色的「+」按鈕來新增一筆覆寫。
- 在「Host」欄位輸入你在靜態對應中指定的主機名稱。
- 在「Domain」欄位輸入
home.arpa。 - 在「IP address」欄位輸入你在靜態對應中指定的 IP 位址。
- 點擊「Save」。
用 .home.arpa 網域後綴來指定主機
有時候 OPNsense 無法解析主機 foo123,卻可以成功解析 foo123.home.arpa,所以如果只打主機名稱沒用,我一定會試試看加上網域後綴。
我也不太懂為什麼 OPNsense 非得要加後綴不可,明明沒有加網域名稱,就應該很明顯我指的是區域網路內的主機才對,但加上 .home.arpa 有時候就是有用。
還有其他改進方法嗎?
如果你有辦法讓 OPNsense 的主機名稱解析不那麼容易出錯、更穩定可靠,歡迎在留言區告訴我。
隨機一篇部落格
留言
登入後參與討論