Problemas de DNS en la instalación nueva de CentOS

8

Tengo algunos problemas de DNS en una nueva caja que estoy instalando con CentOS 6.2.

Puedo buscar nombres usando nslookup, dig o host. Puedo hacer ping a las máquinas por nombre o por dirección IP. Sin embargo, cuando pruebo otras herramientas, como ssh, wget o yum, no pueden resolver los nombres. Por ejemplo:

# wget http://www.google.com
--2012-03-08 14:48:06--  http://www.google.com/
Resolving www.google.com... failed: Name or service not known.
wget: unable to resolve host address `www.google.com'
# ssh www.google.com
ssh: Could not resolve hostname www.google.com: Name or service not known
# ping -c 1 www.google.com
PING www.l.google.com (74.125.113.106) 56(84) bytes of data.
64 bytes from vw-in-f106.1e100.net (74.125.113.106): icmp_seq=1 ttl=46 time=43.6 ms

--- www.l.google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 59ms
rtt min/avg/max/mdev = 43.665/43.665/43.665/0.000 ms
# host www.google.com
www.google.com is an alias for www.l.google.com.
www.l.google.com has address 74.125.113.99
www.l.google.com has address 74.125.113.103
www.l.google.com has address 74.125.113.104
www.l.google.com has address 74.125.113.105
www.l.google.com has address 74.125.113.106
www.l.google.com has address 74.125.113.147

Mi archivo /etc/nsswitch.conf es el predeterminado, incluida esta línea (estándar):

hosts:      files dns

/etc/resolv.conf está configurado por DHCP:

; generated by /sbin/dhclient-script
nameserver 192.168.1.254

192.168.1.254 es un servidor DNS que funciona (mi módem DSL, funciona desde hace años con otras máquinas)

¿Alguien sabe por qué ping funcionaría, pero ssh / wget fallaría?


Según la sugerencia de NcA, intenté cambiar /etc/resolv.conf para señalar 8.8.8.8. Por extraño que parezca, esto hace que funcione. Obviamente, mi módem DSL está respondiendo a las solicitudes de DNS de alguna manera que a algunas partes del sistema de resolución de Linux no les gusta. Mirando el tcpdump, no puedo ver cuál es la diferencia. Ciertamente, ambos servidores envían las mismas direcciones.

Aquí está el resultado tcpdump -nn -Xcon el servidor configurado en el servidor DNS en el módem DSL. Está respondiendo claramente con las direcciones correctas, pero ssh / wget no parece contento por alguna razón:

15:53:52.133580 IP 192.168.1.254.53 > 192.168.1.2.54836: 33157 7/0/0 CNAME www.l.google.com., A 74.125.115.105, A 74.125.115.106, A 74.125.115.147, A 74.125.115.99, A 74.125.115.103, A 74.125.115.104 (148)
        0x0000:  4500 00b0 e33a 0000 ff11 53b1 c0a8 01fe  E....:....S.....
        0x0010:  c0a8 0102 0035 d634 009c 7528 8185 8180  .....5.4..u(....
        0x0020:  0001 0007 0000 0000 0377 7777 0667 6f6f  .........www.goo
        0x0030:  676c 6503 636f 6d00 0001 0001 c00c 0005  gle.com.........
        0x0040:  0001 0007 acd0 0008 0377 7777 016c c010  .........www.l..
        0x0050:  c02c 0001 0001 0000 0001 0004 4a7d 7369  .,..........J}si
        0x0060:  c02c 0001 0001 0000 0001 0004 4a7d 736a  .,..........J}sj
        0x0070:  c02c 0001 0001 0000 0001 0004 4a7d 7393  .,..........J}s.
        0x0080:  c02c 0001 0001 0000 0001 0004 4a7d 7363  .,..........J}sc
        0x0090:  c02c 0001 0001 0000 0001 0004 4a7d 7367  .,..........J}sg
        0x00a0:  c02c 0001 0001 0000 0001 0004 4a7d 7368  .,..........J}sh
15:53:52.135669 IP 192.168.1.254.53 > 192.168.1.2.54836: 65062- 0/0/0 (32)
        0x0000:  4500 003c e33b 0000 ff11 5424 c0a8 01fe  E..<.;....T$....
        0x0010:  c0a8 0102 0035 d634 0028 98f9 fe26 8000  .....5.4.(...&..
        0x0020:  0001 0000 0000 0000 0377 7777 0667 6f6f  .........www.goo
        0x0030:  676c 6503 636f 6d00 001c 0001            gle.com.....

No soy lo suficientemente experto como para saber si esto está mal formado de alguna manera, pero el ping parece hacer lo correcto.

A modo de comparación, esto es lo mismo al consultar 8.8.8.8:

15:57:27.990270 IP 8.8.8.8.53 > 192.168.1.2.49028: 59114 7/0/0 CNAME www.l.google.com., A 74.125.113.105, A 74.125.113.103, A 74.125.113.106, A 74.125.113.147, A 74.125.113.104, A 74.125.113.99 (148)
        0x0000:  4500 00b0 5530 0000 2f11 6453 0808 0808  E...U0../.dS....
        0x0010:  c0a8 0102 0035 bf84 009c 39f8 e6ea 8180  .....5....9.....
        0x0020:  0001 0007 0000 0000 0377 7777 0667 6f6f  .........www.goo
        0x0030:  676c 6503 636f 6d00 0001 0001 c00c 0005  gle.com.........
        0x0040:  0001 0001 516a 0008 0377 7777 016c c010  ....Qj...www.l..
        0x0050:  c02c 0001 0001 0000 0116 0004 4a7d 7169  .,..........J}qi
        0x0060:  c02c 0001 0001 0000 0116 0004 4a7d 7167  .,..........J}qg
        0x0070:  c02c 0001 0001 0000 0116 0004 4a7d 716a  .,..........J}qj
        0x0080:  c02c 0001 0001 0000 0116 0004 4a7d 7193  .,..........J}q.
        0x0090:  c02c 0001 0001 0000 0116 0004 4a7d 7168  .,..........J}qh
        0x00a0:  c02c 0001 0001 0000 0116 0004 4a7d 7163  .,..........J}qc
15:57:28.018909 IP 8.8.8.8.53 > 192.168.1.2.49028: 31984 1/1/0 CNAME www.l.google.com. (102)
        0x0000:  4500 0082 7b1b 0000 2f11 3e96 0808 0808  E...{.../.>.....
        0x0010:  c0a8 0102 0035 bf84 006e c67e 7cf0 8180  .....5...n.~|...
        0x0020:  0001 0001 0001 0000 0377 7777 0667 6f6f  .........www.goo
        0x0030:  676c 6503 636f 6d00 001c 0001 c00c 0005  gle.com.........
        0x0040:  0001 0001 517f 0008 0377 7777 016c c010  ....Q....www.l..
        0x0050:  c030 0006 0001 0000 0258 0026 036e 7334  .0.......X.&.ns4
        0x0060:  c010 0964 6e73 2d61 646d 696e c010 0016  ...dns-admin....
        0x0070:  91f3 0000 0384 0000 0384 0000 0708 0000  ................
        0x0080:  003c                                     .<

Todavía no sé por qué la respuesta del servidor es adecuada para ping pero no para ssh / wget.

Si alguien tiene ideas, me encantaría escucharlas. Sin embargo, por ahora, puedo referirme a un servidor DNS externo o configurar mi propio servidor en la nueva caja. Es una solución alternativa que parece ser innecesaria, pero me permitirá continuar.

Rick Koshi
fuente
Intente agregar "nameserver 8.8.8.8" a su /etc/resolv.conf y publique sus resultados. Vamos a reducirlo al error del cliente o servidor.
NcA
¿Cómo se ve tu /etc/host.conf ?
Nils
@Nils: /etc/host.conf es el predeterminado, que contiene solo la línea 'multi on'
Rick Koshi
¿Podría publicar la salida de excavación desde su servidor local y desde 8.8.8.8 en su totalidad? ¿Cuánto tiempo lleva esta caja de Centos? ¿Tiene alguna otra computadora detrás de este módem DSL? ¿Qué pasa con las consultas WRT dns? ¿Has intentado reiniciar la caja de Centos? A menos que haya truncado accidentalmente la salida anterior, los dos volcados no se ven iguales. ¿Has intentado reiniciar el módem DSL?
kls
1
Interesante problema Y un trabajo bastante sólido para solucionarlo.
jamieb

Respuestas:

2

Usando esto: https://www.centos.org/modules/newbb/viewtopic.php?topic_id=39343

Encontré un comando de teclado que me ayudó a solucionar problemas:

[root@localhost ~]# wget -6 URL -Ha fallado

[root@localhost ~]# wget -4 URL -Trabajó

Tiene algo que ver con la pila predeterminada de ipv6 que está causando problemas con ciertas utilidades. Deshabilite ipv6 para resolver.

David T
fuente
+1 a ipv6. pinges solo para v4 (hay ping6para v6 pings) y es por eso que funciona. Sin embargo, no recomendaría deshabilitarlo: muchos ISP modernos lo hacen peor en v4. Muchos hacen NAT de su lado ... por desgracia. Sospecho que el servidor DNS del módem no es compatible con los registros AAAA correctamente, lo que causa esta incómoda falla. Google DNS o OpenDNS pueden ser una buena solución.
rvs
2

Tengo el mismo problema pero lo solucioné.

Debe añadir al archivo de DNS en la interfaz de configuración, /etc/sysconfig/network-scripts/ifcfg-eth0. Agrega la línea

DNS1=xxx.xxx.xxx.xxx

Y luego debe reiniciar el servicio de red.

# systemctl restart NetworkManager
TamVo
fuente
no funcionó para mí :(
VaTo
1

Detenga primero el firewall. Siempre quítelo cuando solucione problemas de red (siempre que sea posible). Si suelta el cortafuegos y su problema desaparece, el problema se resuelve, si no, al menos está fuera del camino por ahora.

1) iptables -L vea si hay alguna regla DROP que pueda estar afectando los paquetes salientes

2) Verifique si selinux está funcionando y haciendo algo extraño (/ etc / selinux / config)

3) cuál es el resultado de lo siguiente: ruta -n

4) cómo se ve / etc / sysconfig / network-scripts / ifcfg-eth0

5) ¿puedes hacer ping a tu puerta de enlace sin problemas?

Esperemos que uno de estos le brinde la información que necesita para diagnosticar el problema.

jemmille
fuente
1

Según la publicación original, agregué 8.8.8.8 /etc/resolv.confy /etc/sysconfig/network-scripts/ifcfg-eth0Ni editar solucionó mi problema.

Luego edité /etc/nsswitch.conf:

Original

hosts:          files  mdns4_minimal [NOTFOUND=return] dns mdns4

Editado

hosts:          files  dns mdns4_minimal [NOTFOUND=return] mdns4

Ahora DNS funciona para yum y wget.

efelton
fuente
0

Intente agregar hosts de pedidos, enlace a /etc/host.conf .

Nils
fuente
-1

Intente agregar la línea "opciones de solicitud única" a su /etc/resolv.conf. Esto le indicará a libc que haga 2 solicitudes (A y AAAA) en lugar de enviarlas desde el mismo puerto. Debería ayudar

Alex Samorukov
fuente