Networking

wget 80% 的時間無法解析主機地址

  • August 17, 2018

我有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有自己的解析名稱的方法?這是在樹莓派上。

從技術上講,它們都應該使用相同的地址解析方式,但是ping很可能根本不會嘗試解析 IPv6 地址(AAAA 記錄)並直接查詢 A 記錄,因為它是一個僅限 IPv4 的工具(ping6IPv6 ICMP 請求是否存在)。

我在一些由命名支持的負載平衡 DNS 伺服器中看到的配置問題(無論支持動態 DNS 解析器的東西都應該適用)是,當負載平衡配置中有 A 記錄並且沒有相同的記錄時name 中的 name ,對 AAAA 記錄的請求回退到named 響應 NXDomain**錯誤沒有此類域),從而阻止解析器嘗試任何其他請求。一種解決方法是為該名稱添加 A、TXT 或其他兼容記錄,因此當named擷取 AAAA 請求時,它不會返回地址也不會返回NXDomain,因此客戶端將繼續查找 A 記錄。

如果您無法控制 DNS 伺服器,則使用wget --inet4-only選項可能會有所幫助。如果這樣可以解決您的問題,您還應該將 DNS 問題告知域所有者。

引用自:https://unix.stackexchange.com/questions/168584