Práctica — DNS cambia: observa antes de concluir
En esta práctica observarás cómo las respuestas DNS de servicios reales pueden variar. No buscamos un resultado predeterminado: buscamos aprender a describir correctamente lo que la evidencia permite afirmar.
Objetivo
Observar el comportamiento dinámico de DNS y distinguir entre una observación y la interpretación que hacemos de ella.
Durante la práctica utilizaremos dig, Wireshark y,
opcionalmente, mediciones desde distintos puntos de Internet.
Parte 1 — Elegir un servicio real
Comienza realizando consultas a varios servicios públicos.
dig google.com A
dig cloudflare.com A
dig amazon.com A
Observa las respuestas y selecciona uno de los dominios para continuar con la práctica.
Parte 2 — Mirar más allá de la dirección IP
Para el dominio elegido ejecuta:
dig <dominio> A
Localiza:
- IP o IPs recibidas;
- TTL;
- cantidad de respuestas;
- Query time;
- resolver utilizado.
No. El Query time describe el tiempo observado para completar la consulta. El TTL indica cuánto tiempo puede mantenerse en caché un registro.
Parte 3 — Consultar repetidamente
Sustituye <dominio> por el dominio que elegiste:
for i in {1..10}; do
dig <dominio> A +noall +answer
sleep 5
done
Realizarás diez consultas separadas aproximadamente por cinco segundos.
Registra lo que observas:
| Consulta | TTL | IP / IPs | ¿Cambió? |
|---|---|---|---|
| 1 | |||
| 2 | |||
| 3 | |||
| 4 | |||
| 5 | |||
| 6 | |||
| 7 | |||
| 8 | |||
| 9 | |||
| 10 |
Eso también es un resultado válido. Diez consultas durante unos segundos constituyen solamente una pequeña ventana de observación.
Parte 4 — Cambiar de resolver
Ahora consulta el mismo dominio utilizando dos resolvers públicos.
dig @1.1.1.1 <dominio> A
dig @8.8.8.8 <dominio> A
Compara los resultados:
| Resolver | TTL | IP / IPs |
|---|---|---|
| 1.1.1.1 | ||
| 8.8.8.8 |
Parte 5 — Verlo en Wireshark
Inicia una captura en Wireshark y realiza algunas de las consultas anteriores.
Primero muestra todo el tráfico DNS:
dns
Después muestra solamente las respuestas:
dns.flags.response == 1
Selecciona una respuesta y expande:
Domain Name System
↓
Answers
↓
Time to live
Compara el TTL que observaste con dig con la información
contenida dentro del paquete DNS.
dig con la estructura del protocolo que Wireshark permite
inspeccionar.
Parte 6 — El experimento geográfico
Esta parte es avanzada y opcional.
Podemos utilizar una plataforma de medición distribuida como RIPE Atlas para observar una consulta DNS desde diferentes puntos de Internet.
Después compara:
- IP recibidas;
- TTL;
- cantidad de respuestas;
- diferencias entre puntos de medición.
¿Qué diferencias observamos dependiendo del punto de medición?
No debemos asumir que necesariamente encontraremos respuestas diferentes.
Parte 7 — La trampa Fast Flux
Imagina que observas el siguiente comportamiento:
TTL: 60 seconds
T1 → IP A, IP B, IP C
T2 → IP D, IP E, IP F
T3 → IP G, IP H, IP I
Con esta información solamente no podemos afirmarlo.
Antes de formular una hipótesis necesitamos buscar más contexto:
Preguntas
- ¿Con qué rapidez cambian las direcciones?
- ¿Cuántas IP diferentes aparecen?
- ¿A qué redes o ASN pertenecen?
- ¿La infraestructura parece coherente?
- ¿Qué sabemos del dominio?
- ¿El comportamiento es nuevo o histórico?
- ¿Existen otras señales relacionadas?
Parte 8 — Construye tu interpretación
Completa la siguiente tabla utilizando lo aprendido durante la práctica.
| Observación | Evidencia | ¿Qué puedo afirmar? | ¿Qué necesito investigar? |
|---|---|---|---|
| TTL bajo | |||
| Varias IP | |||
| Respuestas diferentes | |||
| Diferentes ASN | |||
| Cambio frecuente |
El objetivo no es encontrar una respuesta predeterminada, sino distinguir entre lo que observaste y lo que la evidencia realmente permite concluir.
Cierre de la práctica
No:
DNS legítimo puede ser altamente dinámico. Antes de interpretar un comportamiento como sospechoso necesitamos comprender cómo se comporta la infraestructura legítima.
Una observación nos dice qué ocurrió. El contexto nos ayuda a entender qué podría significar.