Provavelmente, você precisa indicar que o IPv4 é preferido em relação ao IPv6, conforme mencionado neste link. link
Altere a configuração em /etc/gai.conf.
No meu servidor dedicado (hospedado pela OVH), que está executando uma nova instalação do Ubuntu 14.04, o curl e o wget levam aproximadamente 10 segundos para concluir uma solicitação simples.
$ curl -v google.com
* Rebuilt URL to: google.com/
* Hostname was NOT found in DNS cache
e somente após 10 segundos ele retornará algo. Então eu decidi executar strace sobre isso:
write(2, "Hostname was NOT found in DNS ca"..., 36) = 36
socket(PF_INET6, SOCK_DGRAM, IPPROTO_IP) = 3
close(3) = 0
mmap(NULL, 8392704, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7f0a24fb8000
mprotect(0x7f0a24fb8000, 4096, PROT_NONE) = 0
clone(child_stack=0x7f0a257b7f70, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7f0a257b89d0, tls=0x7f0a257b8700, child_tidptr=0x7f0a257b89d0) = 5047
poll(0, 0, 4) = 0 (Timeout)
poll(0, 0, 8) = 0 (Timeout)
poll(0, 0, 16) = 0 (Timeout)
poll(0, 0, 32) = 0 (Timeout)
poll(0, 0, 64) = 0 (Timeout)
poll(0, 0, 128) = 0 (Timeout)
poll(0, 0, 256) = 0 (Timeout)
poll(0, 0, 1000) = 0 (Timeout)
poll(0, 0, 1000) = 0 (Timeout)
[...] (10 times or so)
poll(0, 0, 1000) = 0 (Timeout)
poll(0, 0, 1000) = 0 (Timeout)
socket(PF_INET, SOCK_STREAM, IPPROTO_TCP) = 3
write(2, "*", 1) = 1
write(2, " ", 1) = 1
write(2, " Trying 74.125.228.7...\n", 25) = 25
Eu posso ver claramente o socket (PF_INET6) seguido pelo socket (PF_INET) depois de todos esses timeouts. O wget se comporta da mesma maneira.
Mais informações relevantes:
$ sudo sysctl -p
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
$ sudo cat /etc/default/bind9
RESOLVCONF=yes
OPTIONS="-4 -u bind"
$ cat /proc/sys/net/ipv6/conf/all/disable_ipv6
1
ifconfig não mostra endereços inet6.
Como posso evitar que isso aconteça?
Provavelmente, você precisa indicar que o IPv4 é preferido em relação ao IPv6, conforme mencionado neste link. link
Altere a configuração em /etc/gai.conf.
Tags ipv6 wget curl domain-name-system ubuntu