Networking
wget 80% 的時間無法解析主機地址
我有
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 的工具(ping6
IPv6 ICMP 請求是否存在)。我在一些由命名支持的負載平衡 DNS 伺服器中看到的配置問題(無論支持動態 DNS 解析器的東西都應該適用)是,當負載平衡配置中有 A 記錄並且沒有相同的記錄時name 中的 name ,對 AAAA 記錄的請求回退到named 響應 NXDomain**錯誤(沒有此類域),從而阻止解析器嘗試任何其他請求。一種解決方法是為該名稱添加 A、TXT 或其他兼容記錄,因此當named擷取 AAAA 請求時,它不會返回地址也不會返回NXDomain,因此客戶端將繼續查找 A 記錄。
如果您無法控制 DNS 伺服器,則使用
wget --inet4-only
選項可能會有所幫助。如果這樣可以解決您的問題,您還應該將 DNS 問題告知域所有者。