Está en la página 1de 8

TECNOLÓGICO DE ESTUDIOS SUPERIORES DE ECATEPEC

DIVISIÓN DE INGENIERÍA EN SISTEMAS COMPUTACIONALES

PRACTICA FUNDAMENTOS IPv6


MAESTRO: MARTÍN VERDUZCO RODRÍGUEZ FECHA: 25/11/2023
ESTUDIANTE: ALAN JESUS DE LOS ANGELES GUTIERREZ GRUPO: 5651
Indicaciones generales: Para cada actividad de la práctica deberá resolver los ejercicios indicados.

Introducción
IPv6 ofrece un espacio de direccionamiento mucho mayor al de IPv4, estamos hablando de 2 128 que eso nos daría al
rededor de 340 sextillones de direcciones utilizables. IPv6 satisface las demandas actuales y futuras de direccionamiento
IP.

1. Representación de las direcciones IPv6


El protocolo IP versión 6 (IPv6) trabaja con direcciones de 128 bits = 16 bytes; por lo que es capaz de manejar miles de
millones de direcciones diferentes para equipos. Las direcciones IPv6 se representan como ocho grupos de 16 bits
expresados en hexadecimal y separados por dos puntos. A cada uno de éstos bloques se les llama “hextetos”
Un ejemplo de una dirección IPv6 sería: FDEC:BA98:0074:3210:000F:0000:0000:FFFF
- Primer hexteto es FDEC
- Segundo hexteto es BA98
- Tercer hexteto es 0074
- Cuarto hexteto es 3210
- Quinto hexteto es 000F
- Sexto hexteto es 0000
- Séptimo hexteto es 0000
- Octavo hexteto es FFFF
Dado que hace uso de un sistema hexadecimal y binario, es necesario recordar cómo se hace la conversión entre estos
sistemas numéricos.
En la siguiente tabla se muestran las conversiones de los primeros 16 valores.

Decimal Binario Hexadecimal


0 0000 0
1 0001 1
2 0010 2
3 0011 3
4 0100 4
5 0101 5
6 0110 6
7 0111 7
8 1000 8
9 1001 9
10 1010 A
11 1011 B
12 1100 C
13 1101 D
14 1110 E
15 1111 F

A partir de la tabla anterior, solo es necesario cambiar cada valor hexadecimal por su equivalente en binario.
Transformando cada valor del primer hexteto del ejemplo antes mencionado a binario tenemos lo siguiente:
Hexadecimal F D E C
Binario 1111 1101 1110 1100

7
EJERCICIO 1
Realice la conversión a binario de los siguientes hextetos:

Hexadecimal BA98 0074 3210 000F


Binario 1011101010011000 0000000001110100 0011001000010000 0000000000001111

Continuando con el análisis de una dirección IPv6, esta se compone de 128 bits = 16 bytes (paquetes de 8 bits) = 8
hextetos = 32 dígitos hexadecimales
<-------------------------------------------------------------------------------->
1111 1101 1110 1100 …………………………………………………………………… 1111 1111 1111 1111
F D E C :BA98:0074:3210:000F:0000:0000: F F F F

Esta sería la forma no abreviada de representar la dirección IPv6 en hexadecimal. Pero las direcciones IPv6 se pueden
comprimir y acortar aplicando una serie de reglas:

2. Reglas para comprimir y acortar direcciones ipv6


 Los ceros iniciales por hexteto se pueden omitir. Por ejemplo, el grupo 0074 de la dirección ejemplo sería
igual a 74, el grupo 000F se representará como F, y el grupo 0000 sería igual a 0. De manera que la dirección
anterior puede expresarse en forma abreviada como:
FDEC :BA98:0074:3210:000F:0000:0000:FFFF  FDEC:BA98:74:3210:F:0:0:FFFF

Recuerda, los ceros que están a la derecha de algún valor diferente de cero no pueden eliminarse, por ejemplo, para el
hexteto 3210, no se puede eliminar el 0 que se ubica al final del mismo.

 Uno o varios grupos nulos consecutivos pueden comprimirse como "::" . Este método de abreviatura sólo
