DNS
Domain Name Sistem - ( Sistema de Nombres de Dominio ) es un protocolo utilizado en redes, específicamente en Internet, para la resolución de nombres de dominio. Su función principal es traducir los nombres de dominio (como www.ejemplo.com) a direcciones IP (como 192.168.1.1), que son las que utilizan los dispositivos para comunicarse en la red.
Vamos a ver en Wireshark como aparecen las peticiones y las respuestas a nivel de protocolo y a nivel datagrama.
1 Instalar Wireshark, te dejo el enlace para poder descargarlo.
2 Ya que está descargado e instalado vamos a abrirlo y a seleccionar la interface que vamos a capturar.
3 Podrás ver el trafico que va generando nuestro equipo ya sea aplicaciones que tenemos abiertas, navegador.
4 Realizaremos las pruebas abriendo 2 páginas para poder encontrar el trafico. Las páginas que voy abrir sería:
1.- ForoISP.com
2.- WispHub.net
5 Realizar los siguientes pasos.
1.- Haremos un filtrado con la palabra dns dentro de winkshare.
2.- Busquemos la primera página que abrimos.
6 Aplicar el filtro para la conversación UDP
7 Ahora veremos que es lo que se a enviado en el equipo.
- Se encapsula en ethernet
- Se encapsula en ipv4
- Se encapsula en udp
- Se encapsula en el protocolo de aplicación DNS, el que realmente nos importa.
Queries : Realiza la consulta
- Name: Resuelve el nombre de www.foroisp.com.
- Type: Pregunta el tipo de registro que tiene que es: A es el registro más utilizado ya que traduce un nombre de dominio a versión 4. (en caso de ser versión ipv6 saldría AAAA).
8A continuación veremos la respuesta que nos arroja el servidor DNS.
- Name: ForoISP.com
- Type: A
- Address: 104.21.80.213
Al recibir esto nuestro ordenador ya va a saber que para pedir la pagina www.foroisp.com necesitará enviar una petición HTTP GET y esa petición que se encuentra en la capa 3 la dirección destino tiene que ser la 104.21.80.213.
Archivo adjunto 3446
9Para saber si esto es cierto vamos a realizar lo siguiente, pero antes de eso vamos a eliminar el filtro que tenemos seleccionado de la siguiente forma.
10 Aquí es donde vamos a observar como nuestra pc envía esa comunicación http get contra el servidor. También agregaremos un filtro de ipv4.
11 Ya aplicado el filtro podremos observar como se realiza un 3-way-handshake (proceso del protocolo TCP para establecer conexión entre un cilente y servidor.)
- Petición DNS
- Respuesta DNS
- Inicio del 3-way-hansdhake
Cliente ---> Servidor
|---SYN---> (Quiero conectarme)
|<--SYN-ACK-- (Conexión aceptada, listo para comunicarnos)
|---ACK---> (Confirmado, empecemos a transmitir datos)
4. Tráfico HTTP
|---GET---> (Conexión lograda mediante HTTP)
12 Ahora vamos a realizar una nueva búsqueda con otra página, la haremos con WispHub.net. y volvemos a realizar el mismo proceso.
- DNS
2. Aplicar filtro UDP
3. Cuando veamos la respuesta nos daremos cuenta que es distinta.
Vamos a profundizar un poco más en la respuesta que nos devolvió.
- Name: Nos devuelve el nombre de lo que buscamos.
- Type: HTTPS (toda la comunicación entre el cliente y el servidor es cifrada, lo que garantiza privacidad y seguridad de los datos.)
- ScvParam: (Se utiliza en TLS para permitir la conexión segura y reducir la latencia)
- IP: Son las direcciones IPv4 asociadas al servicio de WispHub.net
- SvcParamIPv6: El cliente puede conectarse si esta en una red compatible con IPv6
- IP: Son las direcciones IPv6 asociadas al servicio de WispHub.net
Nota
Te dejaré una lista de servidores DNS públicos que puedes utilizar para que veas las diferencias de tiempos de las respuesta. Estas las puedes configurar dentro de la configuracion de la tarjeta de red en tu equipo. Lista de servidores
Nota
Recuerda siempre configurar el DNS primario y secundario, si el primario en algún momento se llega a caer no podrás acceder a una pagina, hará como si no tuvieras internet. En caso de que el DNS secundario se encuentre configurado entonces no habrá ningun problema.