如何在 OPNsense 中解析區域網路主機名稱
我的路由器執行的是 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 的主機名稱解析更穩定、更可靠的建議,歡迎在留言區告訴我。
隨機一篇部落格