puede utilizarse una vez en una dirección. Si la dirección tiene más de una serie de grupos nulos consecutivos
la compresión sólo se permite en uno de ellos. Por tanto, una forma más abreviada aún de expresar la dirección
anterior que tiene ceros consecutivos sería:
FDEC :BA98:74:3210:F:0000:0000:FFFF  FDEC:BA98:74:3210:F::FFFF

Otro ejemplo:
La dirección IPv6 FDEC :0:74:3210:F : 0 : 0 :FFFF
Podría abreviarse como FDEC : : 74 :3210:F: 0 : 0 : FFFF
O bien como FDEC:0: 74:3210:F::FFFF
Pero abreviarla como FDEC: :74:3210:F : : FFFF
no es válida porque no queda claro cuántos grupos nulos representa cada uno de los “::”.

 La dirección IPv6 de loopback 0:0:0:0:0:0:0:1 se reduce a ::1

 La dirección IPv6 indefinida 0:0:0:0:0:0:0:0 se reduce a ::

EJERCICIO 2
Comprime al máximo posible las siguientes direcciones, siempre y cuando sean direcciones válidas, en caso de no serlo
explica la causa:
a) 1243:4567:0012:1000:0000:0000:0ABC:000A
1243:4567:12:1000::ABC:A
Esta dirección es válida. Se eliminaron los ceros a la izquierda y se usó "::" para los bloques de ceros
consecutivos.

7
b) 001:002:0002:11111:0000:0000:0ABC:0B0A
1:2:2:11111::ABC:B0A
Esta dirección también es válida. Se eliminaron los ceros a la izquierda y se usaron "::" para representar los
bloques de ceros consecutivos.

c) 1256:8567:0002:H000:1000:2000:0ABC:000A
1256:8567:2:H000:1000:2000:ABC:A
Esta dirección es inválida. El bloque "H000" no es un valor hexadecimal válido. Debería ser un valor hexadecimal
de 4 dígitos, por lo que esta dirección no se puede comprimir sin cambiar la parte inválida.

d) 0003:0000:0012:0000:0000:0000:0ABC:000A
3:0:12::ABC:A
Esta dirección es válida. Se eliminaron los ceros a la izquierda y se usó "::" para representar los bloques de ceros
consecutivos.

e) 002:0047:01:001:0000:04:0ABC:000A:1010
2:47:1:1::4:ABC:A:1010
Esta dirección es válida. Se eliminaron los ceros a la izquierda y se usaron "::" para representar los bloques de
ceros consecutivos.

3. Expansión de direcciones
Para volver a expandir una dirección IPv6 aplica las dos reglas que mencioné antes, pero a la inversa.
 En cada hexteto agrega los 0 que falten a la izquierda hasta completar los cuatro dígitos hexadecimales del
hexteto. A manera de ejemplo, tenemos:
FDEC:BA98:74:3210:F::FFFF  FDEC :BA98:0074:3210:000F::FFFF

 Si hay dos veces seguidas los dos puntos (::), cuenta todos los hextetos; el total debe ser menos que 8.
Remplaza :: con múltiples hextetos de 0000 hasta llegar a un total de ocho hextetos en toda la dirección IPv6.
Así, continuando con el ejemplo anterior, tendremos:
FDEC :BA98:0074:3210:000F::FFFF  FDEC :BA98:0074:3210:000F:0000:0000:FFFF

EJERCICIO 3
Expande al máximo posible las siguientes direcciones, siempre y cuando sean direcciones válidas, en caso de no serlo
explica la causa:
a) 243:67:1012:1000::ABC:AD
a) 0243:0067:1012:1000:0000:0000:0ABC:00AD
Esta dirección es válida. Se completaron los ceros faltantes en cada bloque abreviado para tener 4 dígitos
hexadecimales.

b) A01:2::1:0:0:ABC:B0A
0A01:0002:0000:0001:0000:0000:0ABC:0B0A
También es una dirección válida. Los bloques abreviados se llenaron con ceros para obtener 4 dígitos
hexadecimales en cada uno.

