Tipos de direcciones IPv6: Global, Link-Local, Multicast explicados
Aprende los diferentes tipos de direcciones IPv6: unicast global para Internet, link-local para LANs, multicast para grupos y más.
Las direcciones IPv6 funcionan de manera diferente a IPv4 en cómo entregan paquetes. Entender estas diferencias importa cuando estás depurando problemas de red o diseñando sistemas.
TL;DR - Resumen rápido
Puntos clave:
- IPv6 usa unicast (uno a uno), multicast (uno a muchos) y anycast (uno al más cercano) — sin broadcast
- Unicast global (2xxx/3xxx) para Internet, link-local (fe80::) para segmentos locales, ULA (fd00::) para redes privadas
- Multicast (ffxx::) reemplaza broadcast; multicast de nodo solicitado hace que el descubrimiento de vecinos sea eficiente
- Las direcciones link-local requieren Zone IDs como
fe80::1%eth0para especificar la interfaz
Ir a: Unicast global | Multicast | Referencia rápida
Tres métodos de entrega#
IPv6 utiliza tres modelos fundamentales de entrega:
- Unicast: Un emisor a un receptor. La forma estándar de comunicarse con un host específico.
- Multicast: Un emisor a múltiples receptores. Eficiente para comunicación en grupo.
- Anycast: Un emisor al receptor más cercano en un grupo. Usado para balanceo de carga y redundancia.
Sin broadcast en IPv6
IPv6 elimina completamente el broadcast. Donde IPv4 haría broadcast a todos los hosts (como solicitudes ARP inundando tu red), IPv6 usa multicast dirigido. Esto reduce el tráfico innecesario y mejora la eficiencia de la red.
Direcciones Unicast#
Cada dirección unicast identifica exactamente una interfaz de red. Envía un paquete a esa dirección y exactamente un host lo recibe.
Direcciones unicast globales (2000::/3)#
Estas son tus direcciones IPv6 públicas, enrutables a través de toda Internet. Si una dirección comienza con 2 o 3, es una dirección unicast global.
2001:0db8:85a3:0000:0000:8a2e:0370:7334
│ │ │ │
│ │ │ └─ ID de interfaz (64 bits)
│ │ └──────────────── ID de subred (16 bits)
│ └────────────────────────── Prefijo de sitio (48 bits)
└──────────────────────────────────── Prefijo de enrutamiento globalLa estructura típica divide una asignación /48 así:
| Bits | Componente | Propósito |
|---|---|---|
| 0-47 | Prefijo de enrutamiento global | Tu asignación de tu ISP o RIR |
| 48-63 | ID de subred | 65,536 subredes por sitio |
| 64-127 | ID de interfaz | Generado desde dirección MAC o aleatorizado |
Los proveedores reales típicamente asignan un /48 a sitios, un /56 a pequeñas empresas o un /64 a usuarios residenciales. Cada subred /64 contiene 18 trillones de direcciones, por lo que subdivides en límites /64.
Direcciones de documentación
El prefijo 2001:db8::/32 existe solo para documentación y ejemplos. No uses estas direcciones en producción. Cada ejemplo en RFCs usa 2001:db8 por una razón—no entrarán en conflicto con redes reales.
Direcciones Link-Local (fe80::/10)#
Cada interfaz IPv6 genera automáticamente una dirección link-local cuando habilitas IPv6. Estas direcciones funcionan solo en el segmento de red local y nunca se enrutan.
fe80::1
fe80::a1b2:c3d4:e5f6:7890Las direcciones link-local son obligatorias para que IPv6 funcione. Descubrimiento de vecinos, solicitud de router y otros protocolos centrales las requieren. Tu interfaz podría no tener una dirección global, pero siempre tendrá una dirección link-local.
Zone IDs: Especificar la interfaz#
Como fe80::1 podría existir en cada interfaz, necesitas especificar qué interfaz quieres decir:
ping6 fe80::1%eth0 # Linux
ping6 fe80::1%en0 # macOS
ping fe80::1%12 # Windows (usa índice de interfaz)El símbolo % precede al Zone ID. En Linux y macOS, usa el nombre de interfaz. En Windows, usa el índice de interfaz de netsh interface ipv6 show interface.
Direcciones locales únicas (fc00::/7)#
Piensa en estas como la versión IPv6 de las direcciones privadas RFC 1918. No son enrutables globalmente, haciéndolas adecuadas para redes internas.
En la práctica, verás direcciones fd00::/8 porque el rango fc00::/8 requiere asignación central que nunca se implementó. Genera el ID global de 40 bits aleatoriamente:
fd 3a:c7b1:29f4 :0001:0000:0000:0000:0001
│ └──────────┘ │ └──────────────────┘
│ │ │ │
│ │ │ └─ ID de interfaz (64 bits)
│ │ └─────────────── ID de subred (16 bits)
│ └──────────────────────── ID global aleatorio (40 bits)
└──────────────────────────────── Prefijo ULA (fd = asignado localmente)Cuando generas ese identificador de 40 bits aleatoriamente, minimizas el riesgo de colisión si dos redes se fusionan más tarde. No uses simplemente fd00::1 en todas partes.
Direcciones especiales#
Dos direcciones tienen propósitos únicos:
Loopback (::1): Envía paquetes a ti mismo. El equivalente IPv6 de 127.0.0.1. El tráfico a ::1 nunca sale del host.
No especificada (::): Representa la ausencia de una dirección. Los hosts usan :: como dirección de origen durante DHCPv6 o cuando no han configurado una dirección todavía. No puedes enviar paquetes a ::.
Direcciones Multicast (ff00::/8)#
Cada dirección que comienza con ff es multicast. El paquete va a cada interfaz que se unió a ese grupo multicast.
Estructura de dirección#
ff 0 2 : 0000:0000:0000:0000:0001
│ │ │ └──────────────────────┘
│ │ │ │
│ │ │ └─ ID de grupo (112 bits)
│ │ └──────────────── Alcance (4 bits)
│ └─────────────────── Flags (4 bits)
└────────────────────── Prefijo multicastEl campo de alcance determina qué tan lejos viaja el paquete multicast:
| Alcance | Valor | Rango |
|---|---|---|
| Interface-local | 1 | Solo esta interfaz |
| Link-local | 2 | Segmento de red local |
| Admin-local | 4 | Límite administrativo |
| Site-local | 5 | Sitio de organización |
| Organization-local | 8 | Múltiples sitios en org |
| Global | e | Internet completa |
Grupos multicast esenciales#
Varias direcciones multicast sirven funciones críticas:
| Dirección | Propósito |
|---|---|
ff02::1 | Todos los nodos en el enlace (reemplaza broadcast IPv4) |
ff02::2 | Todos los routers en el enlace |
ff02::5 | Todos los routers OSPF |
ff02::6 | Todos los routers designados OSPF |
ff02::9 | Todos los routers RIP |
ff02::1:2 | Todos los servidores/relays DHCPv6 |
ff02::fb | mDNSv6 (DNS multicast) |
Multicast de nodo solicitado#
Este mecanismo hace que el descubrimiento de vecinos sea eficiente. En lugar de preguntar a cada host «¿quién tiene esta IP?» (como ARP), IPv6 pregunta a un pequeño grupo multicast.
Cada dirección unicast genera automáticamente una dirección multicast de nodo solicitado correspondiente:
Unicast: 2001:db8:1234:5678::abcd:ef12:3456
└────┬─────┘
│
(últimos 24 bits)
│
Nodo solicitado: ff02::1:ff12:3456 ────────┘Cuando un host necesita resolver 2001:db8:1234:5678::abcd:ef12:3456, envía una solicitud de vecino a ff02::1:ff12:3456. Solo los hosts con direcciones que terminan en 12:3456 procesan la solicitud. Esto reduce dramáticamente la sobrecarga multicast en comparación con hacer broadcast a cada host.
Direcciones Anycast#
Las direcciones anycast se ven idénticas a las direcciones unicast—no hay prefijo especial. La diferencia está en la configuración: asignas la misma dirección a múltiples interfaces, y el enrutamiento entrega paquetes a la topológicamente más cercana.
Casos de uso comunes#
Servidores raíz DNS: Las 13 letras de servidor raíz (a.root-servers.net hasta m.root-servers.net) usan anycast. Las mismas direcciones IP existen en cientos de ubicaciones en todo el mundo. Tu consulta llega al servidor raíz más cercano.
Servidores edge de CDN: Las redes de entrega de contenido usan anycast para enrutar usuarios a servidores de caché cercanos. Misma dirección, diferentes ubicaciones geográficas.
Routers relay 6to4: La dirección 192.88.99.1 (IPv4) y 2002:c058:6301:: (IPv6) son direcciones anycast para relays 6to4.
Anycast de subred-router#
Cada subred tiene automáticamente una dirección anycast reservada con el identificador de interfaz establecido en cero:
Subred: 2001:db8:1234:5678::/64
Subred-Router: 2001:db8:1234:5678::Los routers en esa subred deberían responder a esta dirección. En la práctica, rara vez se usa.
Referencia rápida: Identificar tipos de direcciones#
Mira los primeros caracteres para identificar cualquier dirección IPv6:
| Comienza con | Tipo | Alcance |
|---|---|---|
::1 | Loopback | Host-local |
:: | No especificada | N/A |
fe80: | Unicast link-local | Link-local |
fc00: o fd00: | Unicast local única | Privado |
ff00: a ffff: | Multicast | Varía (verifica 2do dígito) |
2... o 3... | Unicast global | Internet |
Todo lo demás está reservado o aún no asignado.
Verificar tus direcciones#
Ve qué direcciones tiene configuradas tu sistema:
Linux:
ip -6 addr showmacOS:
ifconfig | grep inet6Windows:
netsh interface ipv6 show addressesTípicamente verás:
- Múltiples direcciones link-local (
fe80::), una por interfaz - Una o más direcciones unicast globales si tienes conectividad IPv6
- La dirección loopback
::1en la interfaz loopback - Varias membresías de grupo multicast (generalmente no mostradas por defecto)
Probar multicast#
Envía una solicitud de eco ICMPv6 a todos los nodos en tu enlace local:
# Reemplaza eth0 con el nombre de tu interfaz
ping6 ff02::1%eth0Recibirás respuestas de cada dispositivo habilitado para IPv6 en ese segmento de red. Esto es útil para descubrimiento pero puede ser ruidoso en redes grandes.
Verifica si hay routers presentes:
ping6 ff02::2%eth0Solo los routers deberían responder.
Validar tipos de direcciones
Usa el Validador IPv6 para verificar cualquier dirección. Ingresa una dirección y ve instantáneamente su tipo, alcance y si es válida. Útil al solucionar problemas de configuraciones.
Implicaciones prácticas#
Los diferentes tipos de direcciones afectan cómo diseñas redes y solucionas problemas:
Políticas de seguridad: Filtra unicast global en tu firewall, pero link-local debe pasar para el descubrimiento de vecinos. Bloquear fe80::/10 rompe IPv6 completamente.
Vinculación de aplicaciones: Los servidores que se vinculan a :: escuchan en todas las direcciones (como 0.0.0.0 en IPv4). Vincularse a ::1 restringe solo a localhost.
Tablas de enrutamiento: Las direcciones link-local aparecen como next-hops en tablas de enrutamiento, lo que confunde a las personas acostumbradas a IPv4. Esto es normal—los routers usan direcciones link-local para estabilidad ya que nunca cambian.
DNS: Solo publica direcciones unicast globales en DNS. Nunca publiques direcciones link-local o locales únicas en zonas DNS públicas.
Entender estos tipos de direcciones no es académico—es necesario para configurar firewalls, depurar conectividad y diseñar redes que realmente funcionan.
Artículos relacionados#
- Fundamentos de IPv6 - Comprende los conceptos básicos del direccionamiento IPv6 y por qué es importante
- Guía de subnetting IPv6 - Aprende a dividir eficientemente tu espacio de direcciones IPv6
- Mejores prácticas de seguridad IPv6 - Asegura tu red IPv6 contra amenazas y vulnerabilidades comunes
Valida tipos de direcciones
Usa el Validador IPv6 para verificar cualquier dirección. Ingresa una dirección y ve instantáneamente su tipo, alcance y si es válida. Útil al solucionar problemas de configuraciones.