Las tres lecciones anteriores cuentan, en el fondo, una misma historia: IPv4 se quedó pequeño y la industria lo mantuvo vivo con ingenio (CIDR, direcciones privadas, NAT). Esta lección presenta la solución de fondo: IPv6, la versión del protocolo IP diseñada para que las direcciones nunca vuelvan a escasear — y de paso, para eliminar el parche NAT y devolver a cada dispositivo su condición de extremo pleno de la red. IPv6 no es futurología: más de la mitad del tráfico hacia los grandes servicios de Internet ya viaja sobre él, tu móvil probablemente lo usa a diario, y los equipos de Meridiano ya tienen direcciones IPv6 aunque nadie las haya configurado. Aquí aprenderás a leer y abreviar sus direcciones, a reconocer sus tipos y a entender cómo se autoconfiguran y cómo convive con IPv4.
Contenido
- Por qué existe IPv6: el agotamiento real y los límites del parche
- Anatomía de una dirección IPv6: 128 bits en 8 grupos hexadecimales
- Reglas de abreviación: ceros a la izquierda y el operador
:: - Tipos de direcciones (y la muerte del broadcast)
- El prefijo /64 y el fin del subnetting doloroso
- Autoconfiguración: SLAAC frente a DHCPv6
- Convivencia con IPv4: doble pila (y qué son túneles y NAT64)
- IPv6 en Meridiano: lo que ya hay y lo que implicaría activarlo
Por qué existe IPv6: el agotamiento real y los límites del parche
Recapitulación del módulo: IPv4 ofrece 2³² ≈ 4.300 millones de direcciones; IANA repartió el último bloque libre en 2011 (lección 05-01) y hoy las IPv4 públicas se compran, alquilan y racionan. NAT (lección 05-03) permitió sobrevivir compartiendo direcciones, pero a un precio: conexiones entrantes rotas, capas de rodeos para P2P y videollamadas, CGNAT apilando traducciones, y la pérdida del principio extremo a extremo del módulo 4.
El IETF vio venir el problema en los años 90 y diseñó IPv6 con una decisión radical: direcciones de 128 bits. La cuenta resultante:
IPv4: 2^32 ≈ 4,3 × 10^9 (4.300 millones — menos que humanos)
IPv6: 2^128 ≈ 3,4 × 10^38 (340 sextillones — ~6,7 × 10^17 direcciones
por milímetro cuadrado de superficie terrestre)El objetivo no es solo "que haya para todos", sino que sobren: con abundancia extrema, cada dispositivo recibe dirección pública propia, desaparece la necesidad de NAT, y el diseño de redes se simplifica (como verás con el /64). IPv6 mantiene la filosofía de IP que conoces — mejor esfuerzo, paquetes, TTL (renombrado Hop Limit), la misma capa 3 del modelo — pero cambia el formato de direcciones, simplifica la cabecera y reemplaza mecanismos auxiliares (ARP y el broadcast, entre ellos).
Anatomía de una dirección IPv6: 128 bits en 8 grupos hexadecimales
Con 128 bits, la notación decimal punteada sería inmanejable (16 números de 0 a 255). IPv6 usa hexadecimal: los 128 bits se parten en 8 grupos de 16 bits, cada grupo escrito como 4 dígitos hex (0–9, a–f), separados por dos puntos:
2001:0db8:0000:0000:0000:ff00:0042:8329
└──┘ └──┘ └──┘ └──┘ └──┘ └──┘ └──┘ └──┘
8 grupos × 16 bits = 128 bitsRecordatorio rápido de hexadecimal: cada dígito hex equivale exactamente a 4 bits (0=0000, 9=1001, a=1010, f=1111). Por eso encaja tan bien: un grupo de 4 dígitos hex son 16 bits limpios, sin las conversiones con restos de IPv4. El prefijo se expresa igual que en CIDR: 2001:db8:acad:10::/64 significa "los primeros 64 bits identifican la red".
Convenciones que verás siempre:
- Minúsculas (
db8, noDB8) — es la forma canónica recomendada. - El rango
2001:db8::/32está reservado para documentación (como los 203.0.113.x que usamos en NAT): todos los ejemplos de este curso lo usan. - En URLs, la dirección va entre corchetes por el conflicto con el
:del puerto:https://[2001:db8::10]:443/api/proyectos.
Reglas de abreviación: ceros a la izquierda y el operador ::
Las direcciones IPv6 están llenas de ceros, y existen dos reglas para no escribirlos. Son las dos únicas reglas, y dominarlas es la habilidad básica de lectura de IPv6.
Regla 1 — Omitir ceros a la izquierda dentro de cada grupo (pero cada grupo conserva al menos un dígito):
Regla 2 — Comprimir UNA sola vez la tira más larga de grupos consecutivos que son todo ceros con :::
2001:0db8:0000:0000:0000:ff00:0042:8329
│ regla 1 │
2001:db8:0:0:0:ff00:42:8329
│ regla 2: tres grupos 0 seguidos → :: │
2001:db8::ff00:42:8329La restricción de "una sola vez" no es capricho: si hubiera dos ::, sería imposible saber cuántos ceros esconde cada uno, y la dirección quedaría ambigua.
Ejemplo trabajado de compresión (dos tiras de ceros — se comprime la más larga):
Original: 2001:0db8:0000:0000:0001:0000:0000:0080
Regla 1: 2001:db8:0:0:1:0:0:80
Tiras de ceros: grupos 3-4 (longitud 2) y grupos 6-7 (longitud 2). Empate:
la convención (RFC 5952) manda comprimir la PRIMERA.
Regla 2: 2001:db8::1:0:0:80 ✔
(2001:db8:0:0:1::80 sería equivalente pero no canónica;
2001:db8::1::80 sería ILEGAL: dos "::")Ejemplo trabajado de expansión (el camino inverso, imprescindible para comparar direcciones):
Comprimida: fe80::1
Paso 1 — Contar grupos visibles: fe80 y 1 → 2 grupos.
Paso 2 — El :: esconde 8 − 2 = 6 grupos de ceros.
Paso 3 — Expandir: fe80:0000:0000:0000:0000:0000:0000:0001Comprimida: 2001:db8:20::7
Grupos visibles: 3 → el :: esconde 5 grupos.
Expandida: 2001:0db8:0020:0000:0000:0000:0000:0007
(¡ojo!: 20 expande a 0020, no a 2000 — los ceros omitidos van a la IZQUIERDA)Ese último aviso es la trampa clásica: db8:20 significa 0db8:0020. Los ceros que se restauran al expandir van siempre delante del dígito, nunca detrás.
Tipos de direcciones (y la muerte del broadcast)
En IPv6 una interfaz no tiene una dirección: tiene varias a la vez, cada una con un ámbito. Los tipos que debes reconocer:
| Tipo | Prefijo | Ámbito | Equivalente mental en IPv4 |
|---|---|---|---|
| Global unicast (GUA) | 2000::/3 (hoy, las que empiezan por 2 o 3) |
Todo Internet, enrutable y única | IP pública |
| Link-local | fe80::/10 |
Solo el enlace local (no cruza routers) | Prima de APIPA 169.254.x.x, pero siempre presente y de uso legítimo |
| Unique local (ULA) | fc00::/7 (en la práctica fd00::/8) |
Interno de la organización, no enrutable en Internet | RFC 1918 (192.168.x.x…) |
| Multicast | ff00::/8 |
Grupos de interesados (ff02::1 = todos los nodos del enlace, ff02::2 = todos los routers) |
Sustituye al broadcast |
| Loopback | ::1 |
La propia máquina | 127.0.0.1 |
| Sin especificar | :: |
"Sin dirección / cualquiera" | 0.0.0.0 |
Dos ideas importantes:
- Toda interfaz IPv6 tiene una link-local
fe80::…autogenerada, sin servidor ni configuración alguna. No es un síntoma de error como APIPA: es obligatoria por diseño y sobre ella funcionan los protocolos de vecindario y las rutas (el gateway IPv6 de un equipo suele ser la link-local del router). - El broadcast ha muerto. IPv6 no tiene dirección de difusión a todos: usa multicast dirigido a grupos específicos. Donde IPv4 gritaba a toda la red (el ARP del módulo 2 en capa 2, el DHCP DISCOVER a 255.255.255.255), IPv6 pregunta solo a los interesados: el protocolo NDP (Neighbor Discovery Protocol, sobre ICMPv6) sustituye a ARP usando multicast dirigido — cada nodo escucha un pequeño grupo derivado de su propia dirección, y el resto ni se despierta. Menos ruido en la red, mismo resultado.
El prefijo /64 y el fin del subnetting doloroso
La convención universal de IPv6: toda subred es un /64. Los 128 bits se reparten en dos mitades fijas:
┌──────────────── 64 bits ────────────────┬──────────────── 64 bits ────────────────┐
│ Prefijo de red (qué subred es) │ Identificador de interfaz (qué equipo) │
└──────────────────────────────────────────┴──────────────────────────────────────────┘Consecuencias que cambian la vida respecto a la lección 05-02:
- Cada subred tiene 2⁶⁴ direcciones (18 trillones). Nunca calcularás "cuántos hosts caben": caben todos. No hay 2^h − 2, no hay rango útil que dimensionar, no hay dirección de broadcast que reservar (ya no existe).
- El subnetting no desaparece, pero deja de doler. El ISP entrega a una organización un prefijo grande — típicamente /48 o /56 — y subnetear es simplemente enumerar /64 dentro de él, sin cuentas de hosts ni saltos:
Prefijo asignado a Meridiano (ejemplo docu): 2001:db8:acad::/48
Bits para subredes: 64 − 48 = 16 → 65.536 subredes /64 posibles
2001:db8:acad:0010::/64 Valencia corporativa (VLAN 10)
2001:db8:acad:0020::/64 Valencia invitados (VLAN 20)
2001:db8:acad:0030::/64 Valencia servidores
2001:db8:acad:0120::/64 BilbaoFíjate en el detalle de estilo: el grupo de subred puede hacerse coincidir con el número de VLAN o de sede, y como el hex se alinea con los bits de 4 en 4, las fronteras "bonitas" (por dígito) son lo natural. Comparado con calcular saltos de 32 y rangos útiles en el /24 de Valencia, el plan IPv6 se escribe en una servilleta. La habilidad de 05-02 no se pierde: la lógica prefijo/host es la misma; solo desaparecen la escasez y la aritmética fina.
Autoconfiguración: SLAAC frente a DHCPv6
En IPv4, un equipo sin configuración depende de DHCP y su intercambio DORA (módulo 2 — no lo repetimos aquí). IPv6 añade una alternativa que no existe en IPv4: que el equipo se configure solo escuchando al router.
SLAAC (StateLess Address AutoConfiguration):
- El router anuncia periódicamente (y bajo demanda) el prefijo de la subred mediante mensajes RA (Router Advertisement, parte de NDP): "esta red es
2001:db8:acad:10::/64y yo soy la salida". - El equipo toma el prefijo y se genera él mismo el identificador de interfaz de 64 bits (históricamente derivado de la MAC con el formato EUI-64; hoy, por privacidad, se prefieren identificadores aleatorios estables más direcciones temporales que rotan).
- El equipo verifica con NDP que nadie usa ya esa dirección (DAD, Duplicate Address Detection) y empieza a funcionar. Gateway incluido: la link-local del router que envió el RA.
Nadie mantiene una tabla de concesiones: por eso "stateless". Comparación con lo conocido:
| Aspecto | DHCP (IPv4) | SLAAC (IPv6) | DHCPv6 |
|---|---|---|---|
| ¿Quién elige la dirección? | El servidor (tabla de concesiones) | El propio equipo, a partir del prefijo del RA | El servidor (con estado, como DHCP) |
| ¿Servidor necesario? | Sí | No (basta el router) | Sí |
| ¿Registro central de quién tiene qué? | Sí | No | Sí |
| ¿Entrega DNS y otras opciones? | Sí | El RA puede incluir DNS (RDNSS); históricamente cojeaba | Sí, completo |
| Uso típico | Toda red IPv4 | Redes simples, clientes, invitados | Empresas que exigen control/auditoría de direcciones |
En la práctica conviven: el RA del router lleva unos flags que indican a los clientes "autoconfigúrate con SLAAC", "pide los detalles (p. ej. DNS) a un DHCPv6" o ambos. Para una red como la de Meridiano, SLAAC + DNS en el RA cubriría a los puestos de trabajo; DHCPv6 sería la opción si TI quisiera un registro central de direcciones como el que hoy le da DHCP.
Convivencia con IPv4: doble pila (y qué son túneles y NAT64)
IPv6 no es compatible hacia atrás con IPv4: un nodo solo-IPv6 no puede hablar con uno solo-IPv4. Como la transición dura décadas, existen estrategias de convivencia:
- Doble pila (dual stack) — la estrategia recomendada y la que te encontrarás: cada equipo tiene a la vez direcciones IPv4 e IPv6, y cada conexión usa una u otra. ¿Quién decide? La resolución DNS: si el nombre tiene registro
AAAA(dirección IPv6) yA(IPv4), el sistema prueba preferentemente IPv6 y cae a IPv4 si no responde (mecanismo happy eyeballs, que compite ambas para no penalizar al usuario). Coste: administras dos planos de direccionamiento en paralelo — doble configuración, doble firewall, doble diagnóstico. - Túneles (mención): encapsular paquetes IPv6 dentro de IPv4 para cruzar tramos que aún no hablan IPv6. Útiles históricamente (6in4, 6rd); hoy residuales.
- NAT64/DNS64 (mención): permite a redes solo-IPv6 alcanzar servidores que siguen solo en IPv4, traduciendo protocolos en la frontera. Es como operan muchas redes móviles: tu móvil es solo-IPv6 y ni te enteras. Irónico pero transitorio: se despliega IPv6 y aparece otro NAT — hasta que el último servidor IPv4 migre.
IPv6 en Meridiano: lo que ya hay y lo que implicaría activarlo
Lo que ya hay, sin que nadie hiciera nada. Si Marta ejecuta hoy ip addr (o ipconfig) en su PC, junto a su IPv4 verá algo así:
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 ...
link/ether 5c:26:0a:4b:91:d3 brd ff:ff:ff:ff:ff:ff
inet 192.168.10.21/24 brd 192.168.10.255 scope global dynamic eth0
inet6 fe80::5e26:aff:fe4b:91d3/64 scope linkEsa línea inet6 fe80::…/64 scope link es la link-local obligatoria: el sistema operativo la generó solo (en este caso a partir de la MAC 5c:26:0a:4b:91:d3 con el viejo método EUI-64 — de ahí el parecido; Windows y los Linux modernos suelen usar identificadores aleatorios). Jon vería el equivalente en Bilbao. Con ella, los equipos del mismo enlace ya podrían hablarse en IPv6 (ping fe80::…%eth0 — el %eth0 indica por qué interfaz, ya que las link-local se repiten en cada enlace). Lo que no tienen es dirección global ni salida IPv6 a Internet: no hay router anunciando prefijos.
Lo que implicaría activarlo de verdad (el día que Meridiano lo aborde):
- Prefijo del ISP: pedir/confirmar la delegación de un prefijo (un /48 o /56) en las conexiones de Valencia y Bilbao.
- Plan de direccionamiento: asignar un /64 por VLAN/subred, como el esquema
2001:db8:acad:0010::/64que esbozamos — media hora de trabajo, sin aritmética. - Routers: activar RA por subred (SLAAC, con DNS en el RA o DHCPv6 según la política de registro), y enrutar IPv6 entre VLANs y sedes (la VPN debe transportar también IPv6).
- Firewall en serio: este es EL punto crítico. En doble pila, el servidor de ficheros tendría una dirección global alcanzable en teoría desde todo Internet — ya no existe el "pseudo-firewall" de NAT (lección 05-03). La seguridad pasa a depender exclusivamente de reglas explícitas de firewall en el router: denegar entrante por defecto, permitir lo justo. Activar IPv6 sin revisar el firewall es el error de despliegue clásico.
- Doble diagnóstico: monitorización, DNS (registros
AAAApara la intranet) y resolución de problemas por duplicado; un fallo que "solo pasa a veces" puede ser un fallo solo-IPv6 con fallback silencioso a IPv4.
La recompensa: Marta y Jon con conectividad extremo a extremo real (la VPN sigue teniendo sentido — cifra y autentica —, pero sin contorsiones de NAT), servicios publicables sin port forwarding y una red alineada con la dirección a la que Internet lleva dos décadas moviéndose.
Errores Comunes y Consejos
- Expandir mal los ceros:
db8:20es0db8:0020, nodb80:2000. Los ceros restaurados van a la izquierda de cada grupo. - Usar
::dos veces: ilegal por ambigüedad. Solo la tira de ceros más larga (y si hay empate, la primera) se comprime. - Tratar la link-local
fe80::como un error: no es APIPA. Es obligatoria, legítima y necesaria; su presencia no indica fallo alguno. (Su ausencia sí sería rarísima.) - Buscar la dirección de broadcast: no existe en IPv6. Piensa en multicast (
ff02::1para "todos los del enlace"). - Dimensionar subredes IPv6 "para ahorrar": no hagas /112 ni /120 para "no desperdiciar". La convención es /64 por subred; romperla rompe SLAAC y no ahorra nada que escasee.
- Activar IPv6 (o dejarlo activado) sin firewall pensado para IPv6: con direcciones globales no hay NAT que tape los servicios internos. Regla entrante por defecto: denegar. Y ojo: aunque "no uses IPv6", tus equipos tienen link-local y muchos sistemas lo prefieren si un RA aparece — un RA falso en la red es un ataque conocido.
- Consejo: para comparar dos direcciones IPv6 escritas distinto, expándelas a las 8 columnas y compara. Con práctica lo harás de cabeza; al principio, papel.
- Consejo: en doble pila, cuando algo falle "a medias", pregunta siempre: ¿esto fue por IPv4 o por IPv6? (
pingvsping -6, registroAvsAAAA).
Ejercicios
Ejercicio 1: comprimir y expandir
a) Comprime al máximo (forma canónica): 2001:0db8:00a0:0000:0000:0000:0000:0d10
b) Comprime al máximo: 2001:0db8:0000:0000:0130:0000:0000:0007 (cuidado: dos tiras de ceros)
c) Expande a los 8 grupos completos: 2001:db8:acad:120::20:7
Ejercicio 2: identificar tipos
Marta ejecuta ip addr en un equipo ya con IPv6 activado y ve estas direcciones. Clasifica cada una (tipo y ámbito) y explica su papel:
::1fe80::5e26:aff:fe4b:91d32001:db8:acad:10:1c3a:9bf2:44d0:8a11fd00:10::10
Ejercicio 3: mini-plan de direccionamiento
El ISP delega a Meridiano el prefijo 2001:db8:7a00::/48. Propón un /64 para cada subred del plan del módulo (Valencia corporativa, Valencia invitados, Valencia servidores, Bilbao), haciendo coincidir el grupo de subred con los números de VLAN/sede (10, 20, 30, 120), y responde: ¿cuántas subredes /64 caben en total en el /48? ¿Tiene sentido preguntarse cuántos hosts caben en cada una?
Soluciones
Solución 1
a)
2001:0db8:00a0:0000:0000:0000:0000:0d10
Regla 1 (ceros a la izquierda): 2001:db8:a0:0:0:0:0:d10
Regla 2 (tira más larga de ceros: grupos 4–7, longitud 4 → ::):
→ 2001:db8:a0::d10b)
2001:0db8:0000:0000:0130:0000:0000:0007
Regla 1: 2001:db8:0:0:130:0:0:7
Tiras de ceros: grupos 3–4 (longitud 2) y grupos 6–7 (longitud 2).
Empate → se comprime la PRIMERA (RFC 5952):
→ 2001:db8::130:0:0:7
(2001:db8:0:0:130::7 es equivalente pero no canónica;
2001:db8::130::7 es ILEGAL)c)
2001:db8:acad:120::20:7
Grupos visibles: 2001, db8, acad, 120, 20, 7 → 6 grupos
El :: esconde 8 − 6 = 2 grupos de ceros.
Restaurar ceros a la izquierda de cada grupo:
→ 2001:0db8:acad:0120:0000:0000:0020:0007
(nota: 120 → 0120 y 20 → 0020)Solución 2
::1— loopback, ámbito la propia máquina. Equivale al 127.0.0.1 de IPv4: probar la pila local.fe80::5e26:aff:fe4b:91d3— link-local (fe80::/10), ámbito el enlace: no cruza routers. Autogenerada (aquí con EUI-64 a partir de la MAC5c:26:0a:4b:91:d3: se invierte el 7º bit del primer byte, 5c→5e, y se insertaff:feen medio). Soporta NDP y suele ser el gateway que anuncian los routers.2001:db8:acad:10:1c3a:9bf2:44d0:8a11— global unicast (empieza por 2), enrutable en Internet. Prefijo de subred2001:db8:acad:10::/64(Valencia corporativa en nuestro plan); el identificador de interfaz aleatorio sugiere SLAAC con extensiones de privacidad.fd00:10::10— unique local (ULA), dentro defd00::/8⊂fc00::/7: el equivalente IPv6 de RFC 1918, para uso interno no enrutable en Internet. Aquí, plausiblemente, una dirección interna estable del servidor de ficheros/intranet.
Solución 3
Plan (los grupos de subred elegidos en hex, coincidiendo visualmente con VLAN/sede):
2001:db8:7a00:10::/64 Valencia corporativa (VLAN 10)
2001:db8:7a00:20::/64 Valencia invitados (VLAN 20)
2001:db8:7a00:30::/64 Valencia servidores (VLAN 30)
2001:db8:7a00:120::/64 BilbaoSubredes /64 en un /48: los bits de subred son 64 − 48 = 16, luego 2¹⁶ = 65.536 subredes. Con 4 usadas, quedan 65.532 libres: la escasez ha dejado de ser una variable de diseño.
¿Hosts por subred? Cada /64 contiene 2⁶⁴ ≈ 1,8 × 10¹⁹ direcciones. La pregunta pierde el sentido que tenía en IPv4: no hay que dimensionar, no hay 2^h − 2, no hay broadcast que restar. En IPv6 se cuentan subredes, no hosts.
Conclusión
Con esta lección se cierra el círculo del direccionamiento: sabes por qué existe IPv6 (el agotamiento que NAT solo aplazó), lees y abrevias sus direcciones de 128 bits con las dos reglas (ceros a la izquierda y un único ::), distingues global unicast, link-local, ULA y multicast — y sabes que el broadcast ha muerto —, entiendes por qué el /64 universal convierte el subnetting en una enumeración sin aritmética, comparas SLAAC con el DHCP que ya conocías, y tienes claro que la transición real se llama doble pila. En Meridiano, además, has visto que IPv6 ya está en cada equipo en forma de link-local, y qué pasos (y qué firewall) exigiría activarlo de verdad.
Y con ello, el módulo 5 completo: anatomía de IPv4 y su binario, máscaras y subnetting con método, NAT y el mundo de las direcciones privadas, e IPv6 como destino. Ya sabes cómo se diseña el direccionamiento de una red como la de Meridiano de punta a punta. Lo que aún no hemos sistematizado es qué hacer cuando, con todo bien diseñado, algo falla: Marta no llega a la intranet, el ping se pierde a mitad de camino, el DNS resuelve raro. Convertir tus conocimientos en un método de diagnóstico — con las herramientas de siempre bien afiladas, captura de tráfico incluida — es el objetivo del módulo 6: Herramientas de Diagnóstico.
Curso de Redes
Módulo 1: Introducción a las Redes
Módulo 2: Protocolos de Comunicación
- Introducción a los Protocolos de Comunicación
- Protocolos de Enlace de Datos
- Protocolos de Red
- Protocolos de Transporte
- Protocolos de Aplicación
Módulo 3: El Modelo OSI
- Introducción al Modelo OSI
- Capa Física
- Capa de Enlace de Datos
- Capa de Red
- Capa de Transporte
- Capa de Sesión
- Capa de Presentación
- Capa de Aplicación
Módulo 4: El Modelo TCP/IP
- Introducción al Modelo TCP/IP
- Capa de Acceso a la Red
- Capa de Internet
- Capa de Transporte
- Capa de Aplicación
- Comparativa entre OSI y TCP/IP
