由于某种原因,Windows 不使用路由器 DNS,但 WSL Ubuntu 却使用

由于某种原因,Windows 不使用路由器 DNS,但 WSL Ubuntu 却使用

我为此苦苦挣扎了很长时间。我的网络上只有很少的设备,出于某种原因,我主电脑上的 Windows 无法识别它们

控制台屏幕截图

对我来说这没什么意义 - WSL Ubuntu 不会从 Windows 中派生设置吗?我在 Windows 上的所有地方都设置了默认 DNS。

设置屏幕截图

您知道可能存在什么问题吗?

我还检查了网络的 DNS 中是否列出了路由器 IP 设置屏幕截图 - 2

Windows 上的 nslookup 输出

Default Server:  UnKnown
Address:  192.168.100.1

wsl 上的 resolv.conf

# This file was automatically generated by WSL. To stop automatic generation of this file, add the following entry to /etc/wsl.conf:
# [network]
# generateResolvConf = false
nameserver 172.31.96.1

更奇怪的是,nslookup 可以正确解析 IP 地址。

>nslookup main
Server:  UnKnown
Address:  192.168.100.1

Name:    main
Address:  192.168.100.89

编辑。我​​在其他帖子中找到了这个问题的答案:为什么“nslookup”工作正常而“ping”无法解析名称? 感谢@DanielB 使用 nslookup 命令向我指出答案。

答案1

我在其他帖子中找到了这个问题的答案。感谢@DanielB 指导我使用“nslookup”命令,从那时起,找到相关问题就变得很容易了。事实证明,Windows 有时出于某种原因不使用 dns,要强制它使用它,您可以在名称末尾添加“。”。

所以: ping main不起作用,但ping main.确实有效。其他命令也一样,要使用我在路由器 DNS 中使用的名称通过 ssh 进入设备,我必须使用类似 ssh username@dnsname.

如果您有 Web 服务并希望在浏览器中访问它们,您也可以通过在名称中添加点来实现,例如:main.:port

相关内容