Introducción al Protocolo de Internet, versión 6 (IPv6)
El Protocolo de Internet, versión 6 (IPv6) es un conjunto de protocolos estándar para la capa de red de Internet. IPv6 está diseñado para resolver muchos de los problemas que se producen en la versión actual del conjunto Protocolo de Internet (conocido como IPv4) en relación con el agotamiento de direcciones, la seguridad, la configuración automática, la extensibilidad, etc. IPv6 amplía las funciones de Internet para habilitar nuevos tipos de aplicaciones, incluidas las aplicaciones móviles y de punto a punto. A continuación se indican los principales problemas del protocolo IPv4 actual:
Rápido agotamiento del espacio de direcciones.
Esto ha llevado al uso de traductores de direcciones de red (NAT) que asignan varias direcciones privadas a una sola dirección IP pública. Los principales problemas causados por este mecanismo son la sobrecarga de procesamiento y la falta de conectividad de extremo a extremo.
Falta de compatibilidad jerárquica.
Debido a su organización inherente de clases predefinidas, IPv4 carece de verdadera compatibilidad jerárquica. Es imposible estructurar las direcciones IP de forma que se asigne realmente la topología de red. Este error de diseño fundamental crea la necesidad de grandes tablas de enrutamiento para entregar paquetes de IPv4 en cualquier ubicación en Internet.
Configuración de red compleja.
Con IPv4, las direcciones deben asignarse de forma estática o mediante un protocolo de configuración como DHCP. En una situación ideal, los hosts no deberían tener que confiar en la administración de una infraestructura DHCP. En su lugar, deberían poder realizar la configuración por sí mismos en función del segmento de red en el que se encuentran.
Falta de autenticación y confidencialidad integradas.
IPv4 no requiere compatibilidad con ningún mecanismo que proporcione la autenticación o el cifrado de los datos intercambiados. Esto cambia con IPv6. El protocolo de seguridad de Internet (IPSec) es un requisito de compatibilidad con IPv6.
Un nuevo conjunto de protocolos debe cumplir los siguientes requisitos básicos:
- Enrutamiento a gran escala y direccionamiento con poca sobrecarga.
- Configuración automática para varias situaciones de conexión.
- Autenticación y confidencialidad integradas.
Direccionamiento IPv6
Con IPv6, las direcciones tienen una longitud de 128 bits. Entre otras razones, el espacio de direcciones es tan grande para subdividir las direcciones disponibles en una jerarquía de dominios de enrutamiento que reflejen la topología de Internet y para asignar las direcciones de los adaptadores de red (o interfaces) que conectan los dispositivos a la red. IPv6 se caracteriza por una capacidad inherente para resolver direcciones en su nivel más bajo, que es el nivel de la interfaz de red, y cuenta con funciones de configuración automática.
Representación de texto
A continuación se indican los tres formatos convencionales que se usan para representar las direcciones IPv6 como cadenas de texto:
Formato hexadecimal con dos puntos:
Ésta es la opción de preferencia:
n:n:n:n:n:n:n:n
. Cadan
representa el valor hexadecimal de uno de los ocho elementos de 16 bits de la dirección. Por ejemplo:3FFE:FFFF:7654:FEDA:1245:BA98:3210:4562
.Formato comprimido:
Debido a la longitud de la dirección, es habitual tener direcciones con una larga cadena de ceros. Para simplificar la escritura de estas direcciones, use el formato comprimido, en el que una secuencia contigua de bloques de ceros se representa mediante un símbolo de dos puntos dobles (
::
). Este símbolo solo puede aparecer una vez en una dirección. Por ejemplo, la dirección de multidifusiónFFED:0:0:0:0:BA98:3210:4562
en formato comprimido esFFED::BA98:3210:4562
. La dirección de unidifusión3FFE:FFFF:0:0:8:800:20C4:0
en formato comprimido es3FFE:FFFF::8:800:20C4:0
. La dirección de bucle invertido0:0:0:0:0:0:0:1
en formato comprimido es::1
. La dirección no especificada0:0:0:0:0:0:0:0
en formato comprimido es::
.Formato mixto:
Este formato combina las direcciones IPv4 e IPv6. En este caso, el formato de dirección es
n:n:n:n:n:n:d.d.d.d
, donde cada n representa el valor hexadecimal de cada uno de los seis elementos de la dirección de 16 bits de orden superior IPv6, y cada d representa el valor decimal de una dirección IPv4.
Tipos de direcciones
Los bits iniciales de la dirección definen el tipo de dirección IPv6 específico. El campo de longitud variable que contiene estos bits iniciales se denomina prefijo de formato (FP).
Una dirección de unidifusión de IPv6 se divide en dos partes. La primera parte contiene el prefijo de dirección y la segunda parte contiene el identificador de interfaz. Una forma concisa de expresar una combinación de dirección y prefijo IPv6 es la siguiente: dirección ipv6/longitud de prefijo.
A continuación se muestra un ejemplo de una dirección con un prefijo de 64 bits.
3FFE:FFFF:0:CD30:0:0:0:0/64
.
El prefijo de este ejemplo es 3FFE:FFFF:0:CD30
. La dirección también se puede escribir en formato comprimido, como 3FFE:FFFF:0:CD30::/64
.
IPv6 define los siguientes tipos de dirección:
Dirección de unidifusión:
Identificador de una única interfaz. Un paquete enviado a esta dirección se entrega a la interfaz identificada. Las direcciones de unidifusión se diferencian de las direcciones de multidifusión por el valor del octeto de orden superior. El octeto de orden superior de las direcciones de multidifusión tiene el valor hexadecimal de FF. Los demás valores de este octeto identifican una dirección de unidifusión. A continuación se muestran diferentes tipos de direcciones de unidifusión:
Direcciones locales de vínculo:
Estas direcciones se usan en un único vínculo y tienen el siguiente formato:
FE80::*InterfaceID*
. Las direcciones locales de vínculo se usan entre nodos en un vínculo para la configuración de dirección automática, la detección de equipos cercanos o cuando no hay enrutadores presentes. Las direcciones locales de vínculo se usan principalmente en el inicio y cuando el sistema todavía no ha adquirido direcciones de ámbito mayor.Direcciones locales de sitio:
Estas direcciones se usan en un único sitio y tienen el siguiente formato:
FEC0::*SubnetID*:*InterfaceID*
. Las direcciones locales de sitio se usan para el direccionamiento dentro de un sitio sin necesidad de un prefijo global.- Direcciones de unidifusión IPv6 globales:
Estas direcciones se pueden usar en Internet y tienen el siguiente formato:
*GlobalRoutingPrefix*::*SubnetID*:*InterfaceID*
.Dirección de multidifusión:
Identificador para un conjunto de interfaces (normalmente pertenecientes a diferentes nodos). Un paquete enviado a esta dirección se entrega a todas las interfaces identificadas por la dirección. Los tipos de dirección de multidifusión sustituyen a las direcciones de difusión IPv4.
Dirección de difusión por proximidad:
Identificador para un conjunto de interfaces (normalmente pertenecientes a diferentes nodos). Un paquete enviado a esta dirección se entrega a una sola interfaz identificada por la dirección. Se trata de la interfaz más próxima identificada por la métrica de enrutamiento. Las direcciones de difusión por proximidad se toman del espacio de direcciones de unidifusión y no se pueden distinguir sintácticamente. La interfaz a la que se realiza el direccionamiento realiza la distinción entre las direcciones de unidifusión y de difusión por proximidad como una función de su configuración.
En general, un nodo siempre tiene una dirección local de vínculo. Podría tener una dirección local de sitio y una o varias direcciones globales.
Enrutamiento IPv6
Una de las ventajas de IPv6 es el mecanismo de enrutamiento flexible. Debido a la forma en la que se asignan los identificadores de red IPv4, los enrutadores de las redes troncales de Internet deben mantener grandes tablas de enrutamiento. Estos enrutadores deben conocer todas las rutas con el fin de reenviar los paquetes que se dirigen potencialmente a cualquier nodo de Internet. Con su capacidad para agregar direcciones, IPv6 permite el direccionamiento flexible y reduce drásticamente el tamaño de las tablas de enrutamiento. En esta nueva arquitectura de direccionamiento, los enrutadores intermedios deben hacer un seguimiento únicamente de la parte local de su red para reenviar los mensajes de forma adecuada.
Detección de equipos cercanos
Las siguientes son algunas de las características que proporciona la detección de equipos cercanos:
- Detección de enrutadores: permite que los hosts identifiquen los enrutadores locales.
- Resolución de direcciones: permite que los nodos resuelvan una dirección de nivel de vínculo para una dirección de próximo salto correspondiente (sustitución del Protocolo de resolución de direcciones, también denominado ARP).
- Configuración automática de direcciones: permite a los hosts configurar automáticamente las direcciones globales y locales del sitio.
La detección de equipos cercanos usa mensajes del Protocolo de mensajes de control de Internet para IPv6 (ICMPv6) que incluyen:
- Anuncio de enrutador: enviado por un enrutador de forma seudoperiódica o en respuesta a una convocatoria de enrutador. Los enrutadores IPv6 usan anuncios de enrutador para anunciar su disponibilidad, prefijos de direcciones y otros parámetros.
- Convocatoria de enrutadores: enviada por un host para solicitar que los enrutadores del vínculo envíen inmediatamente un anuncio de enrutador.
- Convocatoria de equipos cercanos: enviada por los nodos para la resolución de direcciones, la detección de direcciones duplicadas o la comprobación de si un equipo cercano sigue siendo accesible.
- Anuncio de equipo cercano: enviado por los nodos para responder a una convocatoria de equipos cercanos o para informar a los equipos cercanos de un cambio en la dirección de nivel de vínculo.
- Redirección: enviada por los enrutadores para indicar una dirección mejor de próximo salto a un destino determinado para un nodo de envío.
Configuración automática de IPv6
Un objetivo importante para IPv6 es ser compatible con el nodo Plug and Play. Es decir, debería ser posible conectar un nodo en una red IPv6 y hacer que se configurase automáticamente sin intervención humana.
Tipos de configuración automática
IPv6 es compatible con los siguientes tipos de configuración automática:
Configuración automática con estado:
Este tipo de configuración requiere cierto grado de intervención humana, ya que es necesario un servidor de Protocolo de configuración dinámica de host para IPv6 (DHCPv6) para la instalación y la administración de los nodos. El servidor DHCPv6 mantiene una lista de nodos a los que proporciona información de configuración. También mantiene información de estado para que el servidor sepa cuánto tiempo se usa cada dirección y cuándo podría estar disponible para su reasignación.
Configuración automática sin estado:
Este tipo de configuración es adecuada para organizaciones pequeñas y usuarios individuales. En este caso, cada host determina sus direcciones a partir del contenido de los anuncios de enrutador recibidos. El uso del estándar IEEE EUI-64 para definir la parte del identificador de red de la dirección permite dar por supuesto que la dirección de host del vínculo es exclusiva.
Independientemente de cómo se determine la dirección, el nodo debe comprobar que su dirección potencial es única para el vínculo local. Para ello, envía un mensaje de convocatoria de vecino a la dirección potencial. Si el nodo recibe respuesta, sabe que la dirección ya está en uso y debe establecer otra dirección.
Movilidad de IPv6
La proliferación de dispositivos móviles ha introducido un requisito nuevo: un dispositivo debe poder cambiar de forma arbitraria las ubicaciones en Internet IPv6 y seguir manteniendo las conexiones existentes. Para proporcionar esta funcionalidad, se asigna a un nodo móvil una dirección principal en la que siempre se puede establecer contacto con él. Cuando el nodo móvil se encuentra en su ubicación principal, se conecta con el vínculo principal y usa su dirección principal. Cuando el nodo móvil cambia de ubicación, un agente principal, que normalmente es un enrutador, transmite los mensajes entre el nodo móvil y los nodos con los que se comunica.
Deshabilitar o habilitar IPv6
Para usar el protocolo IPv6, asegúrese de que está ejecutando una versión del sistema operativo que admita IPv6 y asegúrese de que el sistema operativo y las clases de red están configurados correctamente.
Pasos de la configuración
En la tabla siguiente se muestran varias configuraciones
¿El sistema operativo IPv6 está habilitado? | ¿El código IPv6 está habilitado? | Descripción |
---|---|---|
❌ No | ❌ No | Puede analizar las direcciones de IPv6. |
❌ No | ✔️ Sí | Puede analizar las direcciones de IPv6. |
✔️ Sí | ❌ No | Puede analizar las direcciones de IPv6 y resolver las direcciones de IPv6 mediante métodos de resolución de nombres que no se hayan marcado como obsoletos. |
✔️ Sí | ✔️ Sí | Puede analizar y resolver las direcciones de IPv6 con todos los métodos, incluidos los que se hayan marcado como obsoletos. |
IPv6 está habilitado de forma predeterminada. Para configurar este modificador en una variable de entorno, use la variable de entorno DOTNET_SYSTEM_NET_DISABLEIPV6
. Para obtener más información, consulte Variables de entorno de .NET: DOTNET_SYSTEM_NET_DISABLEIPV6.