Direccionamiento IPv6

 

Espacio de direcciones de IPv6

 

La característica distintiva más evidente de IPv6 es el uso de direcciones mucho mayores. El tamaño de una dirección en IPv6 es de 128 bits, cuatro veces mayor que el de una dirección de IPv4. El espacio de direcciones de 32 bits permite hasta 4.294.967.296 direcciones. Un espacio de direcciones de 128 bits permite hasta 340.282.266.920.938.463.463.374.607.431.768.211.465 (o 3,4 x 1038) direcciones.

A finales de la década de 1970, cuando se diseñó el espacio de direcciones de IPv4, era inimaginable que pudiera agotarse. Sin embargo, debido a los cambios tecnológicos y a una práctica de asignaciones en la que no se previó el reciente aumento del número de hosts en Internet, el espacio de direcciones de IPv4 se fue agotando hasta tal punto que en 1992 se hizo evidente la necesidad de un reemplazo.

Con IPv6, resulta aún más difícil concebir que el espacio de direcciones de IPv6 se vaya a consumir. Para tener una idea algo más aproximada de lo que supone este número, un espacio de direcciones de 128 bits proporciona 655.570.793.348.866.943.898.599 (6,5 x 1023) direcciones por metro cuadrado de la superficie terrestre.

Ciertamente, la decisión de que la dirección de IPv6 tenga una longitud de 128 bits no obedece a que pueda haber hasta 6,5 x 1023 direcciones por cada metro cuadrado de la Tierra. El tamaño relativamente grande de una dirección IPv6 se ha diseñado así para que se pueda subdividir en dominios de enrutamiento jerárquico que reflejen la topología de Internet actual. El uso de 128 bits permite varios niveles de jerarquía y ofrece flexibilidad para diseñar un enrutamiento y un direccionamiento jerárquico, algo que actualmente no ofrece la tecnología Internet basada en IPv4.

La arquitectura de direccionamiento de IPv6 se describe en RFC 2373.

Asignación actual

De modo similar al que se utiliza para dividir el espacio de direcciones de IPv4, el espacio de direcciones de IPv6 se divide según el valor de los bits de orden superior. Los bits de orden superior y su valor fijo se conocen como prefijo de formato (FP, Format Prefix).

En la tabla 2 se muestra la asignación del espacio de direcciones de IPv6 por FP.

 

Tabla 2 Asignación actual del espacio de direcciones de IPv6

Asignación

Prefijo de formato (FP)

Fracción del espacio de direcciones

Reservado

0000 0000

1/256

Sin asignar

0000 0001

1/256

Reservado para la asignación de NSAP

0000 001

1/128

Reservado para la asignación de IPX

0000 010

1/128

Sin asignar

0000 011

1/128

Sin asignar

0000 1

1/32

Sin asignar

0001

1/16

Direcciones de unidifusión global agregables

001

1/8

Sin asignar

010

1/8

Sin asignar

011

1/8

Sin asignar

100

1/8

Sin asignar

101

1/8

Sin asignar

110

1/8

Sin asignar

1110

1/16

Sin asignar

1111 0

1/32

Sin asignar

1111 10

1/64

Sin asignar

1111 110

1/128

Sin asignar

1111 1110 0

1/512

Direcciones de unidifusión local de vínculo

1111 1110 10

1/1024

Direcciones de unidifusión local de sitio

1111 1110 11

1/1024

Direcciones de multidifusión

1111 1111

1/256

 

 

El conjunto actual de direcciones de unidifusión que se pueden utilizar con nodos de IPv6 consta de direcciones de unidifusión global agregables, direcciones de unidifusión local de vínculo y direcciones de unidifusión local de sitio. Éstas sólo representan el 15 por ciento de todo el espacio de direcciones de IPv6.

Sintaxis de las direcciones de IPv6

Las direcciones de IPv4 se representan en formato de notación decimal con puntos. Esta dirección de 32 bits se divide en límites de 8 bits. Cada conjunto de 8 bits se convierte en su equivalente decimal y está separado por puntos. Para IPv6, la dirección de 128 bits se divide en límites de 16 bits y cada bloque de 16 bits se convierte en un número hexadecimal de 4 dígitos y se separa con signos de dos puntos (:). La representación resultante se denomina hexadecimal con dos puntos.

A continuación se muestra una dirección IPv6 en formato binario:

0010000111011010100100001101001100000000010100000010111100111011

0000001010101010000000001111111111111110001010001001110001011010

Esta dirección de 128 bits se divide en límites de 16 bits:

0010000111011010 1001000011010011 0000000001010000 0010111100111011 0000001010101010 0000000011111111 1111111000101000 1001110001011010

Cada bloque de 16 bits se convierte a hexadecimal y está delimitado por signos de dos puntos (:). El resultado es:

21DA:00D3:0000:2F3B:02AA:00FF:FE28:9C5A

La representación de IPv6 se puede simplificar aún más si se quitan los ceros a la izquierda de cada bloque de 16 bits. Sin embargo, cada bloque debe tener un dígito como mínimo. Al suprimir los ceros a la izquierda, la representación de la dirección se convierte en:

21DA:D3:0:2F3B:2AA:FF:FE28:9C5A

Compresión de ceros

Algunos tipos de direcciones contienen largas secuencias de ceros. Para simplificar aún más la representación de direcciones de IPv6, una secuencia contigua de bloques de 16 bits establecida como 0 en formato hexadecimal con dos puntos se puede comprimir como "::".

Por ejemplo, la dirección local de vínculo de FE80:0:0:0:2AA:FF:FE9A:4CA2 se puede comprimir en FE80::2AA:FF:FE9A:4CA2. La dirección de multidifusión FF02:0:0:0:0:0:0:2 se puede comprimir en FF02::2.

La compresión de cero sólo se puede utilizar para comprimir una serie contigua de bloques de 16 bits expresada en notación hexadecimal con dos puntos. No se puede utilizar la compresión de ceros para incluir una parte de un bloque de 16 bits. Por ejemplo, no se puede expresar FF02:30:0:0:0:0:0:5 como FF02:3::5.

Para determinar cuántos bits 0 se representan mediante "::", puede contar el número de bloques de la dirección comprimida, restar ese número a 8 y multiplicar el resultado por 16. Por ejemplo, en la dirección FF02::2, hay dos bloques (el bloque "FF02" y el bloque "2"). El número de bits expresado por "::" es 96 (96 = (8 – 2)*16).

La compresión de ceros sólo se puede utilizar una vez en una dirección dada. De lo contrario, no se podría determinar el número de bits 0 representados por cada instancia de "::".

Prefijos IPv6

El prefijo es la parte de la dirección que indica los bits con valores fijos o los bits del identificador de red. Los prefijos para IPv6 se expresan del mismo modo que la notación de Enrutamiento entre dominios sin clase (CIDR, Classless Inter-Domain Routing) para IPv4. Un prefijo IPv6 se escribe con la notación dirección/longitud de prefijo. Por ejemplo, FE80::2AA:FF:FE9A:4CA2/64 indica que los primeros 64 bits de la dirección corresponden al prefijo de red. La notación de prefijo también se utiliza para expresar los identificadores de red o de subred. Por ejemplo, 21DA:D3::/48 es una subred.

Una dirección de nodo, con su prefijo, se puede utilizar para obtener el identificador de subred. Por ejemplo, el identificador de subred derivado de la dirección y el prefijo 21DA:D3:0:2F3B:2AA:FF:FE28:9C5A/64 es 21DA:D3:0:2F3B::/64.

Nota Las implementaciones de IPv4 suelen utilizar una representación decimal con puntos del prefijo de red, que se conoce como máscara de subred. Para IPv6 no se utiliza la máscara de subred. Sólo se admite la notación de longitud de prefijo.

Aunque se pueden definir prefijos a lo largo de los límites de bit, la notación hexadecimal con dos puntos para las direcciones IPv6 se expresa a lo largo de límites de cuarteto (4 bits). Para expresar correctamente una subred con un prefijo cuya longitud no es múltiplo de 4, deberá realizar conversiones de notación hexadecimal a binaria para determinar el identificador de subred adecuado. Por ejemplo, para expresar la subred de la dirección y el prefijo de 21DA:D3:0:2F3B:2AA:FF:FE28:9C5A/59, deberá convertir el "3" de "2F3B" a binario (0011), dividir el cuarteto entre el tercer y el cuarto dígito binario, y volver a realizar la conversión a hexadecimal. El resultado es el identificador de subred 21DA:D3:0:2F20::/59.

 

Atrás    Inicio    Siguiente