Hi Everyone :) I have a quite annoying problem on several ubuntu 12.04 servers. I know that I should use ubuntu mailing list but I tried that with no success :) Maybe someone here will be able to help.
When I force a dns query using: time wget --waitretry=1 http://xxx.yyy -O - I get (tcpdump & wireshark) the info that an AAAA IPv6 query is first send to a DNS server from /etc/resolv.conf. The server is only serving IPv4 queries so it responds with an error. Then an IPv4 query is sent. Overall the process takes ~10 seconds every time so its painful. I tried to disable IPv6 by: - adding to sysctl.conf net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.lo.disable_ipv6 = 1 - adding to /etc/default/grub GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1" - adding to /etc/modprobe.d/blacklist.conf blacklist ipv6 and then I run update-grub an performed a restart. The server is not using IPv6 anymore BUT the IPv6 queries are still performed before IPv4 queries for each dns lookup which I perform with wget/curl or from inside my node.js application. From my point of view it is quite strange :D I disabled IPv6 and still see IPv6 queries :D I also tried to: - add to /etc/gai.conf precedence ::ffff:0:0/96 100 - add to /etc/resolv.conf options single-request - update all packages and kernel (and performed a reboot afterwards). but it did not help. I know that I can use wget -4 to force IPv6 but we are running some node.js apps and for them the problem is the same Any clues? :D BR, Rafal.