IPv4
El Internet Protocol
version 4 (IPv4) es la cuarta versión del protocolo Internet Protocol (IP), y
la primera en ser implementada a gran escala. IPv4 usa direcciones de 32 bits,
limitándola a 2^{32} = 4.294.967.296 direcciones únicas, muchas de las cuales
están dedicadas a redes locales (LANs).
Detalle de una
dirección IPv4, expresada en notación decimal separada por puntos.
Formas de representar
una IPv4:
Desperdicio de direcciones IP
Uno de los principales
es que inicialmente no se consideró el enorme crecimiento que iba a tener
Internet; se asignaron bloques de direcciones grandes (de 16,271 millones de
direcciones) a países, e incluso a empresas.
Otro motivo de
desperdicio es que en la mayoría de las redes, exceptuando las más pequeñas,
resulta conveniente dividir la red en subredes. Dentro de cada subred, la
primera y la última dirección no son utilizables; de todos modos no siempre se
utilizan todas las direcciones restantes. Por ejemplo, si en una subred se
quieren acomodar 80 hosts, se necesita una subred de 128 direcciones (se tiene
que redondear a la siguiente potencia de base 2); en este ejemplo, las 48
direcciones restantes ya no se utilizan.
IPv4
Es la versión más
extendida. Una IP de ese tipo tiene una forma como esta:
212.150.67.158
Suele escribirse así
por una cuestión práctica y de facilidad de lectura. Como cuatro números
decimales, que pueden variar cada uno entre 0 y 255, separados por puntos.
Los equipos
informáticos trabajan en realidad con bits. 1 bit puede tener sólo dos valores.
O cero o uno. Los bits sirven para definir estados como encendido o apagado,
verdadero o falso, más o menos, etc. Así funcionan internamente los equipos y
sus programas.
Cada número de la IPv4
representa 8 bits. O lo que es lo mismo, 1 byte. Por tanto están formadas en
total por 32 bits o 4 bytes (4 grupos de 8 bits cada uno, 4 x 8=32).
Hay otra versión de IP
que está en crecimiento y que es la alternativa del futuro. Se llama...
IPv6
Surgió porque el IPv4
estaba "quedándose corto". Empezaban a acabarse las IPs para
identificar a los miles de millones de equipos y dispositivos de las redes
mundiales e Internet.
El IPv6 asigna 128
bits a cada IP en vez de sólo 32 como el IPv4. Eso aumenta (muchísimo) el
número de IPs disponibles. Pasan de "sólo" 232 a 2128. ¿Cuánto es eso
en un número "normal"?
-Nº aproximado de IPs únicas del
IPv4:
4.300.000.000
-Nº que permite el IPv6:
340.282.366.920.938.463.463.374.607.431.768.211.456
La
diferencia queda clara. Es un valor suficiente para poder asignar trillones de
IPs a cada habitante del planeta y todos los dispositivos que tenga.
Una ilustración de una
dirección IP (versión 6), en hexadecimal y binario.
Hay varias formas de
escribir una IPv6:
Notación
completa
Tiene este aspecto:
2A03:2880:2110:CF01:0ACE:0000:0000:0009
Los valores separados por el
símbolo ":" son dos pares de números hexadecimales (por ejemplo,
2A03). Representan a 2 bytes (16 bits).
En total hay 8 grupos de
números hexadecimales. Corresponden a los 128 bits de la IPv6 (8 grupos x 16
bits cada grupo= 128 bits).
Notación
abreviada
Elimina los ceros que están al
principio de cada grupo. Y representa con ": :" el grupo o grupos
consecutivos formado/s sólo por ceros.
La IPv6 anterior quedaría así:
2A03:2880:2110:CF01:ACE::9
Los ceros del sexto y sétimo
grupo se han abreviado como ": :". Y no se escriben los ceros que
estaban al principio del quinto y octavo grupos.
Notación
mixta
Es la menos habitual. Escribe
los últimos 32 bits con el formato del IPv4 y los demás con el del IPv6. Por
ejemplo:
2A03:2880:2110:CF01:0ACE:0000:212.150.67.158
O bien
2A03:2880:2110:CF01:ACE::212.150.67.158
Algunos de los cambios
de IPv4 a IPv6 más relevantes son:
Capacidad extendida de direccionamiento
El interés de los
diseñadores era que direcciones más largas permitiesen una mejor entrega
jerárquica, sistemática y definitiva de las direcciones, y una eficiente
agregación de rutas. Con IPv4, se desplegaron complejas técnicas de Classless
Interdomain Routing (CIDR) para utilizar de mejor manera el pequeño espacio de
direcciones. El esfuerzo requerido para reasignar la numeración de una red
existente con prefijos de rutas distintos es muy grande, como se discute en RFC
2071 y RFC 2072. Sin embargo, con IPv6, cambiando el prefijo anunciado por unos
pocos routers es posible en principio reasignar la numeración de toda la red,
ya que los identificadores de nodos (los 64 bits menos significativos de la
dirección) pueden ser auto-configurados independientemente por un nodo.
El tamaño de una
subred en IPv6 es de 264 (máscara de subred de 64-bit), el cuadrado del tamaño
de la Internet IPv4 entera. Así, las tasas de utilización del espacio de
direcciones será probablemente menor en IPv6, pero la administración de las
redes y el ruteo serán más eficientes debido a las decisiones de diseño
inherentes al mayor tamaño de las subredes y la agregación jerárquica de rutas.
Autoconfiguración de direcciones libres de
estado (SLAAC)
Los nodos IPv6 pueden
configurarse a sí mismos automáticamente cuando son conectados a una red
ruteada en IPv6 usando los mensajes de descubrimiento de routers de ICMPv6. La
primera vez que son conectados a una red, el nodo envía una solicitud de router
de link-local usando multicast (router solicitación) pidiendo los parámetros de
configuración; y si los routers están configurados para esto, responderán este
requerimiento con un "anuncio de router" (router advertisement) que
contiene los parámetros de configuración de capa de red.
Si la
autoconfiguración de direcciones libres de estado no es adecuada para una
aplicación, es posible utilizar Dynamic Host Configuration Protocol para IPv6
(DHCPv6) o bien los nodos pueden ser configurados en forma estática.
Los routers presentan
un caso especial de requerimientos para la configuración de direcciones, ya que
muchas veces son la fuente para información de autoconfiguración, como anuncios
de prefijos de red y anuncios de router. La configuración sin estado para routers
se logra con un protocolo especial de renumeración de routers.
Multicast
Multicast, la
habilidad de enviar un paquete único a destinos múltiples es parte de la
especificación base de IPv6. Esto es diferente a IPv4, donde es opcional
(aunque usualmente implementado).
IPv6 no implementa
broadcast, que es la habilidad de enviar un paquete a todos los nodos del
enlace conectado. El mismo efecto puede lograrse enviando un paquete al grupo
de multicast de enlace-local todos los nodos (all hosts). Por lo tanto, no
existe el concepto de una dirección de broadcast y así la dirección más alta de
la red (la dirección de broadcast en una red IPv4) es considerada una dirección
normal en IPv6.
Muchos ambientes no
tienen, sin embargo, configuradas sus redes para rutear paquetes multicast, por
lo que en éstas será posible hacer "multicasting" en la red local,
pero no necesariamente en forma global.
El multicast IPv6
comparte protocolos y características comunes con IPv4, pero también incorpora
cambios y mejoras. Incluso cuando se le asigne a una organización el más
pequeño de los prefijos de ruteo global IPv6, ésta también recibe la
posibilidad de usar uno de los 4.2 billones de grupos multicast IPv6 ruteables
de fuente específica para asignarlos para aplicaciones multicast intra-dominio
o entre-dominios (RFC 3306). En IPv4 era muy difícil para una organización
conseguir incluso un único grupo multicast ruteable entre-dominios y la
implementación de las soluciones entre-dominios eran anticuadas (RFC 2908).
IPv6 también soporta nuevas soluciones multicast, incluyendo Embedded
Rendezvous Point (RFC 3956), el que simplifica el despliegue de soluciones
entre dominios.
Seguridad de Nivel de Red obligatoria
Internet Protocol
Security (IPsec), el protocolo para cifrado y autenticación IP forma parte
integral del protocolo base en IPv6. El soporte IPsec es obligatorio en IPv6; a
diferencia de IPv4, donde es opcional o fue un agregado posterior (pero
usualmente implementado). Sin embargo, actualmente no se está usando
normalmente IPsec excepto para asegurar el tráfico entre routers de BGP IPv6,
aunque también se puede utilizar en OSPFv3 y en movilidad IPv6 (ver Movilidad
IPv6)
Procesamiento simplificado en los routers
Se hicieron varias
simplificaciones en la cabecera de los paquetes, así como en el proceso de
reenvío de paquetes para hacer el procesamiento de los paquetes más simple y
por ello más eficiente. En concreto,
·
El
encabezado del paquete en IPv6 es más simple que el utilizado en IPv4, así los
campos que son raramente utilizados han sido movidos a opciones separadas; en
efecto, aunque las direcciones en IPv6 son 4 veces más largas, el encabezado
IPv6 (sin opciones) es solamente el doble de largo que el encabezado IPv4 (sin
opciones).
·
Los
routers IPv6 no hacen fragmentación. Los nodos IPv6 requieren ya sea hacer
descubrimiento de MTU, realizar fragmentación extremo a extremo o enviar
paquetes menores al MTU mínimo de IPv6 de 1280 bytes.
·
El
encabezado IPv6 no está protegido por una suma de comprobación (checksum); la
protección de integridad se asume asegurada tanto por el checksum de capa de
enlace y por un checksum de nivel superior (TCP, UDP, etc.). En efecto, los
routers IPv6 no necesitan recalcular la suma de comprobación cada vez que algún
campo del encabezado (como el contador de saltos o Tiempo de Vida) cambian.
Esta mejora puede ser menos necesaria en routers que utilizan hardware dedicado
para computar este cálculo y así pueden hacerlo a velocidad de línea
(wirespeed), pero es relevante para routers por software.
·
El campo
Tiempo de Vida de IPv4, conocido como TTL (Time To Live), pasa a llamarse
Límite de saltos, reflejando el hecho de que ya no se espera que los routers
computen el tiempo en segundos que tarda en atravesarlo (que en cualquier caso
siempre resulta menor de 1 segundo). Se simplifica como el número de saltos
entre routers que se permita realizar al paquete IPv6.
No hay comentarios:
Publicar un comentario