Direcciones IPv6 – Convenciones y Formatos

En éste capítulo veremos los formatos de direcciones IPv6 y las maneras de acortar o expandir direcciones IPv6:

  • Cómo escribir e interpretar direcciones IPv6 de 32 dígitos no abreviadas
  • Cómo abreviar acortar direcciones IPv6 y cómo interpretar direcciones acortadas
  • Cómo interpretar la máscara de longitud del prefijo IPv6
  • Cómo encontrar el prefijo IPv6 (ID de subred), según una dirección y una máscara de longitud de prefijo

Como ya sabes el examen CCNA requiere algunas habilidades fundamentales para trabajar con direcciones IPv4. Por ejemplo, tienes que poder interpretar direcciones IPv4, como 172.21.73.14. Trabajar con los prefijos de máscaras, como /25, e interpretar lo que eso significa cuando se usa con una dirección IPv4 en particular. Y tienes que poder tomar una dirección y una máscara, como 172.21.73.14/25, y encontrar el ID de subred. Lo mismo aplica para una dirección IPv6

Antes de continuar si quieres puedes repasar todos los conceptos de IPv4, si no los tienes muy claros te recomiendo leerlos antes de continuar con éste capítulo. Comenzando por la Parte I, Capítulo 3.3 IPv4 y luego sigue con todos los capítulos de las Partes IV y V que puedes ver en el menú de navegación a la izquierda de ésta página (para PC) o el menú de arriba (en móvil).

Direcciones IPv6 Completas (no abreviadas o sin acortar)

IPv6 utiliza un formato hexadecimal (hex) conveniente para las direcciones.

Para hacerlo más legible, IPv6 usa un formato con ocho conjuntos de cuatro dígitos hexadecimales, con cada conjunto de cuatro dígitos separados por dos puntos. Por ejemplo:

2340:1111:AAAA:0001:1234:5678:9ABC:1234

Si bien las direcciones IPv6 también tienen un formato binario, no es necesario en la mayoría de los casos mirar una dirección IPv6 en ese formato.

Conversión de Hexadecimal a Binario

Recordemos que los valores alfanuméricos en hexadecimal son 16: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F.

HexBinaryHexBinary
000081000
1000191001
20010A1010
30011B1011
40100C1100
50101D1101
60110E1110
70111F1111

Acortar y Expandir Direcciones IPv6

Aunque el uso de un número hexadecimal de 32 dígitos funciona mucho mejor que trabajar con un número binario de 128 bits, 32 dígitos hexadecimales siguen siendo muchos dígitos para recordar, reconocer en la salida del comando y escribir en una línea de comando. Las reglas de abreviación de direcciones IPv6 te permiten acortar estos números.

2 Reglas para Acortar Direcciones IPv6

Sólo dos reglas básicas te permiten a ti, o cualquier computadora, acortar o abreviar una dirección IPv6:

  1. Dentro de cada cuarteto de cuatro dígitos hexadecimales, elimina los 0 iniciales (los 0 en el lado izquierdo del cuarteto). (Nota: en este paso, un cuarteto de 0000 dejará un solo 0).
  2. Busca cualquier cadena de dos o más cuartetos consecutivos con todos los hexadecimales en cero y reemplaza ese conjunto de cuartetos con dos puntos dobles (::). El :: significa «dos o más cuartetos de todos 0». Sin embargo, puede usar :: solo una vez en una sola dirección porque, de lo contrario, es posible que no se comprenda cuál es la dirección IPv6 exacta.

Nada mejor que un ejemplo para entender lo que vimos en los parrafos anteriores.

Paso 1: Eliminar los ceros «0» de la izquierda

Aplicando la primera regla: Donde se eliminan los tres primeros ceros cuando el cuarteto tiene todos sus dígitos en cero. La siguiente dirección IPv6:

FE00:0000:0000:0001:0000:0000:0000:0056

Pasa a quedar de la siuguiente manera:

FE00:0:0:1:0:0:0:56

Paso 2: Si hay dos o más cuartetos con ceros consecutivos remplazar por ::

Usando la dirección anterior que ya paso por la primera regla:

FE00:0:0:1:0:0:0:56

Y ahora Aplicando la segunda regla, el resultado es el siguiente:

FE00:0:0:1::56

Dos Errores Comunes que se Suelen Cometer Cuando Acortamos una Dirección IPv6

Primero, nunca elimines los ceros al final de un cuarteto (los ceros en el lado derecho del cuarteto). Por ejemplo, en el primer cuarteto FE00, los dos ceros finales no pueden eliminarse porque están a la derecha y no a la izquierda como indica la primera regla.

Segundo, no remplaces todos los cuartetos de 0 con el doble dos puntos. Recuerda que los :: se pueden utilizar sólo una vez. Por ejemplo la siguiente abreviación seria incorrecta: FE00::1::56

Expandir Direcciones IPv6 Acortadas

