我wget 'http://xxxx.net/somepage.asp?params@abc'
在 bash 文件中有一个。
当我运行它时,五分之四的内容是:
Resolving xxxx.net (xxxx.net)... failed: No address associated with hostname.
wget: unable to resolve host address 'xxxx.net'
以为是我的DNS服务器有问题,所以ping -c 2 xxxx.net
在wget之前加了一个。 Ping 一直都是 100% 正确解析。
可能是什么原因?wget
有自己的解析名称的方法吗?这是在 Raspberry Pi 上。
答案1
从技术上讲,它们应该使用相同的地址解析方式,但是ping
可能根本不会尝试解析 IPv6 地址(AAAA 记录)并直接查询 A 记录,因为它是仅 IPv4 的工具(ping6
执行 IPv6 ICMP 请求)。
我在一些支持的负载平衡 DNS 服务器中发现了一个配置问题命名的(无论什么支持动态 DNS 解析器,都应该适用)是,当负载平衡配置中存在 A 记录并且在命名的,对 AAAA 记录的请求会回退到命名的其响应NX域错误(没有这样的域),阻止解析器尝试任何其他请求。一种修复方法是为该名称添加 A、TXT 或其他兼容记录,以便在命名的捕获 AAAA 请求,它不会返回地址,也不会返回NX域,因此客户端将继续查找 A 记录。
如果您无法控制 DNS 服务器,使用wget --inet4-only
选项可能会有所帮助。如果这解决了您的问题,您还应该告知域所有者 DNS 问题。