Domain-Name-System
Tomato 韌體上的 Dnsmasq 不會從簡單的名稱地址回复
我希望能夠從簡單的名稱“pos”訪問電腦 192.168.0.3。不是“pos.com”或任何東西。通過下面的設置,我可以 ping dev.pos,但不能 pos。我必須 ping mydomain.pos 才能得到回复。
在番茄中的基本>標識中,我已將域名設置為
mydomain.
(帶句點)local-ttl=1 bogus-priv domain=mydomain expand-hosts local=/pos/ address=/pos/192.168.0.3
可能是什麼問題呢?
更新:當我從番茄路由器的“ping 工具”ping 時,我在 ping“pos”時得到正確的響應。只是不是來自任何連接到它的電腦。
更新 0.5:執行 nslookup 並輸入
pos.
(帶句點)有效;不是沒有。更新 2:我注意到的另一個問題是我的本地 dns 記憶體在訪問這些 dns 條目時不會更新。所以要測試:
cmd ipconfig /flushdns ping google.ca ipconfig /displaydns ' Notice that there are entries ipconfig /flushdns ping dev.pos ipconfig /displaydns ' Notice that there aren't any entries for dev.pos
進一步研究它,我發現了這個連結。但是,將我的配置更改為匹配並沒有任何幫助。
進入我的乙太網適配器的設置並更改“將這些 DNS 後綴(按順序)添加到“。”修復它。但這感覺很髒。我現在必須在所有連接的電腦和任何沒有更改的電腦上更改此設置必須使用“pos”。
我不能確切地說出為什麼,但使用
address=/pos.mydomain/192.168.0.3
而不是address=/pos/192.168.0.3
工作。
dnsmasq
不會自動將域搜尋列表推送到使用 DHCP 獲取 IP 地址的主機。為此需要設置 DHCP 參數。您還應該將路由器的地址推送為 DNS 伺服器。查看 dnsmasq 文件以了解 DHCP 可以發送的一些數據。
- DHCP 選項 6 是名稱伺服器列表
- DHCP option 119 是搜尋列表的域名列表
編輯:如果您希望能夠僅通過名稱來引用伺服器,您應該在
dnsmasq
. (不要使用local
,因為這會與 zeroconf 衝突。)一些路由器使用lan
, 和localnet
是傳統名稱。將此域設置為搜尋列表中的第一個域。