Para volver a expandir una dirección IPv6 aplica las dos reglas que mencioné antes, pero a la inversa.

  1. En cada cuarteto agrega los 0 que falten a la izquierda hasta completar los cuatro dígitos exadecimales del cuarteto.
  2. Si hay dos veces seguidas los dos puntos (::), cuenta todos los cuartetos; el total debe ser menos que 8. Remplaza :: con múltiples cuartetos de 0000 hasta llegar a un total de ocho cuartetos en toda la dirección IPv6.

Aquí te dejo una herramienta muy interesante para acortar y expandir IPv6, sólo úsala para verificar tus propios resultados: Acortar direcciones IPv6, Expandir direcciones IPv6.

Ejercicios de expandir y acortar direcciones IPv6

A continuación voy a deja runa tabla donde tendrás algunos ejercicios que puedes hacer tu mismo, sólo mira la primera tabla, haz los ejercicios y comprara los resultados con la segunda tabla:

CompletoAbreviado
2340:0000:0010:0100:1000:ABCD:0101:1010
30A0:ABCD:EF12:3456:ABC:B0B0:9999:9009
2222:3333:4444:5555:0000:0000:6060:0707
3210::
210F:0000:0000:0000:CCCC:0000:0000:000D
34BA:B:B::20
FE80:0000:0000:0000:DEAD:BEFF:FEEF:CAFE
FE80::FACE:BAFF:FEBE:CAFE
Completa los campos vacíos

Respuesta al ejercicio anterior:

CompletoAbreviado
2340:0000:0010:0100:1000:ABCD:0101:10102340:0:10:100:1000:ABCD:101:1010
30A0:ABCD:EF12:3456:0ABC:B0B0:9999:900930A0:ABCD:EF12:3456:ABC:B0B0:9999:9009
2222:3333:4444:5555:0000:0000:6060:07072222:3333:4444:5555::6060:707
3210:0000:0000:0000:0000:0000:0000:00003210::
210F:0000:0000:0000:CCCC:0000:0000:000D210F::CCCC:0:0:D
34BA:000B:000B:0000:0000:0000:0000:002034BA:B:B::20
FE80:0000:0000:0000:DEAD:BEFF:FEEF:CAFEFE80::DEAD:BEFF:FEEF:CAFE
FE80:0000:0000:0000:FACE:BAFF:FEBE:CAFEFE80::FACE:BAFF:FEBE:CAFE
Resultados del ejercicio anterior

Máscara o Prefijo IPv6

IPv6 utiliza un concepto de máscara, llamado longitud de prefijo, similar a las máscaras de subred IPv4.

La longitud del prefijo IPv6 se escribe como /, seguida de un número decimal. La longitud del prefijo define cuántos bits de la dirección IPv6 corresponden al prefijo IPv6, que es básicamente el mismo concepto que el ID de subred IPv4.

Al escribir la longitud del prefijo puedes optar por dejar un espacio antes de /, o no, como se muestra en los dos ejemplos siguientes.

2222:1111:0:1:A:B:C:D/64
2222:1111:0:1:A:B:C:D /64

Para el prefijo, el rango de valor legal es de 0 a 128, inclusive.

El cálculo del ID de la subred es igual que en IPv4.

Calcular o Encontrar el Prefijo IPv6

Un prefijo representa un grupo de direcciones IPv6.

Cada prefijo de IPv6, o subred si lo prefieres, tiene un número que representa al grupo.

Según las RFC de IPv6, el número en sí también se llama prefijo, pero muchas personas simplemente lo llaman número de subred o ID de subred, utilizando los mismos términos que IPv4.

Si la longitud del prefijo es del tipo /P, usa estas reglas:

  1. Copia los primeros P bits.
  2. Cambia el resto de bits a 0.

Cuando se utiliza una longitud de prefijo que es múltiplo de 4, no tienes que pensar en términos de bits, sino en términos de dígitos hexadecimales. Una longitud de prefijo que es un múltiplo de 4 significa que cada dígito hexadecimal se copia o se cambia a 0 hexadecimal.

Si la longitud del prefijo es múltiplo de 4, el proceso se convierte en

  1. Identifica el número dígitos hexadecimales en el prefijo dividiendo el ancho del prefijo (que esta en bits) por 4.
  2. Copia los dígitos hexadecimales que se encuentran dentro del prefijo según lo visto en el paso primero.
  3. Cambia el resto de los dígitos hexadecimales por 0.

Ejemplo con múltiplo de 16:

Para un prefijo /64 (la mitad de una dirección IPv6 que son de 128 bits):

PPPP:PPPP:PPPP:PPPP:HHHH:HHHH:HHHH:HHHH

2001:0DB8:AAAA:0002:1234:5678:9ABC:EF01

Copia los bits del prefijo y cambia a cero los del host:

2001:0DB8:AAAA:0002:0000:0000:0000:0000

