遇到一個奇怪的問題,ubuntu 下使用 KRDC 遠端訪問區域網主機時,連線主機名失敗,使用 ip 則正常。透過 nslookup 命令發現,區域網主機名沒有被正確解析(使用的是預設的 127.0.0.53 )。而使用閘道器則可以解析出來。
在 linux 終端下使用命令繼續檢視
resolvectl status
strace nslookup win11
strace nslookup win11 172.16.0.1
cat /etc/systemd/resolved.conf
網上檢索也有一些類似的資訊
Question on nslookup command
Why does /etc/resolv.conf point at 127.0.0.53?
NSLookup Unable To Resolve Local Computer's Hostname
再問 Claude,問題看起來明朗起來
最後修改resolved.conf檔案,再將systemd-resolved服務重啟,問題消失。
echo "LLMNR=yes" | sudo tee -a /etc/systemd/resolved.conf
systemctl restart systemd-resolved
下面的修改似乎不是必須的
sed -i '/^#MulticastDNS=yes/s/^#//' /etc/systemd/resolved.conf
A question about the linux nslookup command not being able to resolve lan hostname using 127.0.0.53, but gateway.
最好還是多瞭解一下 systemd-resolved.service,比如看這篇 DNS三兩事: 尋找最佳DNS及正確設定DNS伺服器(Ubuntu) 就瞭解了之前模糊的東西。