c) 1256:7::1:0:ABC:A
1256:0007:0000:0000:0001:0000:0ABC:000A
Esta dirección es válida. Se llenaron los bloques abreviados con ceros para que todos tengan 4 dígitos
hexadecimales.

d) ::11:0:ABC:0
0000:0011:0000:0ABC:0000:0000:0000:0000
Es una dirección válida. Se expandió el bloque abreviado "::" con ceros para tener 8 bloques en total, cada uno
con 4 dígitos hexadecimales.

e) 2:47::1:ABC::10
0002:0047:0000:0001:0ABC:0000:0010:0000
También es una dirección válida. Se expandió el bloque abreviado "::" con ceros para tener 8 bloques en total, y
se llenaron los bloques abreviados con ceros para tener 4 dígitos hexadecimales en cada uno.

7
Ejemplos de direcciones IPv6
Considera la siguiente dirección IPv6: 2031:0000:130F:0000:0000:09C0:876A:130B. Según lo establecido con
anterioridad, esta dirección podría escribirse de las siguientes formas, todas ellas son válidas y significan lo mismo (y
existen más válidas):

2001:0DB8:0000:0000:0000:0000:1428:57AB
2001:0DB8:0000:0000:0000::1428:57AB
2001:0DB8:0:0:0:0:1428:57AB
2001:0DB8:0::0:1428:57AB
2001:0DB8::1428:57AB
2001:DB8::1428:57AB

- La dirección no podría escribirse como 2031::130F::9C0:876A:130B ya que no se puede concluir el número de


grupos nulos que corresponden a cada “ :: ”.

EJERCICIO 4
Considera la siguiente dirección IPv6: FF01:0ABC:0000:0A0B:0000:0CD0:0000:0001. Muestra 5 formas diferentes para
escribir esta misma dirección:
FF01:0ABC:0:A0B::CD0:0:1
FF01:0ABC::A0B:0:CD0:0:1
FF01:0ABC:0:A0B:0:CD0::1
FF01:0ABC::A0B:CD0:0:1
FF01:0ABC:0:A0B:0CD0::1
Cada una sigue las reglas de abreviación al eliminar ceros a la izquierda en cada bloque y utilizando la notación "::" para
indicar bloques de ceros consecutivos.

4. Prefijo IPv6
IPv6 utiliza un concepto de máscara, llamado longitud de prefijo, similar al empleado en máscaras de red de
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 identificador de subred IPv4. Un ejemplo de su uso se muestra a continuación:
2222:1111:0:1:A:B:C:D/64

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.

Para encontrar el ID de subred se realiza lo siguiente:


1. Identificar la longitud del prefijo
2. Copiar la cantidad de bits que corresponden a la longitud de prefijo.
3. Cambia el resto de bits a ceros.

Ejemplo 1: Longitud de prefijo múltiplo de 16


Tenemos 2222:1111:0:1:A:B:C:D/64 Donde se observa que la longitud del prefijo es de 64 bits.

Como cada hexteto está compuesto por 16 bits, para lograr cubrir 64 bits, se requieren 4 hextetos, por que
64/16 = 4. Por tanto nos quedamos con los valores de los 4 primeros hextetos: 2222:1111:0:1

7
Como último paso para encontrar el id de subred, los hextetos restantes los completamos con ceros.
2222:1111:0:1:0000:0000:0000:0000 /64

Donde aplicando reglas de compresión, tendríamos: 2222:1111:0:1:: /64

Ejemplo 2: Longitud de prefijo múltiplo de 4


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


Tenemos 2222:1111:0:1:A:B:C:D/24 Donde se observa que la longitud del prefijo es de 24 bits.

Recordemos que cada carácter se forma por 4 bits, dividiendo 24/4 = 6. Por tanto la longitud de prefijo abarca
hasta los primeros 6 caracteres: 2222:11

Como último paso para encontrar el id de subred, los caracteres restantes los completamos con ceros.
2222:1100:0000:0000:0000:0000:0000:0000 /24

Donde aplicando reglas de compresión, tendríamos: 2222:11:: /24

