Algunos conceptos sobre el protocolo IPv6
El protocolo IPv6 (Internet Protocol version 6) que viene a suplir al IPv4 está cada día más extendido. Y es que la falta de direcciones IP es un hecho ya real debido a la gran cantidad de dispositivos que conectamos hoy en día a la red. Ordenadores, smartphones, tablets, televisores, neveras, … y la obsesión que tenemos en tenerlo todo conectado ha forzado la implementación del protocolo IPv6.
Representación
Las direcciones IPv6 tienen una longitud de 128bits dividos en 8 grupos de 4 dígitos cada uno en formato hexadecimal. Los 48 primeros bits son asignados por el proveedor, los 16 siguientes bits son la subred y los últimos 64bits son de la máquina.
Este es el aspecto de una dirección IPv6:
FEDC:0098:7654:3210:0EDC:BA98:0000:3210
Existe una regla que permite quitar los ceros de la izquierda del grupo o suprimir un grupo que únicamente contenga 0 por lo que también os podéis encontrar la dirección IPv6 de la siguiente manera:
FEDC:98:7654:3210:0EDC:BA98::3210
Tipos de direcciones
A diferencia del protocolo IPv4 en el que, por norma general, un adaptador de red recibe una sola dirección, en IPv6 un adaptador tendrá varias direcciones como veremos a continuación.
Direcciones unicast
Este es el tipo general de direcciones que al igual que en el protocolo IPv4 identifican a un host. Un paquete enviado a una dirección unicast sólo debería llegar a dicha dirección. Sin embargo a diferencia de la versión 4 del protocolo tenemos varias direcciones.
- Local Única (ULA): Esto equivale a las antiguas direcciones privadas que en IPv6 se definen como fc00::/7.
- Globales: serán direcciones que se pueden usar directamente en Internet.
- Local de vínculo: las direcciones locales de vínculo equivalen a las direcciones APIPA del protocolo IPv4 y que se configura automáticamente para comunicarse con los nodos que se encuentren en el mismo vínculo. Esta dirección es necesaria para el proceso de descubrimiento de vecinos (ND, Neighbor Discovery). Se pueden identificar por el prefijo FE80::/64.
- IPv4-mapped: las direcciones IPv4-mapped se utilizan para la representación de direcciones IPv4 en IPv6. La idea es facilitar a las aplicaciones el uso del protocolo IPv4 e IPv6 haciendo uso de una única dirección. Se representa como ::FFFF:172.144.52.58.
La conocida IP de loopback 127.0.0.1 se identifica en IPv6 como ::1.
Direcciones multicast
Una dirección multicast identifica a varios adaptadores. Un paquete enviado a dicha dirección es entregado a todas las interfaces. Este tipo de direcciones viene a mejorar las direcciones de Broadcast de IPv4. Las direcciones multicast son muy utilizadas para el streaming de video y audio.
Direcciones anycast
Al igual que las direcciones multicast, una dirección anycast identifica a varios adaptadores. La diferencia radica en que un paquete enviado a una dirección anycast será entregado a la interfaz más cercana y esto dependerá de la topología y procolo de enrutamiento implementado.
Descubrimiento de vecino (Neighbor discovery)
El descubrimiento de vecino viene a reemplazar al protocolo ARP de IPv4. Neighbor Discovery es el proceso capaz de identificar hosts, enrutadores, así como sus direcciones y otros parámetros de configuración.
Protocolo ICMPv6
Internet Control Message Protocol versión 6 (ICMPv6) es la versión 6 ICMP implementada para IPv6. Es el protocolo mediante el cual los hosts y enrutadores que se comuniquen por IPv6 pueden informar y reportar errores además de ejecutar tareas de diagnóstico.
Soporte y tecnologías de transición
Aunque sistemas operativos modernos como Windows 7, Mac OS X, Linux dan soporte a IPv6, no será hasta que la migración del protocolo IPv6 este 100% completa que IPv4 quede retirado. Mientras tanto necesitan convivir ambas versiones del protocolo.
Para ello existen varias tecnologías de transicción entre las que podemos encontrar redes Dual-Stack (redes con soporte para IPv4 e IPv6), diferentes tipos de túneles para enviar paquetes IPv6 dentro de IPv4 (6to4, ISATAP, Teredo, ...) y métodos de traducción a nivel de DNS (DNS64, NAT64, TRT, ...).
En sistema operativos anticuados como Windows “XPeta” se puede instalar el protocolo desde la linea de comandos usando la siguiente instrucción:
netsh interface ipv6 install
Esto son algunos de los conceptos principales para empezar a entender el funcionamiento del protocolo IPv6.