Académique Documents
Professionnel Documents
Culture Documents
VICERRECTORADO ACADEMICO
DECANATO DE DOCENCIA
DEPARTAMENTO DE INGENIERIA EN INFORMATICA
Descripcin breve
Analisis de la configuracin de IPv6 as como de los
mensajes ICMPv6 que son enviados a travs de una
red local de maquinas virtuales.
ANLISIS ICMPv6
Prueba de entorno
Primeramente debemos comprobar que tanto la mquina virtual (VM) como el host tengan ambos
habilitados IPv6. Podemos verificar en ambos casos desde la terminal de ambos sistemas operativos.
Primeramente verificamos en el host, que para este caso ser Windows 10. Usamos netsh para ver
la direccin IPv6 asignada.
Ahora verificamos que IPv6 est habilitado en la mquina virtual, que sera una distribucin de Linux
(Ubuntu 16.04 LTS) y usamos el comando ip a.
Para comprobar la conexin entre la VM y el host realizaremos un ping desde el host a la direccin
del VM como se muestra a continuacin.
Vemos como existe la respuesta desde la VM haca el host, ahora vemos los mensajes que se han
enviado y su respuesta desde Wireshark.
Autoconfiguracin
El protocolo IPv6 realiza al inicio del sistema una autoconfiguracin para conocer si existe un
router el cual pueda asignarle una direccin, en caso que no exista se auto configura con una
direccin de alcance local, en donde sus primeros 16 bits seran FE80:
Seguidamente enva un Router Solicitation, donde pide al router que le asigne una direccin. Caso
curioso es que enva este Router Solicitation sin tener ninguna direccin asignada, cosa que no
sucede en las distribuciones de Linux. Pregunta en la red si existe algn host que posea est
direccin, de ser no as ya realiza un Router Solicitation con una direccin de alcance local que
genera aleatoriamente. El Router Solicitation lo enva 3 veces.
La primera diferencia que se observa es que lo antes de enviar un Router Solicitation el sistema se
autoconfigura con su direccin de alcance local, para hacer esto primero enva un Neighbor
Solicitation preguntando si algn equipo tiene la direccin que va a autoasignarse, una vez tiene
esta direccin enva el Router Solicitation, esto lo hace 3 veces si no existe respuesta solo se queda
con su direccin local.
Bajo el protocolo de IPv4 el ping se realiza bajo ICMP usando el cdigo de mensaje 0 y 8, donde 0
sera para un echo reply y el codigo 8 para un echo request. El tamao del encabezado sera de 74
bytes.
En la siguiente captura de pantalla se observa el encabezado en protocolo IPv4, se ve la versin del
protocolo, el tamao total del paquete, tamao del encabezado, el checksum que se realiza para
comprobar la integridad del paquete, el TTL, el protocolo del paquete, la IP de destino y la de origen,
se puede observar bastante informacin en el encabezado que corresponde a IPv4.
En la cabecera se IPv6 lo primero que se observa es que tiene menos campos, sigue conservando la
versin del protocolo, TTL que se conoce ahora conoce como Hop Limit determinando el nmero
de saltos que puede dar un paquete estando limitado a 255 saltos, la direccin de origen como la
direccin de destino y el Next Header donde se informa del encabezado siguiente inmediato y
localizado en el principio del campo de datos.
Para la fragmentacin en IPv4 tenemos esta captura, el tamao del paquete no vara mucho en
relacin a la fragmentacin que se realiz en IPv6 siendo el tamao de la data de 1480 bytes, la
fragmentacin es indicada en el flag del header que posee tres bits en donde se enciende el
tercero para indicar la fragmentacin del paquete. Con el fragment offset se sabe que porcin del
paquete se est recibiendo.
Una de las grandes diferencias en cmo se fragmentan los paquetes en ambos protocolos
es que para IPv4 los paquetes son fragmentados en el router mientras que para IPv6 es el
router quien le indica al host emisor del paquete que este es demasiado grande mediante
un mensaje ICMPv6 (Cdigo 2) y que debe fragmentarlo y entonces el host enva de nuevo
el paquete fragmentado.
La forma en que se denota el fragmentado en el encabezado tambin es diferente para
ambos protocolos. Mientras en IPv4 este se denota en los flags para IPv6 este se denota
es en el encabezado de extensin.
Este caso en particular es mas probable que suceda para algunas distribuciones de Linux ya que
asignan sus direcciones IPv6 en base a su direccin MAC. Caso contrario para Windows en donde
estas IPs son asignadas de manera aleatoria. En la siguiente captura de Wireshark podemos ver
como se autoconfiguran dos mquinas bajo Windows con la misma direccin MAC.
Determinacin de Alcanzabilidad
Realizamos un ping6 entre dos de nuestras maquinas virtuales (ambas bajo Linux), se ve el echo y el
request de una maquina a otra, pero se observa algo fuera de lo comn como lo es un Neighbor
Solicitation y un Neighbor Advertesiment. Estos incluso no son realizados desde la direccin de
donde se est haciendo el ping6 sino desde la direccin local del host.
Para visualizar de mejor manera esto vamos a aplicar un filtro para solo ver los paquetes de este
tipo que surgieron durante la captura.
Durante la captura se ven varios mensajes de Neighbor Solicitation y Neighbor Advertesiment uno
de ellos enviado hacia la direccin de alcance local, pero porque existen estos mensajes durante
el ping?, para determinar la alcanzabilidad de los paquetes que se estn enviando durante el
ping6.