EJERCICIO 5
Encuentra y comprime el ID de subred para cada una de las siguientes direcciones IPv6
a) 1243:4567:0012:1000:0000:0000:0ABC:000A /48
b) 0201:0102:0002:1111:0000:0000:0ABC:0B0A /80
c) 1256:8567:0002:0103:0000:1000:0ABC:000A /28
d) 0013:0000:0012:00E0:0A0B:000C:0ABC:000A /60
e) 0002:0007:0001:0001:0000:0ABC:000A:1010 /88

a) 1243:4567:0012:1000:0000:0000:0ABC:000A /48 ID de subred: 1243:4567:0012 Dirección comprimida: 1243:4567:12::

b) 0201:0102:0002:1111:0000:0000:0ABC:0B0A /80 ID de subred: 0201:0102:0002:1111:: Dirección comprimida:


201:102:2:1111::

c) 1256:8567:0002:0103:0000:1000:0ABC:000A /28 ID de subred: 1256:8567:0002:0103:: Dirección comprimida:


1256:8567:2:103::

d) 0013:0000:0012:00E0:0A0B:000C:0ABC:000A /60 ID de subred: 0013:0000:0012:00E0: Dirección comprimida:


13:0:12:E0::

e) 0002:0007:0001:0001:0000:0ABC:000A:1010 /88 ID de subred: 0002:0007:0001:0001:0000: Dirección comprimida:


2:7:1:1::

5. Notación mixta
Una notación mixta está formada por una parte de dirección IPv6 (6 hextetos) y otra de IPv4 (4 decimales de 8
bits separados por puntos). Durante la transición de Internet de IPv4 a IPv6 será típico operar en entornos de doble
direccionamiento (IPv4 e IPv6). Por este motivo se ha introducido esta notación mixta para expresar direcciones IPv6 a
partir de direcciones IPv4, representando los últimos 32 bits de la dirección IPv6 en el formato decimal con puntos usado
en IPv4.

Por ejemplo, si la dirección decimal IPv4 es 135.75.43.52 se desea llevar a formato IPv6

7
Paso 1: Se transforma el valor decimal de cada octeto en su equivalente hexadecimal:
Valor del octeto 1: 13510  1000 01112  8716
Valor del octeto 2: 7510  0100 10112 4B16
Valor del octeto 3: 4310  0010 10112 2B16
Valor del octeto 4: 5210  0011 01002 3416

Paso 2: Los últimos 2 hextetos (hextetos 7 y 8) de la dirección IPv6 se conformarían de los valores encontrados,
manteniendo su orden, y agrupados como se muestra a continuación:
- hexteto 7 se compone del equivalente en hexadecimal del octeto 1 y 2.
- hexteto 8 se compone del equivalente en hexadecimal del octeto 3 y 4.

:874B:2B34

Paso 3: Siempre, para indicar que se trata de una dirección mixta, los 6 primeros hextetos se completan con la siguiente
secuencia: 0000:0000:0000:0000:0000:FFFF

Conjuntando con los hextetos 7 y 8 calculados en el paso 2, la dirección IPv6 final sería:
0000:0000:0000:0000:0000:FFFF:874B:2B34

Aplicando los métodos para acortar direcciones obtendríamos:


::FFFF:874B:2B34

EJERCICIO 6
Lleve las siguientes direcciones IPv4 a formato IPv6
a) 124.34.56.7
b) 220.123.0.179
c) 198.255.18.133
d) 79.11.113.255
e) 192.91.171.151

a) 124.34.56.7 IPv6: ::FFFF:7C22:3807

b) 220.123.0.179 IPv6: ::FFFF:DC7B:00B3

c) 198.255.18.133 IPv6: ::FFFF:C6FF:1285

d) 79.11.113.255 IPv6: ::FFFF:4F0B:71FF

e) 192.91.171.151 IPv6: ::FFFF:C05B:AB97

4. Tipos de Direcciones IPv6

En IPv6 hay tres clases de direcciones:


 Unicast: Identifican un solo dispositivo.
 Multicast: Representa un grupo de dispositivos. Las direcciones multicast inician con FFxx::/8.

