Troubleshooting DNS: nslookup, dig, DoH
· 7 min de lectura
En resumen: Los problemas DNS son de las causas más frecuentes y difíciles de diagnosticar de caídas - porque "el DNS me funciona" no significa que funciona para tus clientes. Aquí tienes un repaso de herramientas y procedimientos prácticos.
En resumen: Los problemas DNS son de las causas más frecuentes y difíciles de diagnosticar de caídas - porque "el DNS me funciona" no significa que funciona para tus clientes. Aquí tienes un repaso de herramientas y procedimientos prácticos.
Problemas DNS más comunes
- Registro del dominio caducado - todo el DNS deja de funcionar.
- Registro A/AAAA incorrecto - tras migración del servidor se olvidó actualizar.
- CNAME / MX faltante - el email no funciona, mientras que la web sí.
- TTL no preparado para cambios rápidos - los cachés de providers aún sirven datos antiguos.
- Error DNSSEC - los validadores rechazan registros sin firmar o mal firmados.
- Fallo Geo-DNS - el resolver de una región concreta recibe respuesta incorrecta.
nslookup: el comando más sencillo
Disponible en todos los OS sin instalación. Usa el servidor DNS por defecto del sistema, pero se puede especificar explícitamente como segundo argumento.
$ nslookup epulz.io
Server: 127.0.0.53
Address: 127.0.0.53#53
Non-authoritative answer:
Name: epulz.io
Address: 87.197.115.180
# Usar explícitamente Cloudflare DNS
$ nslookup epulz.io 1.1.1.1
# Tipo concreto de registro
$ nslookup -type=MX gmail.com 8.8.8.8
$ nslookup -type=TXT _dmarc.epulz.io 1.1.1.1
dig: consulta DNS detallada para Unix
dig (Domain Information Groper) es significativamente más detallado y flexible. Parte del paquete bind-utils o dnsutils.
$ dig epulz.io
;; QUESTION SECTION:
;epulz.io. IN A
;; ANSWER SECTION:
epulz.io. 300 IN A 87.197.115.180
;; Query time: 12 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: ...
Campos clave:
TTL(300) = segundos durante los que el resolver puede cachear la respuesta.ANSWER SECTION= el resultado.SERVER= qué resolver DNS respondió.Query time= duración - útil al depurar DNS lento.
Comandos prácticos
# Respuesta breve (solo IP)
$ dig +short epulz.io
87.197.115.180
# Todos los registros
$ dig epulz.io ANY
# Trace de toda la jerarquía DNS (desde root nameservers)
$ dig +trace epulz.io
# Reverse lookup
$ dig -x 87.197.115.180
# Resolver concreto
$ dig @8.8.8.8 epulz.io
$ dig @1.1.1.1 epulz.io
$ dig @9.9.9.9 epulz.io
# Validación DNSSEC
$ dig +dnssec epulz.io
DNS-over-HTTPS (DoH): cuando no tienes UDP/53
En algunas redes (firewalls corporativos, datos móviles con bloqueo) el puerto DNS tradicional 53 está bloqueado. DoH empaqueta consultas DNS en requests HTTPS - pasan por todas partes donde funciona 443.
# Endpoint DoH de Cloudflare
$ curl -s "https://cloudflare-dns.com/dns-query?name=epulz.io&type=A" \
-H "Accept: application/dns-json" | jq
# Google DoH
$ curl -s "https://dns.google/resolve?name=epulz.io&type=MX" | jq
Un cliente DoH online con bonita UI lo tenemos también en - sin instalación.
Procedimiento ante "el dominio no funciona"
- Comprueba el registro.
whois yourdomain.como via el registrador. Si caducó, nada más se puede arreglar. - Comprueba los registros NS.
dig NS yourdomain.com @8.8.8.8. ¿Se devuelven los nameservers responsables del dominio? ¿Coinciden con los del panel del registrador? - Comprueba el registro A.
dig yourdomain.com @8.8.8.8. ¿Devuelve la IP correcta? - Prueba desde red externa (datos móviles, VPN, herramienta online). Tú mismo puedes tener datos antiguos cacheados.
- Comprueba el TTL. Si acabas de cambiar un registro, espera al menos el TTL original (por defecto 1-24 horas).
- Comprueba DNSSEC. Si lo usas, la cadena de firmas puede estar rota.
dig +dnssec yourdomain.commuestra la flagaden caso de éxito.
Propagación DNS: ¿cuánto tarda?
"Propagación DNS" es un término un poco engañoso. El DNS no se propaga hacia ti - tus resolvers descargan la respuesta y la cachean según el TTL. Solo tras expirar el TTL intentan una nueva consulta.
Consecuencias prácticas:
- ¿Planeas una migración? Baja el TTL a 60-300 segundos al menos 48 horas antes.
- La IP antigua seguirá siendo válida para algunos clientes mucho después del cambio. No apagues el servidor antiguo de inmediato.
- Los cloud providers (Cloudflare, AWS Route 53) tienen TTL rápido e cache invalidation, pero el cliente final todavía debe esperar el TTL de su propio resolver.
Conclusión
El DNS es el pegamento de infraestructura que todos dan por sentado - hasta que deja de funcionar. La monitorización regular de registros DNS (A, NS, MX, su TTL y validación DNSSEC) descubre el problema antes de que un cliente lo reporte por teléfono.
Monitorización de DNS y expiración WHOIS
ePulz.io rastrea registros A/AAAA/MX/NS y la expiración del registro del dominio. 7 días gratis.
Prueba ePulz.io gratis - 7 días sin tarjeta de crédito.
Crear cuenta