ubuntu
またはwget
、apt-get
、..を使用すると、curl
内でDNSの解決が非常に遅くなりました。
root@815340a37f0e:/# time curl www.google.com
...
real 0m5.132s
user 0m0.006s
sys 0m0.003s
nslookup
を実行すると、かなり高速になります。
root@815340a37f0e:/# time nslookup google.com
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
Name: google.com
Address: 173.194.78.101
...
real 0m0.024s
user 0m0.010s
sys 0m0.005s
同じ問題が発生し、 ハードウェアがIPv6で壊れた動作を示していることがわかりました。
curl
で再確認し、次のようにIPv4を強制することができます。
$ time curl -4 www.google.com
...
real 0m0.074s
user 0m0.011s
sys 0m0.000s
更新1:
Windowsホストシステムに問題がありました(Ubuntu 14.04がゲストです)。実際の解決策は このページにあります。
options single-request-reopen
を/etc/resolvconf/resolv.conf.d/base
に追加し、Sudo resolvconf -h
を実行することでうまくいきました。
askubuntu で、ほぼ同じことを示唆する別の回答を見つけました。