Ejemplo con múltiplo de 4:

Para un prefijo /60 (60 dividido 4 = 11 veces P ):

PPPP:PPPP:PPPP:PPPH:HHHH:HHHH:HHHH:HHHH

2001:0DB8:AAAA:0002:1234:5678:9ABC:EF01

Copia los bits del prefijo y cambia a cero los del host:

2001:0DB8:AAAA:0000:0000:0000:0000:0000

Ejercicios para Encontrar la Longitud del Prefijo IPv6

Dirección/LongitudPrefijo
2340:0:10:100:1000:ABCD:101:1010/64
30A0:ABCD:EF12:3456:ABC:B0B0:9999:9009/64
2222:3333:4444:5555::6060:707/64
3210::ABCD:101:1010/64
210F::CCCC:B0B0:9999:9009/64
34BA:B:B:0:5555:0:6060:707/64
3124::DEAD:CAFE:FF:FE00:1/64
2BCD::FACE:BEFF:FEBE:CAFE/64
Completa los campos vacíos
Dirección/LongitudPrefijo
2340:0:10:100:1000:ABCD:101:1010/642340:0:10:100::/64
30A0:ABCD:EF12:3456:ABC:B0B0:9999:9009/6430A0:ABCD:EF12:3456::/64
2222:3333:4444:5555::6060:707/642222:3333:4444:5555::/64
3210::ABCD:101:1010/643210::/64
210F::CCCC:B0B0:9999:9009/64210F::/64
34BA:B:B:0:5555:0:6060:707/6434BA:B:B::/64
3124::DEAD:CAFE:FF:FE00:1/643124:0:0:DEAD::/64
2BCD::FACE:BEFF:FEBE:CAFE/642BCD::/64
Resultados del ejercicio anterior

Encontrar Prefijos IPv6 de Mayor Complejidad

Algunas longitudes de prefijo hacen que las matemáticas para encontrar el prefijo sean muy fáciles, algunas en su mayoría fáciles y algunas requieren que trabajes en binario.

Si la longitud del prefijo es múltiplo de 16, el proceso es el de copiar parte de la dirección en cuartetos completos.

Si la longitud del prefijo no es un múltiplo de 16 pero es un múltiplo de 4, al menos el límite se encuentra en el borde de un dígito hexadecimal, por lo que puede evitar trabajar en binario.

Aunque la longitud del prefijo /64 es, con mucho, la longitud de prefijo más común, debes estar listo para encontrar el prefijo cuando utilice una longitud de prefijo que sea cualquier múltiplo de 4.

Por ejemplo, consideras la siguiente dirección IPv6 y longitud de prefijo:

2000:1234:5678:9ABC:1234:5678:9ABC:1111/56

Dado que este ejemplo usa una longitud de prefijo /56, el prefijo incluye los primeros 56 bits, o los primeros 14 dígitos hexadecimales completos de la dirección. El resto de los dígitos hexadecimales será 0, lo que dará como resultado el siguiente prefijo:

2000:1234:5678:9A00:0000:0000:0000:0000/56

éste valor puede acortarse de la siguiente manera:

2000:1234:5678:9A00::/56

Ejercicios para Encontrar la Longitud del Prefijo IPv6

Longitud/DirecciónPrefijo
34BA:B:B:0:5555:0:6060:707/8034BA:B:B:0:5555::/80
3124::DEAD:CAFE:FF:FE00:1/803124:0:0:DEAD:CAFE::/80
2BCD::FACE:BEFF:FEBE:CAFE/482BCD::/48
3FED:F:E0:D00:FACE:BAFF:FE00:0/483FED:F:E0::/48
210F:A:B:C:CCCC:B0B0:9999:9009/40210F:A::/40
34BA:B:B:0:5555:0:6060:707/3634BA:B::/36
3124::DEAD:CAFE:FF:FE00:1/603124:0:0:DEA0::/60
2BCD::FACE:1:BEFF:FEBE:CAFE/562BCD:0:0:FA00::/56
Completa los campos vacíos
Longitud/DirecciónPrefijo
34BA:B:B:0:5555:0:6060:707/8034BA:B:B:0:5555::/80
3124::DEAD:CAFE:FF:FE00:1/803124:0:0:DEAD:CAFE::/80
2BCD::FACE:BEFF:FEBE:CAFE/482BCD::/48
3FED:F:E0:D00:FACE:BAFF:FE00:0/483FED:F:E0::/48
210F:A:B:C:CCCC:B0B0:9999:9009/40210F:A::/40
34BA:B:B:0:5555:0:6060:707/3634BA:B::/36
3124::DEAD:CAFE:FF:FE00:1/603124:0:0:DEA0::/60
2BCD::FACE:1:BEFF:FEBE:CAFE/562BCD:0:0:FA00::/56
Resultados del ejercicio anterior

Deja un comentario