[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Problem with name resolution - IPv6 queries are sent before IPv4.



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.

Reply to: