Product SiteDocumentation Site

10.6. IPv6

IPv6, sucesor de IPv4, es una nueva versión del protocolo IP diseñado para corregir sus fallas, especialmente la escasez de direcciones IP disponibles. Este protocolo gestiona la capa de red; su propósito es proveer una forma de direccionar máquinas para transmitir los datos a donde se destinen y administrar la fragmentación de datos si es necesaria (en otras palabras, dividir los paquetes en trozos de un tamaño que dependa de los enlaces de red utilizados en el camino y unirlos nuevamente en el orden apropiado cuando lleguen).
Los núcleos Debian incluyen la gestión de IPv6 en el corazón del núcleo (con la excepción de algunas arquitecturas que la poseen como un módulo llamado ipv6). Las herramientas básicas como ping y traceroute tienen sus equivalentes IPv6, ping6 y traceroute6, disponibles en los paquetes iputils-ping y iputils-tracepath respectivamente.
Una red IPv6 se configura de forma similar a una IPv4, en el archivo /etc/network/interfaces. Pero si desea que se pueda acceder globalmente a la red debe asegurarse de tener un router compatible con IPv6 que retransmita datos a la red IPv6 global.

Ejemplo 10.10. Ejemplo de configuración IPv6

iface enp7s0 inet6 static
    address 2001:db8:1234:5::1:1/64
    # Disabling auto-configuration
    # autoconf 0
    # The router is auto-configured and has no fixed address
    # (accept_ra 1). If it had:
    # gateway 2001:db8:1234:5::1
Las subredes IPv6 generalmente tienen una máscara de red de 64 bits. Esto significa que existen 264 direcciones diferentes dentro de la subred. Esto permite que «Stateless Address Autoconfiguration» (SLAAC: autoconfiguración de direcciones sin estado) selecione una dirección basada en la dirección MAC de la interfaz de red. De forma predeterminada, si SLAAC está activado en su red e IPv6 en su equipo, el núcleo encontrará enrutadores IPv6 automáticamente y configurará las interfaces de red.
Este comportamiento podría tener consecuencias en la privacidad. Si cambia de red frecuentemente, por ejemplo con un portátil, podría no desear que su dirección MAC sea parte de su dirección IPv6 pública. Esto facilita la identificación del mismo dispositivo en varias redes. Una solución a esto son extensiones de privacidad IPv6 (que Debian permite por defecto si se detecta conectividad IPv6 durante la instalación inicial), lo que asignará una dirección generada aleatoriamente adicional a la interfaz, cambiarlas periódicamente y preferirlas para conexiones salientes. Las conexiones entrantes todavía pueden utilizar la dirección generada por SLAAC. El siguiente ejemplo, para uso en /etc/network/interfaces, activa estas extensiones de privacidad para la interfaz enp7s0.

Ejemplo 10.11. Extensiones de privacidad IPv6

iface enp7s0 inet6 auto
    # Preferir las direcciones asignadas aleatoriamente para conexiones salientes.
    privext 2
Se pueden restringir las conexiones IPv6, de la misma manera que para IPv4. Se puede usar nft para crear reglas de cortafuegos para IPv4 e IPv6 (véase Sección 14.2.3, “Sintaxis de ntf).

10.6.1. Túneles

Si no existe una conexión IPv6 disponible, el método de respaldo es utilizar un túnel sobre IPv4. Hurricane Electric es un proveedor (gratuito) de dichos túneles:
Para usar un túnel Hurricane Electric, necesita registrar una cuenta, iniciar sesión, seleccionar un túnel gratuito y editar el archivo /etc/network/interfaces con el código generado.
Puede instalar y configurar el demonio radvd (del paquete homónimo) si quiere usar el ordenador configurado como un enrutador para una red local. Este demonio de configuración IPv6 tiene un rol similar al de dhcpd en el mundo IPv4.
Debe crear el archivo de configuración /etc/radvd.conf (revise el archivo /usr/share/doc/radvd/examples/simple-radvd.conf como punto de partida). En nuestro caso, el único cambio necesario es el prefijo que debe reemplazar con el provisto por Hurricane Electric; puede encontrarlo en la salida de ip a, en el bloque sobre la interfaz he-ipv6.
Luego ejecute systemctl start radvd. Ahora debería funcionar la red IPv6.