7
 Anycast: Representa un grupo de dispositivos. A diferencia de las direcciones Multicast, cuando se envía un
paquete a una dirección Anycast sólo lo recibe el dispositivo más cercano de ese grupo.

Una representación gráfica de las mismas se puede ver en la siguiente figura.

Direcciones Unicast

Hay dos tipos de direcciones Unicast: Unicast global y Link Local.

 Direcciones Unicast Global: estas direcciones son parecidas a las direcciones públicas IPv4. Se pueden enrutar
hacia el Internet y son asignadas por un Proveedor de Servicios de Internet (ISP).
 Direcciones Link Local: estas direcciones son usadas por los dispositivos para comunicarse con otros que se
encuentran en el mismo segmento (subred) . No se pueden enrutar fuera de un determinado segmento. Estas
direcciones se encuentran en el rango FE80::/10, esto significa que los primeros 10 bits son fijos, no sufren
modificación.
Los protocolos de enrutamiento utilizan la dirección Link local para establecer adyacencias con sus respectivos
vecinos. Es una buena práctica modificar la dirección Link Local del Router, y configurar una dirección
más fácil de documentar, Ya que los últimos 64 bits de una dirección Link Local son tomados de la MAC address
de la interface Ethernet, entonces tendríamos una Link Local diferente para cada interfaces del Router; pero si la
modificamos podemos tener un sola link local por Router.

Estructura de una Dirección Unicast


Una dirección Unicast Global tiene 3 elementos:
 Prefijo de enrutamiento Global: es la porción de red asignada por el proveedor de servicio al cliente. Esta parte
está compuesta por los primeros 48 bits.
 Identificador de Subred: Son los Bits usados por el cliente para subnetting. Compuesto por 16 bits.
 Identificador del Hosts: Identifica a un dispositivo. Compuesto por los últimos 64 bits.

Ejemplo:
2001:CB00:1000: BA23:0000:0000:A00:AAAA

- La parte en Rojo (prefijo de enrutamiento global) representa el prefijo /48 asignado por el ISP a un cliente.
- La parte en Azul (identificador de Subred) representa los 16 bits usados por el cliente para subnetear (SOLO SE
SUBNETEA ESTE HEXTETO, SIEMPRE ES EL CUARTO HEXTETO).
- La parte en negro es el identificador del host.

Esto quiero decir que el prefijo /64 (48+16) corresponde a los bits de red y los últimos 64 bits (bits de color negro)
corresponden al host.

EJERCICIO 7
Identifica el prefijo de enrutamiento global, el identificador de subred y el identificador de host para cada una de las
siguientes direcciones IPv6

7
a) 1243:4567:0012:1000:0000:0000:0ABC:000A
b) 0201:0102:0002:1111:0000:0000:0ABC:0B0A
c) 1256:8567:0002:0103:0000:1000:0ABC:000A
d) 0013:0000:0012:00E0:0A0B:000C:0ABC:000A
e) 0002:0007:0001:0001:0000:0ABC:000A:1010

a) 1243:4567:0012:1000:0000:0000:0ABC:000A Prefijo de enrutamiento global: 1243:4567:0012 Identificador de subred:


1000:0000:0000 Identificador de host: 0ABC:000A

b) 0201:0102:0002:1111:0000:0000:0ABC:0B0A Prefijo de enrutamiento global: 0201:0102:0002 Identificador de subred:


1111:0000:0000 Identificador de host: 0ABC:0B0A

c) 1256:8567:0002:0103:0000:1000:0ABC:000A Prefijo de enrutamiento global: 1256:8567:0002 Identificador de subred:


0103:0000:1000 Identificador de host: 0ABC:000A

d) 0013:0000:0012:00E0:0A0B:000C:0ABC:000A Prefijo de enrutamiento global: 0013:0000:0012 Identificador de subred:


00E0:0A0B:000C Identificador de host: 0ABC:000A

e) 0002:0007:0001:0001:0000:0ABC:000A:1010 Prefijo de enrutamiento global: 0002:0007:0001 Identificador de subred:


0001:0000:0ABC Identificador de host: 000A:1010

También podría gustarte