Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP INSTITUTO TECNOLÓGICO DE EDUCACIÓN SUPERIOR “SABIO NACIONAL ANTÚNEZ DE MAYOLO” Grupo de educación superior Con resolución ministerial Nº 0271-92-ED PRESENTACION DE TRABAJO PRÁCTICO DE: MONOGRAFÍA DE “Protocolo de Internet versión 6 (TCP/IPv6)” 1. Qué es? Y como va ser la ipv6? Cusco - Perú 2011 www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 1 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP DATOS DEl ALUMNO Alumno : Hilario Guzman Puma Carrera profesional : Computación e Informática Semestre académico : 2011-II Ciclo : VI Curso de : Administración de Centros de Computo Centro de Apoyo : Cusco Docente : Wenceslao Ccorimanya García Frecuencia : Domingos Coordinador : Ing. Richard J. Bustamante Fecha de entrega : 06 de noviembre de 2011 www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 2 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP PRESENTACION El presente trabajo ha sido realizado en el marco de un proyecto de enseñanza del sexto ciclo de la carrera profesional de Computación e Informática, por lo cual cumplo con poner a vuestra disposición el presente trabajo practico de Protocolo versión IPv6 del curo de Administración de centros de computo donde se brinda la información necesaria para iniciar y contribuyéndose en una insustituible herramienta de estudio. Se inicia el desarrollo de Ventas y Mercadotecnia con la descripción de sus principales conceptos y terminología fundamentales y luego se explica el desarrollo de una estructura. La asignatura consiste en familiarizar al estudiante con conocimientos. En este ciclo que curso pongo en disposición de todos este trabajo elaborado de Protocolo versión IPv6 En el cual ansiado elaborada por quien ha ejecutado este trabajo de Administración de centros de cómputo para esto se repasa en forma general la estructura. Por otro lado quiero agradecer la enseñanza de La INSTITUCION TELESUP con el propósito de contribuir en la formación académica y desarrollo profesional del alumno. www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 3 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP DEDICATORIA Quiero dedicarle este trabajo A Dios que me ha dado la vida y fortaleza para terminar este proyecto de investigación, A mis Padres por estar ahí cuando más los necesité; en especial a mi madre por su ayuda y constante cooperación y A mi hermano Ismael por apoyarme y ayudarme en los momentos más difíciles. Muchas Gracias, Hilario Guzman P. www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 4 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP INDICE GENERAL 1. Introducción a IPv6 2. ¿Qué es el IPv6? 3. ¿Por qué surge? 4. Características principales 5. ¿Qué tan grande es el espacio de direcciones? 6. Direccionamiento 7. Representación de las direcciones 8. Representación de los prefijos de las direcciones 9. Direcciones Global Unicast 10. DNS 11. Mecanismos de transición básicos 12. Dual Stack 13. Tunneling 14. Qué es? Y como va ser la ipv6? A. Direccionamiento B. Notación de la IPv6 C. Paquete de IPv6 D. Cabeceras de expansión de IPv6 i. Cabecera principal ii. Cabecera de opciones iii. Cabecera de encaminamiento iv. Cabecera de autentificación v. Entre otros A. Mecanismo de transición a IPv6 B. Direccionamiento de IPv6 ampliamente I. Clase A II. Clase B III. Clase C IV. Clase D V. Clase E 15. Conclusión 16. Bibliografía A. Se distinguen tres tipos de direcciones IPv6 B. Las direcciones únicas especiales definidas en IPv6 C. Descubrimiento de nodos vecinos D. Transición de IPv4 a IPv6 E. Los objetivos del foro IPv6 son los enumerados a continuación F. Características principales de IPv6 www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 5 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP Introduccio n a IPv6 En esta entrada me limitaré a presentar información sobre los conceptos necesarios para entender las entradas que se publicarán más adelante. Si en cualquier momento necesitáis más información sobre el protocolo, podéis encontrarla fácilmente en Internet en multitud de sitios donde se explica el protocolo en profundidad. Todo apunta a que IPv6 podría empezar a desplegarse en breve en diferentes entornos, sobre todo debido al reciente agotamiento del rango de direcciones públicas IPv4 por parte de IANA. Es posible que con la ayuda de los fabricantes, las distintas operadoras comiencen pronto a usar este protocolo en entornos residenciales. Siendo así, no sería raro que dentro de unos meses comenzaran a distribuirse routers ADSL a los clientes con soporte IPv6 y que comenzara a asignarse direcciones públicas (o rangos de direcciones) IPv6 a estos clientes para aprovisionar sus conexiones. Otro entorno donde puede irrumpir pronto IPv6, es la red LAN de cualquier empresa o cualquier centro universitario que decida en un determinado momento, comenzar a implementar este protocolo. Antes o después, IPv6 acabará desplazando a IPv4, o al menos, esa es la idea. De hecho, hoy en día, multitud de equipos ya soportan IPv6 para sus comunicaciones. Si vosotros mismos utilizáis un sistema operativo basado en Linux, es posible que ya tengáis una interfaz enviando tráfico IPv6. Y si utilizáis Windows Vista o Windows 7, en ese caso, vuestro equipo ya tiene soporte para IPv6 y estará enviando tráfico IPv6 aunque no lo sepáis. www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 6 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP ¿Qué es el IPv6? IPv6 (Internet Protocol Version 6) o IPng (Next Generation Internet Protocol) es la nueva versión del protocolo IP (Internet Protocol). Ha sido diseñado por el IETF (Internet Engineering Task Force) para reemplazar en forma gradual a la versión actual, el IPv4. En esta versión se mantuvieron las funciones del IPv4 que son utilizadas, las que no son utilizadas o se usan con poca frecuencia, se quitaron o se hicieron opcionales, agregándose nuevas características. ¿Por qué surge? El motivo básico para crear un nuevo protocolo fue la falta de direcciones. IPv4 tiene un espacio de direcciones de 32 bits, en cambio IPv6 ofrece un espacio de 128 bits. El reducido espacio de direcciones de IPv4, junto al hecho de falta de coordinación para su asignación durante la década de los 80, sin ningún tipo de optimización, dejando incluso espacios de direcciones discontinuos, generan en la actualidad, dificultades no previstas en aquel momento. Otros de los problemas de IPv4 es la gran dimensión de las tablas de ruteo en el backbone de Internet, que lo hace ineficaz y perjudica los tiempos de respuesta. Debido a la multitud de nuevas aplicaciones en las que IPv4 es utilizado, ha sido necesario agregar nuevas funcionalidades al protocolo básico, aspectos que no fueron contemplados en el análisis inicial de IPv4, lo que genera complicaciones en su escalabilidad para nuevos requerimientos y en el uso simultáneo de dos o más de dichas funcionalidades. Entre las mas conocidas se pueden mencionar medidas para permitir la Calidad de Servicio (QoS), Seguridad (IPsec) y movilidad. Características principales Mayor espacio de direcciones. El tamaño de las direcciones IP cambia de 32 bits a 128 bits, para soportar: mas niveles de jerarquías de direccionamiento y mas nodos direccionables. Simplificación del formato del Header. Algunos campos del header IPv4 se quitan o se hacen opcionales Paquetes IP eficientes y extensibles, sin que haya fragmentación en los routers, alineados a 64 bits y con una cabecera de longitud fija, mas simple, que agiliza su procesado por parte del router. Posibilidad de paquetes con carga útil (datos) de mas de 65.355 bytes. Seguridad en el núcleo del protocolo (IPsec). El soporte de IPsec es un requerimiento del protocolo IPv6. Capacidad de etiquetas de flujo. Puede ser usada por un nodo origen para etiquetar paquetes pertenecientes a un flujo (flow) de tráfico particular, que requieren manejo especial por los routers IPv6, tal como calidad de servicio no por defecto o servicios de tiempo real. Por ejemplo video conferencia. Autoconfiguración: la autoconfiguración de direcciones es mas simple. Especialmente en direcciones Aggregatable Global Unicast, los 64 bits superiores son seteados por un mensaje desde el router (Router Advertisement) y los 64 bits mas bajos son seteados con la dirección MAC (en formato EUI-64). En este caso, el largo del prefijo de la subred es 64, por lo que no hay que preocuparse mas por la máscara de red. Además el largo del prefijo no depende en el número de los hosts por lo tanto la asignación es mas simple. Renumeración y "multihoming": facilitando el cambio de proveedor de servicios. Características de movilidad, la posibilidad de que un nodo mantenga la misma dirección IP, a pesar de su movilidad. www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 7 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP Ruteo más eficiente en el backbone de la red, debido a la jerarquía de direccionamiento basada en aggregation. Calidad de servicio (QoS) y clase de servicio (CoS). Capacidades de autenticación y privacidad ¿Qué tan grande es el espacio de direcciones Habrían 2 ^ 128 direcciones IP diferentes, significa que si la población mundial fuera de 10 billones habría 3.4 * 10 ^ 27 direcciones por persona. O visto de otra forma habría un promedio de 2.2 * 10 ^ 20 direcciones por centímetro cuadrado. Siendo así muy pequeña la posibilidad de que se agoten las nuevas direcciones. Direccionamiento Las direcciones son de 128 bits e identifican interfaces individuales o conjuntos de interfaces. Al igual que en IPv4 en los nodos se asignan a interfaces. Se clasifican en tres tipos: Unicast identifican a una sola interfaz. Un paquete enviado a una dirección unicast es entregado sólo a la interfaz identificada con dicha dirección. [RFC 2373] [RFC 2374] Anycast identifican a un conjunto de interfaces. Un paquete enviado a una dirección anycast, será entregado a alguna de las interfaces identificadas con la dirección del conjunto al cual pertenece esa dirección anycast. [RFC 2526] Multicast identifican un grupo de interfaces. Cuando un paquete es enviado a una dirección multicast es entregado a todos las interfaces del grupo identificadas con esa dirección. En el IPv6 no existen direcciones broadcast, su funcionalidad ha sido mejorada por las direcciones multicast. [RFC 2375] Representación de las direcciones Existen tres formas de representar las direcciones IPv6 como strings de texto. x:x:x:x:x:x:x:x donde cada x es el valor hexadecimal de 16 bits, de cada uno de los 8 campos que definen la dirección. No es necesario escribir los ceros a la izquierda de cada campo, pero al menos debe existir un número en cada campo. Ejemplos: FEDC:BA98:7654:3210:FEDC:BA98:7654:3210 1080:0:0:0:8:800:200C:417A Como será común utilizar esquemas de direccionamiento con largas cadenas de bits en cero, existe la posibilidad de usar sintacticamente :: para representarlos.El uso de :: indica uno o mas grupos de 16 bits de ceros. Dicho simbolo podrá aparecer una sola vez en cada dirección. www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 8 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP Por ejemplo: 1080:0:0:0:8:800:200C:417A unicast address FF01:0:0:0:0:0:0:101 multicast address 0:0:0:0:0:0:0:1 loopback address 0:0:0:0:0:0:0:0 unspecified addresses podrán ser representadas como: 1080::8:800:200C:417A FF01::101 ::1 :: unicast address multicast address loopback address unspecified addresses Para escenarios con nodos IPv4 e IPv6 es posible utilizar la siguiente sintaxis: x:x:x:x:x:x:d.d.d.d, donde x representan valores hexadecimales de las seis partes más significativas (de 16 bits cada una) que componen la dirección y las d, son valores decimales de los 4 partes menos significativas (de 8 bits cada una), de la representación estándar del formato de direcciones IPv4. Ejemplos: 0:0:0:0:0:0:13.1.68.3 0:0:0:0:0:FFFF:129.144.52.38 o en la forma comprimida ::13.1.68.3 ::FFFF:129.144.52.38 Representación de los prefijos de las direcciones Los prefijos de identificadores de subredes, routers y rangos de direcciones IPv6 son expresados de la misma forma que en la notación CIDR utilizada en IPv4. Un prefijo de dirección IPv6 se representa con la siguiente notación: direccion-ipv6/longitud-prefijo, donde direccion-ipv6: es una dirección IPv6 en cualquiera de las notaciones mencionadas anteriormente. longitud-prefijo: es un valor decimal que especifica cuantos de los bits más significativos, representan el prefijo de la dirección. Direcciones Global Unicast Formato de las direcciones global unicast www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 9 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP Prefijo de ruteo global: es un prefijo asignado a un sitio, generalmente está estructurado jerárquicamente por los RIRs e ISPs. Identificador de Subred: es el identificador de una subred dentro de un sitio. Está diseñado para que los administradores de los sitios lo estructuren jerárquicamente Identificador de Interfaz: es el identificador de una interfaz. En todas las direcciones unicast, excepto las que comienzan con el valor binario 000, el identificador de interfaz debe ser de 64 bits y estar construído en el formato Modified EUI-64. El formato para este caso es el siguiente: El siguiente es un ejemplo del formato de direcciones global unicast bajo el prefijo 2000::/3 administrado por el IANA La asignación del espacio de direcciones IPv6 global unicast está accesible en IPV6 GLOBAL UNICAST ADDRESS ASSIGNMENTS DNS El almacenamiento actual de direcciones de Internet en el Domain Name System (DNS) de IPv4 no se puede extender fácilmente para que soporte direcciones IPv6 de 128 bits, ya que las aplicaciones asumen que a las consultas de direcciones se retornan solamente direcciones IPv4 de 32 bits. Para poder almacenar las direcciones IPv6 se definieron las siguientes extensiones (ver RFC 3596) un nuevo tipo de registro, el registro AAAA. Se usa para almacenar direcciones IPv6, porque las extensiones están diseñadas para ser compatibles con implementaciones de DNS existentes; un nuevo dominio para soportar búsquedas basadas en direcciones IPv6. Este dominio es IP6.ARPA; Redefinición de las consultas existentes, que localizan direcciones IPv4, para que puedan también procesar direcciones IPv6. Los cambios son diseñados para ser compatibles con el software existente. Se mantiene el soporte de direcciones IPv4. Mecanismos de transición básicos Los mecanismos de transición son un conjunto de mecanismos y de protocolos implementados en hosts y routers, junto con algunas guías operativas de direccionamiento designadas para hacer la transición de Internet al IPv6 con la menor interrupción posible. Existen dos mecanismos básicos : www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 10 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP Dual Stack: provee soporte completo para IPv4 e IPv6 en host y routers. Tunneling: encapsula paquetes IPv6 dentro de headers IPv4 siendo transportados a través de infraestructura de ruteo IPv4. Dichos mecanismos están diseñados para ser usados por hosts y routers IPv6 que necesitan interoperar con hosts IPv4 y utilizar infraestructuras de ruteo IPv4. Se espera que muchos nodos necesitarán compatibilidad por mucho tiempo y quizás indefinidamente. No obstante, IPv6 también puede ser usado en ambientes donde no se requiere interoperabilidad con IPv4. Nodos diseñados para esos ambientes no necesitan usar ni implementar estos mecanismos. Dual Stack La forma mas directa para los nodos IPv6 de ser compatibles con nodos IPv4-only es proveyendo una implementación completa de IPv4. Los nodos IPv6 que proveen una implementación completa de IPv4 (además de su implementación de IPv6) son llamados nodos “IPv6/IPv4”. Estos nodos tienen la habilidad de enviar y recibir paquetes IPv6 e IPv4, pudiendo así interoperar directamente con nodos IPv4 usando paquetes IPv4, y también operar con nodos IPv6 usando paquetes IPv6. Tunneling Los nodos o redes IPv6 que se encuentran separadas por infraestructuras IPv4 pueden construir un enlace virtual, configurando un túnel. Paquetes IPv6 que van hacia un dominio IPv6 serán encapsulados dentro de paquetes IPv4. Los extremos del túnel son dos direcciones IPv4 y dos IPv6. Se pueden utilizar dos tipos de túneles: configurados y automáticos. Los túneles configurados son creados mediante configuración manual. Un ejemplo de redes conteniendo túneles configurados es el 6bone. Los túneles automáticos no necesitan configuración manual. Los extremos se determinan automáticamente determinados usando direcciones IPv6 IPv4-compatible. www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 11 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP Qué és? Y como va sér la ipv6? Las direcciones IP, aquellas que identifican a un dispositivo cuando se conecta a la Red y permiten su acceso, están en vías de extinción. La Organización para la Cooperación y Desarrollo Económico (OCDE) alerta a los gobiernos sobre el peligro del retraso mundial en la adopción de la versión 6 de direcciones IP (iPv6). Si no se abandona el protocolo iPv4 y se migra a la nueva versión, el sistema de direcciones de internet se agotará y en el año 2011 habrá un colapso en la Red. El paso al iPv6 permitiría disponer de unos 340 sextillones de direcciones La OCDE lo advierte en un documento que ha preparado para la cumbre de ministros que abordará el futuro de internet que tendrá lugar en Seúl (Corea) los próximos 17 y 18 de junio. El periódico ABC recoge en su edición de hoy, que datos de este mismo mes indican que “en todo el mundo ya están cogidas el 85 por ciento de los cerca de 4.300 millones de direcciones IP que permite el protocolo de internet en uso (IPv4)”. Si a esto le sumamos que cada vez son más los dispositivos existentes a disposición del usuario con capacidad de conectarse a la Red, como móviles, PDAs, reproductores MP3, etc. el panorama no pinta muy alentador que se diga. La solución La solución al problema: migrar al protocolo iPv6. El IPv4 usa direcciones de 32 bits y tiene capacidad para generar unos 4.294 millones de direcciones únicas. El paso al iPv6, cuyas direcciones tienen una longitud de 128 bits, permitiría disponer de unos 340 sextillones de direcciones, según explica El País.com. El iPv6 ya se aplica en la Red y convive con el IPv4, pero su implantación es muy lenta. La OCDE pide a los Gobiernos que aceleren la implantación del nuevo protocolo. www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 12 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP DIRECCIONAMIENTO El cambio más grande de IPv4 a IPv6 es la longitud de las direcciones de red. Las direcciones IPv6, definidas en el RFC 2373 y RFC 2374, son de 128 bits; esto corresponde a 32 dígitos hexadecimales, que se utilizan normalmente para escribir las direcciones IPv6, como se describe en la siguiente sección. - El número de direcciones IPv6 posibles es de 2128 ≈ 3.4 x 1038. Este número puede también representarse como 1632, con 32 dígitos hexadecimales, cada uno de los cuales puede tomar 16 valores (véase combinatoria). El número de direcciones IPv6 posibles es de 2128 ≈ 3.4 x 1038. Este número puede también representarse como 1632, con 32 dígitos hexadecimales, cada uno de los cuales puede tomar 16 valores (véase combinatoria). www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 13 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP - En muchas ocasiones las direcciones IPv6 están compuestas por dos partes lógicas: un prefijo de 64 bits y otra parte de 64 bits que corresponde al identificador de interfaz, que casi siempre se genera automáticamente a partir de la dirección MAC de la interfaz a la que está asignada la dirección. NOTACION DE LA IPV6 - Las direcciones IPv6, de 128 bits de longitud, se escriben como ocho grupos de cuatro dígitos hexadecimales. - Por ejemplo, - 2001:0db8:85a3:08d3:1319:8a2e:0370:7334 - es una dirección IPv6 válida. - Si un grupo de cuatro dígitos es nulo (es decir, toma el valor "0000", puede ser comprimido. Por ejemplo, - 2001:0db8:85a3:0000:1319:8a2e:0370:7344 - es la misma dirección que - 2001:0db8:85a3::1319:8a2e:0370:7344 - -Siguiendo esta regla, si más de dos grupos consecutivos son nulos, pueden comprimirse como "::". 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. Así, - 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 - son todas válidas y significan lo mismo, pero - 2001::25de::cade - no es válido porque no queda claro cuántos grupos nulos hay en cada lado. - Los ceros iniciales en un grupo pueden ser omitidos. Así, - 2001:0DB8:02de::0e13 www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 14 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP - es lo mismo que - 2001B8:2de::e13 FFF: Si la dirección es una dirección IPv4 camuflada, los últimos 32 bits pueden escribirse en base decimal; así, - ffff:192.168.89.9 es lo mismo que - ffff:c0a8:5909, pero no lo mismo que - 192.168.89.9 ó - c0a8:5909. - El formato ::ffff:1.2.3.4 se denomina dirección IPv4 mapeada, y el formato ::1.2.3.4 dirección IPv4 compatible. - Las direcciones IPv4 pueden ser transformadas fácilmente al formato IPv6. Por ejemplo, si la dirección decimal IPv4 es 135.75.43.52 (en hexadecimal, 0x874B2B34), puede ser convertida a 0000:0000:0000:0000:0000:0000:874B:2B34 o ::874B:2B34. Entonces, uno puede usar la notación mixta dirección IPv4 compatible, en cuyo caso la dirección debería ser ::135.75.43.52. Este tipo de dirección IPv4 compatible casi no está siendo utilizada en la práctica, aunque los estándares no la han declarado obsoleta. PAQUETE DE IPV6 Un paquete en IPv6 está compuesto principalmente de dos partes: la cabecera y los datos. - La cabecera está en los primeros 40 bytes del paquete y contiene las direcciones de origen y destino (128 bits cada una), la versión de IP (4 bits), la clase de tráfico (8 bits, Prioridad del Paquete), etiqueta de flujo (20 bits, manejo de la Calidad de Servicio), longitud del campo de datos (16 bits), cabecera siguiente (8 bits), y límite de saltos (8 bits, Tiempo de Vida). Después viene el campo de datos, con los datos que transporta el paquete, que puede llegar a 64k de tamaño en el modo normal, o más con la opción "jumbo payload". - Hay dos versiones de IPv6 levemente diferentes. La ahora obsoleta versión inicial, descrita en el RFC 1883, difiere de la actual versión propuesta de estándar, descrita en el RFC 2460, en dos campos: 4 bits han sido reasignados desde "etiqueta de flujo" (flow label) a "clase de tráfico" (traffic class). El resto de diferencias son menores. - En IPv6 la fragmentación se realiza sólo en el nodo origen del paquete, al contrario que en IPv4 en donde los routers pueden fragmentar un paquete. En IPv6, las opciones también se salen de la cabecera estándar y son especificadas por www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 15 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP el campo "Cabecera Siguiente" (Next Header), similar en funcionalidad en IPv4 al campo Protocolo. Un ejemplo: en IPv4 uno añadiría la opción "ruta fijada desde origen" (Strict Source and Record Routing) a la cabecera IPv4 si quiere forzar una cierta ruta para el paquete, pero en IPv6 uno modificaría el campo "Cabecera Siguiente" indicando que una cabecera de encaminamiento es la siguiente en venir. La cabecera de encaminamiento podrá entonces especificar la información adicional de encaminamiento para el paquete, e indicar que, por ejemplo, la cabecera TCP será la siguiente. Este procedimiento es análogo al de AH y ESP en IPsec para IPv4 (que aplica a IPv6 de igual modo, por supuesto). CABECERAS DE EXTENCION DE IPV6 - El uso de un formato flexible de cabeceras de extensión opcionales es una idea innovadora que permite ir añadiendo funcionalidades de forma paulatina. Este diseño aporta gran eficacia y flexibilidad ya que se pueden definir en cualquier momento a medida que se vayan necesitando entre la cabecera fija y la carga útil. - - Hasta el momento, existen 8 tipos de cabeceras de extensión, donde la cabecera fija y las de extensión opcionales incluyen el campo de cabecera siguiente que identifica el tipo de cabeceras de extensión que viene a continuación o el identificador del protocolo de nivel superior. Luego las cabeceras de extensión se van encadenando utilizando el campo de cabecera siguiente que aparece tanto en la cabecera fija como en cada una de las citadas cabeceras de extensión. Como resultado de la secuencia anterior, dichas cabeceras de extensión se tienen que procesar en el mismo orden en el que aparecen en el datagrama. Todas o parte de estas cabeceras de extensión tienen que ubicarse en el datagrama en el orden especificado: - 1. Cabecera principal, tiene el contrario que la cabecera de la versión IPv4 un tamaño fijo de 40 octetos. - 2. Cabecera de opciones de salto a salto (Hop-by-Hop), transporta información opcional, contiene los datos que deben ser examinado por cada nodo (cualquier sistema con IPv6) a través de la ruta de envío de un paquete. Su código es 0. - 3. Cabecera de encaminamiento (Routing), se utiliza para que un origen IPv6 indique uno o más nodos intermedios que se han de visitar en el camino del paquete hacia el destino. El código que utiliza es 43. - 4. Encaminamiento desde la fuente. - 5. Cabecera de fragmentación (Fragment), hace posible que el origen envíe un paquete más grande de lo que cabría en la MTU de la ruta (unidad máxima de transferencia). Hay que tener en cuenta que al contrario que en IPv4, en IPv6 la fragmentación de un paquete solo se puede realizar en los nodos de origen. El código empleado en esta cabecera es 44. - 6. Cabecera de autenticación (Authentication Header), nos sirve para proveer servicios de integridad de datos, autenticación del origen de los datos, antireplay para IP. El código de esta cabecera es 51. - 7. Cabecera de encapsulado de seguridad de la carga útil (Encapsulating Security Payload), permiten proveer servicios de integridad de datos. El código al que hace referencia esta cabecera es el 50. - 8. Cabecera de opciones para el destino (Destination), se usa para llevar información opcional que necesita ser examinada solamente por los nodos destino del paquete. La última de las cabeceras utiliza el código 60 - Cada cabecera de extensión debe aparecer como mucho una sola vez, salvo la cabecera de opción destino, que puede aparecer como mucho dos veces, una antes de la cabecera encaminamiento y otra antes de la cabecera de la capa superior. MECANISMO DE TRANSICION A IPV6 www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 16 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP Ante el agotamiento de las direcciones IPv4, el cambio a IPv6 ya ha comenzado. Durante 20 años se espera que convivan ambos protocolos y que la implantación de IPv6 sea paulatina. Existe una serie de mecanismos que permitirán la convivencia y la migración progresiva tanto de las redes como de los equipos de usuario. En general, los mecanismos de transición pueden clasificarse en tres grupos: * Pila dual * Túneles * Traducción - La pila dual hace referencia a una solución de nivel IP con pila dual (RFC 2893), que implementa las pilas de ambos protocolos, IPv4 e IPv6, en cada nodo de la red. Cada nodo de pila dual en la red tendrá dos direcciones de red, una IPv4 y otra IPv6. * Pros: Fácil de desplegar y extensamente soportado. * Contras: La topología de red requiere dos tablas de encaminamiento y dos procesos de encaminamiento. Cada nodo en la red necesita tener actualizadas las dos pilas. Los túneles permiten conectarse a redes IPv6 "saltando" sobre redes IPv4. Estos túneles trabajan encapsulando los paquetes IPv6 en paquetes IPv4 teniendo como siguiente capa IP el protocolo número 41, y de ahí el nombre proto-41. De esta manera, los paquetes IPv6 pueden ser enviados sobre una infraestructura IPv4. Hay muchas tecnologías de túneles disponibles. La principal diferencia está en el método que usan los nodos encapsuladores para determinar la dirección a la salida del túnel. - La traducción es necesaria cuando un nodo solo IPv4 intenta comunicar con un nodo solo IPv6. Los mecanismos de traducción pueden ser divididos en dos grupos basándonos en si la información de estado está guardada: * * Con estado: Sin NAT-PT[1], estado: TCP-UDP Relay[2], Bump-in-the-Stack, Socks-based Gateway[3] Bump-in-the-API[4] - Actualmente el protocolo IPv6 está soportado en la mayoría de los sistemas operativos modernos, en algunos casos como una opción de instalación. Linux, Solaris, Mac OS, NetBSD, OpenBSD, FreeBSD, Windows (2000, XP y VISTA www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 17 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP de forma nativa) y Symbian (dispositivos móviles) son sólo algunos de los sistemas operativos que pueden funcionar con IPv6. DIRECIONAMIENTO DE IPV6 AMPLIAMENTE: Recordemos que las direcciones IP, tienen una longitud de 32 bits. Los bits se dividen en dos campos: * * El campo de El campo subred, que identifica de sistema, que la subred a identifica al la que equipo está conectado el dentro de la sistema. subred. La representación de las direcciones IPv4 sigue el esquema x.x.x.x, donde x es un valor decimal de 8 bits, es decir, puede tomar el valor 0-255. Un ejemplo de dirección IP es 136.255.151.252. En función de la longitud de los campos de subred y de sistema de la dirección IP, se distinguen cinco tipos básicos de direcciones, esquematizados en la Tabla 1: * Clase A. El primer bit más significativo es 0. El número total de bits dedicados a la red es de 7, con lo cual se tienen hasta 128 redes, en cada una de las cuales puede haber hasta más de 16 millones de servidores diferentes. Los propietarios típicos de estas direcciones son grandes compañías o países enteros, como por ejemplo IBM o Japón. * Clase B. Los dos primeros bits son 10. El número de bits dedicados a la red es de 14, con lo cual se tienen hasta unas 16.000 redes, en cada una de las cuales puede haber hasta más de 65.000 servidores diferentes. Los www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 18 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP propietarios de este tipo de redes son grandes compañías, como por ejemplo Ericsson. * Clase C. Los tres primeros bits son 110. El número total de bits dedicados a la dirección de red es de 22, con lo cual se tienen hasta casi 2 millones de redes, con hasta 255 servidores diferentes en cada una de ellas. Los propietarios son compañías medianas o pequeñas. * Clase D. Los cuatro primeros bits son 1110. Se utilizan para el multicasting, es decir, para tráfico de datos con varios destinatarios (videoconferencias, noticias de radio a través de Internet, etc.). * Clase E. Los cuatro primeros bits son 1111. Se utiliza con fines experimentales. Clase Redes Hosts Primer octeto A 128 16 millones 0-127 B 16.000 65.000 128-191 C 2 millones 255 192-223 D multicasting - 224-239 Tabla 1: Esquema de las clases de direcciones IP. Las redes pueden ser divididas en redes más pequeñas de carácter local, denominadas subredes, a través de un proceso conocido como subnetting. El subnetting proporciona al administrador varios beneficios, como una flexibilidad adicional, un uso más eficiente de las direcciones de red, y la capacidad de soportar tráfico de broadcast (el tráfico de broadcast nunca atraviesa los routers). La subred es creada tomando parte de los bits correspondientes al campo de servidor, denotándolos por campo de subred. El número de bits varía y viene especificado por la máscara de subred. El enmascaramiento de subred aislada asigna un 1 binario a los bits que pertenecen a la parte de red y un 0 binario a los bits que pertenecen a la parte de la dirección local. Por ejemplo, la máscara de subred para la clase C es 255.255.255.0 sin subnetting, pero si consideramos 5 bits para subredes, la máscara de subred será 255.255.255.248; tendremos por lo tanto, 25-2=30 subredes posibles, con 23-2=6 servidores por subred, pues las direcciones de subred y de sistema con todos los bits a 0 o 1 son direcciones reservadas. La máscara de subred local será utilizada por los routers aplicando una operación and lógica sobre los paquetes que reciben, con el fin de encaminar en función de la dirección de red. El concepto contrario al subnetting es el supernetting o CIDR (Classless Inter-Domain Routing). Debido a la pocos niveles de jerarquía de las direcciones, que sólo consideran una parte de subred y otra de sistema, las tablas de encaminamiento de las redes troncales de Internet han crecido enormemente, reduciendo la eficiencia de los routers. El supernetting divide las direcciones, en bloques de tamaño variable. Las direcciones en IPv6, descritas en la RFC 2373, soportan un número de bits que cuadriplica al utilizado por las de IPv4. Así, mientras el espacio de direccionamiento total en IPv4 es de 232 (4.294.967.296), en IPv6 lo es de 2128 (340.282.366.920.938.463.463.374. 607.431.768.211.456). Para hacerse una idea del tremendo espacio de direcciones disponible, se suele indicar que esto supone, en un sentido teórico, 665.570.793.348.866.943.898.599 direcciones por metro cuadrado de la superficie del planeta Tierra (asumiendo que la superficie de la Tierra tiene 511.263.971.197.990 metros cuadrados). www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 19 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP Las direcciones IPv6 de 128 bits identifican interfaces individuales o grupos de interfaces. Las direcciones IPv6, cualquiera que sea el tipo, se asignan a las interfaces, no a los nodos. Puesto que cada interfaz pertenece a un único nodo, cualquiera de las direcciones de interfaces unicast de ese nodo podrían ser utilizadas como un identificador del nodo. Una única interfaz puede tener múltiples direcciones IPv6 de cualquier tipo; por ejemplo una interfaz podría tener una dirección unicast, otra anycast, y otra multicast simultáneamente. Se distinguen tres tipos de direcciones en IPv6: * Unicast. Las direcciones unicast identifican a una única interfaz, es decir, un paquete enviado a una dirección unicast será entregado sólo a la interfaz identificada con dicha dirección. Es el equivalente a las direcciones IPv4 actuales. * Anycast. Las direcciones anycast identifican un grupo de interfaces, de forma que un paquete enviado a una dirección anycast será entregado a un miembro cualquiera del grupo, siendo generalmente el más cercano según la distancia asignada en el protocolo de encaminamiento. * Multicast. Las direcciones multicast identifican, al igual que las anycast, a un grupo de interfaces, pero un paquete enviado a una dirección multicast, es enviado a todas las interfaces del grupo. Las direcciones de broadcast no existen en IPv6, su misión ha sido suplantada por las direcciones multicast. La representación de las direcciones IPv6 sigue el esquema x:x:x:x:x:x:x:x, donde x es un valor hexadecimal de 16 bits. No es preciso escribir los 0s a la izquierda de cada campo y, puesto que además pueden existir varias cadenas de 0s, se permite la escritura de su abreviación mediante el uso de “::”, el cual representa múltiples grupos de 16 bits a 0 binario. Por ejemplo, la dirección 0:0:0:0:0:0:0:0000000000000001, puede escribirse como ::1. No obstante, de tener una dirección del tipo 0:0:0:1:0:0:0:1, sólo puede ser abreviada como ::1:0:0:0:1 o 0:0:0:1::1; pues de hacerlo como ::1::1, podría ser confundida con otras direcciones, por ejemplo con la 0:0:1:0:0:0:0:1. El tipo específico de dirección IPv6 viene indicado por los primeros bits de la dirección. Este campo de longitud variable es denominado prefijo y permite conocer dónde está conectado un determinado nodo, es decir, su ruta de www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 20 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP encaminamiento. La dirección IPv6 se compone, por consiguiente, de un prefijo seguido de un identificador de nodo. En IPv6 se ha reservado (que no asignado) algo más del 15% del espacio de direccionamiento para permitir una fácil transición del resto de protocolos y para el desarrollo de los propios mecanismos del protocolo, como podemos ver en la Tabla 2. El 85% se ha dejado para un uso futuro. Como vemos, la estructura de direcciones de IPv6 ha sido diseñada para soportar las direcciones, como IPX o NSAP. De esta forma se facilita la migración de otros protocolos a IPv6. Estado Prefijo (en binario) Fracción del espacio Reservado 0000 0000 1/256 Reservado para NSAP 0000 0001 1/256 Reservado para IPX 0000 001 1/128 No asignado 0000 010 1/128 No asignado 0000 1 1/32 No asignado 001 1/8 Direcciones unicast globales agregables basadas en el proveedor 010 1/8 No asignado 101 1/8 No asignado 110 1/8 No asignado 1110 1/16 No asignado 1111 0 1/32 No asignado 1111 10 1/64 No asignado 1111 110 1/128 No asignado 1111 1110 0 1/512 Direccions unicast locales de enlace 1111 1110 10 1/1.024 Direcciones unicast locales de sitio 1111 1110 11 1/1.024 Direcciones multicast 1111 1111 1/256 Tabla 2: Prefijos. Las direcciones unicast globales agregables basadas en el proveedor, son utilizadas para comunicaciones globales en todo Internet. Estas direcciones son semejantes a las direcciones IPv4 utilizando CIDR. Los tres primeros bits, correspondientes al prefijo son 101. El resto de la dirección la forman los siguientes campos, de longitud variable hasta hacer un total de 128 bits: www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 21 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP * Campo de registro, que identifica a la entidad de Internet de que asigna los identificadores a los proveedores de servicios. * Campo de proveedor, que identifica a un determinado proveedor de servicios, el cual asigna parte de su espacio de direccionamiento a sus subscriptores. * Campo de subscriptor, que diferencia a los distintos subscriptores conectados a Internet a través de un mismo proveedor de servicio. * Campo de subred, que especifica una grupo de nodos físicamente conectados en la red del subscriptor. * Campo de interfaz, que caracteriza a una interfaz de entre todas las conectadas a una determinada subred. Las direcciones unicast de uso local son direcciones que sólo tienen un ámbito de encaminamiento local, es decir, dentro de una red local o dentro de la red de una única compañía, y que podrían ser únicas local o globalmente. Se han definido dos tipos de direcciones locales: * Direcciones locales de enlace. Son para ser utilizadas en un único enlace, con propósitos tales como la autoconfiguración de la dirección. Por ello, los routers no pueden retransmitir ningún paquete con direcciones locales de enlace en el origen o el destino. Tienen el prefijo 1111 1110 10, luego tiene un campo de bits 0, y finalmente el campo que identifica a la interfaz. * Direcciones locales de sitio. Son para ser utilizados en un único sitio, sin la necesidad de un prefijo global. Por ello, los routers no pueden retransmitir ningún paquete con direcciones locales de sitio en el origen o el destino fuera del sitio local u organización. Tienen el prefijo 1111 1110 11, luego un campo de bits a 0, un campo con el identificador de subred, y finalmente el identificador de interfaz. En ambos tipos de direcciones locales el identificador de interfaz es un identificador que debe ser único en el dominio en el cual está siendo usado. En la mayoría de los casos este identificador utilizará la dirección IEEE 802 de 48 bits de ese nodo, por ejemplo, en el caso de una red Ethernet se utilizará la dirección MAC. La subred, para el caso de las direcciones locales de sitio, identifica una red determinada del sitio local u organización. www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 22 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP Las direcciones de uso local permiten a las organizaciones que aún no se han conectado a Internet, operar sin la necesidad de solicitar un prefijo de dirección del espacio global de direcciones de Internet. Si la organización se incorpora más adelante a Internet, puede utilizar el identificador de subred y de interfaz en combinación con un prefijo global (es decir, un identificador de registro, otro de proveedor y otro de subscriptor) para crear una dirección global. Esto supone una mejora significativa respecto a IPv4, pues requiere que los sitios que utilizan direcciones IPv4 privadas (no globales) se renumeren manualmente cuando se conectan a Internet. IPv6 hace la renumeración automáticamente. www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 23 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP Las direcciones unicast especiales definidas en IPv6 son: www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 24 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP * Dirección de autoretorno o loopback. Es la ::1. No debe ser asignada a una interfaz física, pues se trata de una interfaz virtual. Se utiliza para pruebas y comunicaciones dentro de un mismo nodo. En IPv4 es cualquier tipo de dirección que comience por 127 en el primer octeto. * Dirección no especificada. Es la ::. No debe ser asignada a ningún nodo, pues indica ausencia de dirección. Por ejemplo, se haya en el campo de dirección fuente, indica que el nodo está iniciándose y todavía no sabe cuál es su dirección. * Direcciones IPv6 compatibles con IPv4. Son utilizadas en un mecanismo de transición de IPv4 a IPv6 conocido por túneles dinámicos/automáticos, que consiste básicamente en el envío de paquetes IPv6 sobre infraestructura de encaminamiento IPv4 de forma totalmente transparente, mediante el encapsulamiento del paquete IPv6 en un paquete IPv4. El formato de estas direcciones consiste en los primeros 96 bits a 0, y los otros 32 con la dirección IPv4. * Direcciones IPv6 proyectadas desde IPv4. Son utilizadas para representar las direcciones IPv4 en los nodos que sólo soportan IPv4, como direcciones IPv6. Es decir, permiten que los nodos que sólo soportan IPv4, puedan seguir trabajando en IPv6. El formato de estas direcciones consiste en los primeros 80 bits a 0, los siguientes 16 bits a 1, y los últimos 32 bits con la dirección IPv4. Las direcciones anycast, descritas en la RFC 2526, utilizan cualquiera de los formatos de direcciones definidos para las direcciones unicast. De esta forma, las direcciones anycast son sintácticamente indistinguibles de las direcciones unicast. Cuando una dirección unicast es asignada a más de una interfaz, convirtiéndose así en una dirección anycast, los nodos a los cuales se les ha asignado esa dirección se deben configurar explícitamente para que sepan que se trata de una dirección anycast. Las direcciones multicast están descritas en la RFC 2375. Tienen un prefijo 1111 1111. Después, tienen un campo de bandera de 4 bits, de los cuales los tres primeros están reservados y deben ser inicializados a 0, el último bit puede estar a 0, lo cual indica una dirección multicast asignada permanentemente, o a 1, si es una dirección multicast asignada transitoriamente. El campo que sigue al de banderas es también de 4 bits y se denomina ámbito; su valor se utiliza para limitar el ámbito del grupo de multicast (global, local de nodo, local de enlace, local de sitio, etc.). Finalmente, el campo de grupo de 112 bits, identifica el grupo de multicast. www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 25 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP Descubrimiento de nodos vecinos El protocolo equivalente (aunque con grandes mejoras y ventajas) en IPv6, al protocolo de resolución de direcciones o ARP en IPv4, es el de descubrimiento de vecinos o ND (Neigbour Discovery), descrito en la RFC 2461. Recordemos que ARP, es un protocolo que utiliza el broadcast para que un nodo pueda obtener la dirección física de otro a partir de su dirección IP. Básicamente, lo que hace el nodo es preguntar a todos los nodos vecinos cuál es la dirección física del nodo de dirección IP con el que quiere comunicarse, respondiéndole sólo el nodo con dicha dirección IP, con un paquete que contiene su dirección física. El protocolo ND utiliza el multicast y es independiente del tipo de enlace físico en cuestión. Se trata de un protocolo bastante complejo y sofisticado, ya que es la base para permitir el mecanismo de autoconfiguración en IPv6. ND emplea los mensajes de ICMPv6 para algunos de sus servicios. Ofrece, entre otros, mecanismos para: descubrir routers, prefijos y otros parámetros, autoconfiguración de direcciones, resolución de direcciones, determinación del siguiente salto, detección de direcciones duplicadas o cambios, redirección, etc. El protocolo ND define cinco tipos de paquetes ICMPv6: www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 26 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP * Solicitud de router (133). Es generado por una interfaz cuando es activada, para pedir a los routers de su red, que se anuncien inmediatamente. * Anunciación de router (134). Es generado por los routers periódicamente (de 4-1.800 segundos) o como respuesta a una solicitud de router, a través de multicast, para informar de su presencia, así como de los parámetros de enlace y de Internet (prefijos, tiempos de vida, configuración de direcciones, tamaño máximo de la unidad de transmisión o MTU, etc.). Es fundamental para permitir la remuneración, con lo cual para las empresas les es muy sencillo cambiar de proveedor de servicios o utilizar varios de forma conjunta. * Solicitud de vecino (135). Es generado por los nodos para determinar la dirección en la capa de enlace de sus vecinos, para verificar que el nodo vecino sigue activo (es alcanzable), o para detectar las direcciones duplicadas. * Anunciación de vecino (136). Es generado por los nodos como respuesta a la solicitud de vecino, o bien para indicar cambios de direcciones en la capa de enlace. * Redirección (137). Es generado por los routers para informar a los servidores de un salto mejor para llegar a un determinado destino. Transición de IPv4 a IPv6 La transición de IPv4 a IPv6 no tendrá lugar de la noche a la mañana. Las dos versiones de IP deberán coexistir durante muchos años. Básicamente, IPv6 puede ser implementado como una actualización software en los nodos IPv4 actuales, comenzando un período de transición para minimizar los costes de nuevos equipos y proteger las fuertes inversiones realizadas. Sin embargo, es difícil saber cuando las operadoras en Internet migrarán a la tecnología IPv6. En la actualidad la gran mayoría de las operadoras utiliza nodos IPv4, y con esta situación, donde casi todo el tráfico debería adaptarse a redes basadas en IPv4, la motivación para el cambio es muy baja. Las nuevas características de autoconfiguración, que hace que las redes IPv6 más fáciles de configurar y mantener que las redes IPv4, pueden ser atractivas para nuevas operadoras que han de realizar un despliegue de infraestructura muy rápido. Por otro lado, para facilitar la migración es importante que las aplicaciones IPv4 existentes sean capaces de operar también con las aplicaciones IPv6; por ejemplo, los navegadores de Internet deben ser capaces de comunicarse utilizando IPv6 e IPv4. El principal problema es, que mientras los sistemas IPv6 son compatibles hacia atrás, es decir, pueden enviar, encaminar y recibir paquetes IPv4, los sistemas IPv4 actuales no son capaces de manejar paquetes IPv6. Lo ideal sería declarar unos días de inactividad, durante los cuales todas las máquinas de Internet serán desactivadas, y se migraría de IPv4 a IPv6. No obstante, una tarea así, con millones de máquinas y de administradores de redes implicados, es prácticamente imposible. Seguidamente se presentan las dos principales opciones (que pueden trabajar de forma aislada o conjunta), descritas en la RFC 1993, que hay para solventar esta limitación. La primera opción es introducir una doble pila completa de protocolos, IPv4 e IPv6, en los nodos IPv6. De esta forma, este nodo IPv6/IPv4 puede enviar y recibir paquetes IPv6 e IPv4. Cuando trabaje con un nodo IPv4, el nodo IPv6/IPv4 puede utilizar paquetes IPv4; cuando trabaje con un nodo IPv6, puede utilizar paquetes IPv6. Los nodos IPv6/IPv4 deben tener tanto direcciones IPv6 como IPv4. Deben de ser capaces también de descubrir si otro nodo es capaz de utilizar IPv6 o sólo IPv4. Esto se puede conseguir utilizando el protocolo de resolución de nombres de dominio o DNS, que puede devolver una dirección IPv6 si el nombre del nodo que se está resolviendo es capaz de utilizar IPv6, o bien una dirección IPv4 en caso contrario. Por supuesto, si el nodo que hace la petición DNS únicamente puede utilizar IPv4, DNS devolverá sólo una dirección IPv4. Según este método, si cualquiera de los nodos intermedios sólo puede operar con IPv4, se deben utilizar paquetes IPv4. Por ello, es posible que la comunicación entre dos nodos extremos IPv6, tenga lugar con paquetes IPv4. Lo que se hace es que ambos extremos envían paquetes IPv6, pero cuando estos lleguen a un nodo IPv4, todo el paquete IPv6 será encapsulado en el campo de datos del paquete IPv4 y se llevará a cabo una correspondencia de direcciones, perdiendo la información relevante de los campos de la cabecera IPv6. www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 27 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP La segunda opción es utilizar túneles. Esto permitiría que los nodos extremos IPv6 se comuniquen siempre en IPv6, aunque haya nodos intermedios IPv4. Se considera un túnel a todos los nodos IPv4 entre dos nodos IPv6. Utilizando esta técnica, el nodo IPv6 que hace frontera con el túnel, toma el paquete IPv6, y lo pone en el campo de datos de un paquete IPv4. Este paquete IPv4 tiene como dirección de destino el nodo IPv6 en la parte final del túnel y es enviado al primer nodo IPv4 que conforma el túnel. Los nodos IPv4 del túnel encaminan el paquete, sin tener constancia de que el paquete IPv4 que están manejando contiene un paquete IPv6. Cuando este paquete llega al extremo receptor IPv6 del túnel, que es precisamente el destino del paquete, éste determina que el paquete IPv4 contiene un paquete IPv6, extrae el paquete IPv6 y lo encamina exactamente del mismo modo que si hubiera recibido el paquete IPv6 de un nodo IPv4 vecino. Foro IPv6 Los principales organismos encargados de desarrollar y estandarizar la tecnología de Internet son cuatro: * ISOC (Internet Society). Sociedad profesional para facilitar, soportar y promover la evolución y crecimiento de Internet como una infraestructura global de investigación en comunicaciones. * IAB (Internet Architecture Board). Cuerpo de coordinación y supervisión técnica dependiente de la ISOC, compuesto por unos quince voluntarios internacionales de varias disciplinas. * IETF (Internet Engineering Task Force). Cuerpo de la IAB, coordinado por la IESG (Internet Engineering Steering Group), encargado del desarrollo de las especificaciones que se convertirán en estándares. Se compone de unos veinte grupos de trabajo, cada uno tratando un problema específico. * IRTF (Internet Research Task Force). Cuerpo de la IAB, encargado de la investigación a largo plazo, sin división en áreas. Es coordinado por la IRSG (Internet Research Steering Group). www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 28 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP Por otro lado, el Foro IPv6 es un consorcio internacional sin ánimo de lucro creado en el año 1999, que está formado por las principales instituciones de investigación y desarrollo, universidades, y consultoras y proveedores de infraestructura de telecomunicaciones. Su misión es promover el uso de IPv6 en el mercado para crear la próxima generación de Internet, de mayor calidad y más segura, apoyando la estandarización y desarrollo estable de este protocolo, y fomentando su conocimiento. Los objetivos del Foro IPv6 son los enumerados a continuación: * Establecer un foro internacional y abierto de experiencia en IPv6. * Compartir conocimientos y experiencias entre sus miembros. * Promover el desarrollo de nuevas aplicaciones y soluciones globales basadas en IPv6. * Promover la interoperabilidad entre las implementaciones normalizadas. * Cooperar para alcanzar calidades de servicio extremo a extremo. * Resolver problemas que creen barreras para el uso de IPv6. Como vemos, el Foro IPv6 no tiene por fin desarrollar los estándares de IPv6, pues sólo la IETF, con la que trabaja estrechamente, tiene autoridad sobre ellos. Además, el Foro IPv6 mantiene sus puertas abiertas a acuerdos con otras instituciones o foros industriales, habiendo establecido, por ejemplo, importantes acuerdos de colaboración con el Foro UMTS. En el Sitio Web del Foro IPv6, cuya página de inicio se muestra en la Figura 3, se puede conseguir información detallada sobre sus actividades, estándares, y el protocolo IPv6 en general. Limitaciones de IPv4 Son muchas las cuestiones que debían ser consideradas en el diseño de IPv6. Por ejemplo, el nuevo protocolo debía ser capaz de soportar grandes redes y ofrecer un sencillo y rápido mecanismo de migración para la base de sistemas IPv4 instalados. En efecto, uno de los problemas de IPv4, es la gran dimensión de las tablas de encaminamiento en la red troncal de Internet, que la hace ineficaz y perjudica considerablemente los tiempos de respuesta. En IPv6 el encaminamiento en la red troncal es más eficiente, debido a una jerarquía de direccionaminento basada en la agregación y a que la fragmentación y defragmentación de los paquetes se realiza extremo a extremo. www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 29 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP Sin embargo, la principal razón que originó la necesidad de IPv6, fue la evidencia de falta de direcciones, derivada del crecimiento de la red Internet, con ritmos superiores al 100% anual. El límite en el espacio de direccionamiento fue agravado además por la falta de coordinación en la delegación de direcciones durante los años 1980s, dejando incluso grandes espacios discontinuos. En IPv6 el espacio de direcciones se incrementa de 32 a 128 bits, soportando más niveles de jerarquías de direccionamiento, un mayor número de nodos direccionables y la autoconfiguración de las direcciones. Se mejora además el direccionamiento multicast y se define el direccionamiento anycast. No obstante, la falta de direcciones no es igual en todos los puntos de la red; por ejemplo, es casi inapreciable por el momento en Norteamérica, pero en zonas como en Europa y Asia, la situación es crítica. Además, este problema es creciente, debido principalmente al tremendo desarrollo de la telefónica móvil celular y la inminente aparición comercial de la tercera generación de comunicaciones móviles o UMTS (Universal Mobile Telecommunications System). Los móviles se convertirán en dispositivos siempre conectados a Internet y será necesario asignarlos una dirección IP fija y única. El mismo Foro UMTS prevé unas necesidades de direcciones IP, de 20.000.000.000 para los dispositivos de los usuarios y de 3.200.000 para los dispositivos de red, en el año 2005. La solución adoptada por los proveedores de servicios Internet para solventar los problemas de disponibilidad de direcciones IP, ha sido proporcionar a sus clientes direcciones IP privadas, es decir no reconocidas en Internet, mediante mecanismos de traslación de direcciones o NAT (Network Address Translation). Es decir, se usa una sola dirección IP pública para toda una red privada. No obstante, este mecanismo no puede utilizarse en los terminales móviles y, además, muchas aplicaciones son incapaces de ser utilizadas mediante este tipo de direcciones, especialmente las relacionadas con la autentificación y la seguridad de las comunicaciones. www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 30 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP Pero además, IPv4 presenta otros problemas o dificultades que la nueva versión soluciona o mejora. Por ejemplo, IPv4 no está preparado para soportar las nuevas aplicaciones de la red Internet como la transmisión de vídeo y audio en tiempo real, ni mecanismos de seguridad avanzada sobre los datos transmitidos. Para reducir el tiempo de procesamiento de los paquetes, se ha simplificado el formato de la cabecera de IPv4 y se ha introducido el concepto de flujo, consiguiendo que los routers, además de encaminar, puedan conmutar algunos de los paquetes que procesan. Por otro lado, se ha mejorado el mecanismo de codificación de los campos optativos en la cabecera, dando una mayor flexibilidad para la introducción de nuevas opciones futuras. Finalmente, IPv6 ha mejorado las capacidades de autentificación y privacidad de los datos transmitidos. De esta forma, en IPv6 una cabecera de autentificación garantiza que un paquete procede del origen que realmente se indica, mientras que en IPv4 el paquete podría venir de un origen distinto al indicado en la cabecera. Como resumen, podemos afirmar que aunque el funcionamiento del protocolo IP ha sido totalmente satisfactorio, las razones que propiciaron la aparición de IPv6 han sido: * El sorprendente crecimiento del número de direcciones IP en uso. * La necesidad de transmitir aplicaciones en tiempo real. * La necesidad de mecanismos de seguridad. Características principales de IPv6 Como se ha comentado, IPv6 fue diseñado como una evolución natural a IPv4. Es decir, todo lo que funcionaba perfectamente en IPv4 se ha mantenido, lo que no funcionaba se ha eliminado, y se ha tratado de añadir nuevas funciones manteniendo la compatibilidad entre ambos protocolos. Las características principales de IPv6 son: * Mayor espacio de direcciones. * Optimización del direccionamiento multicast y aparición del direccionamiento anycast. * Autoconfiguración de los nodos. * Seguridad intrínseca en el núcleo del protocolo. * Calidad de servicio y clases de servicios. * Paquetes eficientes y extensibles. * Encaminamiento más eficiente en la red troncal. * Renumeración y multihoming, que facilita el cambio de proveedor de servicios. * Características de movilidad. www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 31 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP Cabecera de IPv6 La cabecera de IPv6, descrita principalmente en la RFC 2460, elimina o hace opcionales varios campos de la cabecera de IPv4, consiguiendo una cabecera de tamaño fijo y más simple, con el fin de reducir el tiempo de procesamiento de los paquetes manejados y limitar el coste en ancho de banda de la cabecera de IPv6. Cabecera de IPv4 Figura 1: Cabecera de IPv4. www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 32 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP La cabecera de IPv4, mostrada en la Figura 1, tiene una longitud variable mínima de 20 octetos. El bit más significante se numera por 0 a la izquierda, y el menos significante se numera por 31 a la derecha. La forma de transmitir los diferentes bytes, sigue el orden conocido por big endian, es decir, de izquierda a derecha y de arriba abajo según la estructura presentada en la Figura 1. La cabecera consiste en los siguientes campos: * Versión (4 bits). Es el número de versión de IP, es decir, 4. * Cabecera (4 bits). Especifica la longitud total de la cabecera en palabras de 32 bits. El valor mínimo y más común es de 5, siendo la longitud de cabecera mínima. Puesto que el campo es de 4 bits, se limita la longitud total de la cabecera a 60 bytes. * Tipo de servicio (8 bits). Indica la calidad de servicio solicitada por el paquete IP. De los 8 bits, actualmente sólo se utilizan 4, indicando cada uno de ellos: conseguir el retardo mínimo, maximizar caudal, maximizar la fiabilidad, y minimizar el coste monetario. Sólo uno de estos cuatro bits puede estar a 1. Su uso viene descrito en la RFC 1340 y RFC 1349. * Longitud total (16 bits). Especifica el tamaño total del paquete, incluyendo la cabecera y los datos, en bytes. * Identificador (16 bits). Es un número único asignado por el dispositivo que envía el paquete, con el fin de que el destinatario pueda reensamblar un paquete fragmentado por los nodos intermedios. Recordemos que la fragmentación es necesaria porque no todas las redes físicas tienen la misma longitud de trama máxima, por lo cual en muchos casos es necesario que los nodos intermedios dividan el datagrama en varios fragmentos. Cada uno de estos fragmentos podrá seguir rutas distintas al resto y, de perderse alguno de los fragmentos, el origen deberá retransmitir el paquete completo. * Banderas (3 bits). Es un campo para el control de la fragmentación. El primer bit no es utilizado y está siempre puesto a 0. Si el segundo bit es 0, significa que puede haber fragmentación, y si es 1, significa que no puede haber fragmentación. Si el tercer bit es 0, indica que es el último fragmento, y si es 1, indica que aún hay más fragmentos. * Desplazamiento del fragmento (13 bits). Es utilizado en los paquetes que han sido fragmentados, para posibilitar el reensamblado total del paquete. Su valor indica el número de bloques de 8 bytes (sin contabilizar los bytes de la cabecera) que estaban contenidos en los fragmentos previos. En el primer fragmento, o en un único fragmento, este valor es siempre 0. Tiempo de vida (8 bits). Contiene el tiempo máximo que un paquete puede permanecer en una red. Cada dispositivo por el que pasa el paquete decrementa el valor de este campo en el tiempo que tarda en procesar la cabecera IP, siendo 1 el valor mínimo. Si el valor llega a 0, el paquete es descartado. Esto garantiza que los paquetes no viajan a través de una red haciendo bucles, incluso si las tablas de encaminamiento son erróneas. * Protocolo (8 bits). Indica al protocolo de nivel superior al que IP deberá pasar los datos del paquete. Por ejemplo, UDP es 17 y TCP es 6. * Control de errores de la cabecera (16 bits). Es un campo para controlar los errores únicamente en la cabecera IP, exceptuando este campo. * Dirección origen (32 bits). Es la dirección del origen del paquete. * Dirección destino (32 bits). Es la dirección del destino del paquete. * Opciones (variable). No son requeridas en todos los paquetes. Cabecera de IPv6 Figura 2: Cabecera de IPv6. www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 33 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP La cabecera básica de IPv6, mostrada en la Figura 2, tiene una longitud fija de 40 octetos, consistiendo en los siguientes campos: * Versión (4 bits). Es el número de versión de IP, es decir, 6. * Clase de tráfico (8 bits). El valor de este campo especifica la clase de tráfico. Los valores de 0-7 están definidos para tráfico de datos con control de la congestión, y de 8-15 para tráfico de vídeo y audio sin control de la congestión. * Etiqueta del flujo (20 bits). El estándar IPv6 define un flujo como una secuencia de paquetes enviados desde un origen específico a un destino específico. Un flujo se identifica únicamente por la combinación de una dirección fuente y una etiqueta de 20 bits. De este modo, la fuente asigna la misma etiqueta a todos los paquetes que forman parte del mismo flujo. La utilización de esta etiqueta, que identifica una camino a lo largo de la red, posibilita encaminar conmutar en vez de encaminar. Su uso viene descrito en la RFC 1809. * Longitud del paquete (16 bits). Especifica el tamaño total del paquete, incluyendo la cabecera y los datos, en bytes. Es necesario porque también hay campos opcionales en la cabecera. * Siguiente cabecera (8 bits). Indica el tipo de cabecera que sigue a la cabecera fija de IPv6, por ejemplo, una cabecera TCP/UDP, ICMPv6 o una cabecera IPv6 opcional. * Límite de saltos (8 bits). Es el número de saltos máximo que le quedan al paquete. El límite de saltos es establecido a un valor máximo por el origen y decrementado en 1 cada vez que un nodo encamina el paquete. Si el límite de saltos es decrementado y toma el valor 0, el paquete es descartado. * Dirección origen (128 bits). Es la dirección del origen del paquete. * Dirección destino (128 bits). Es la dirección del destino del paquete. Como podemos observar, de los 12 campos de la cabecera de IPv4 se ha pasado a 8 campos en IPv6. El motivo fundamental por el que estos campos (tipo de servicio, indicadores, identificación y control de errores) son eliminados, es la innecesaria redundancia; en IPv4 se está facilitando la misma información de diversas formas, como es el caso del campo de control de errores, pues otros mecanismos de encapsulado de capas inferiores, por ejemplo IEEE 802, ya realizan esta función. El campo de desplazamiento de fragmentación de IPv4 ha sido eliminado, porque los paquetes ya no son fragmentados en los nodos intermedios, en IPv6 es un proceso que se produce extremo a extremo. El único campo realmente nuevo en IPv6 es la etiqueta de flujo. La información opcional a la estrictamente necesaria para encaminar los paquetes de datos, es codificada en cabeceras adicionales que pueden ubicarse entre la cabecera IPv6 y las cabeceras de niveles superiores, como por ejemplo la cabecera TCP/UDP. En la actualidad, hay un pequeño número de tales cabeceras de extensión (opciones de salto por salto, encaminamiento extendido, fragmentación y reensamblado, opciones del destino, autentificación, y encapsulación) estando cada una identificada por un valor distinto del valor del campo siguiente cabecera. Cada paquete IPv6 puede llevar cero, una, o más cabeceras de extensión, cada una identificada por el valor del campo siguiente cabecera de la cabecera que la precede. Las cabeceras de extensión deben de ser procesadas en orden, ya que el contenido y semántica de cada una de ellas indican si se debe o no procesar la siguiente cabecera. www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 34 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP De esta forma, las cabeceras de extensión no son examinadas o procesadas por los nodos intermedios, sólo cuando lleguen al nodo que venga identificado por el campo de dirección de destino de la cabecera IPv6. La única excepción es la cabecera de opciones de salto por salto, que lleva información que debe ser procesada y examinada en todos los nodos por los que pasa el paquete, incluyendo los nodos origen y destino. La cabecera de opciones de salto por salto, cuando esté presente, debe seguir inmediatamente a la cabecera IPv6. Su presencia se indica por el valor 0 en el campo de siguiente cabecera de la cabecera IPv6. Cada cabecera de extensión tiene una longitud múltiplo entero de 8 octetos, con el fin de mantener el alineamiento de 8 octetos en las cabeceras siguientes. La razón de que los distintos campos de la cabecera estén alineados a 64 bits, es que la nueva generación de procesadores, de 64 bits, puedan procesar dichos campos más eficientemente. Resumiendo, las principales mejoras que ofrece la cabecera IPv6 son: * Cabecera de tamaño fijo, de 40 bytes. * Eliminación de campos redundantes en la cabecera, haciendo un total de 8. * Cabecera básica y de extensión alineadas a un múltiplo entero de 64 bits. * Procesamiento eficiente de las opciones, sólo en destino y cuando éstas se presentan. * Fragmentación procesada en el origen y el destino de los paquetes, no en los routers. www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 35 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 36 Protocolo de Internet versión 6 (TCP/IPv6) – TELESUP CONCLUSIONES IPV6 aporta soluciones a los problemas de crecimiento de Internet. Incorpora funcionalidades que mejoran su comportamiento en aspectos de seguridad y configuración. De acuerdo a los descrito anteriormente, se puede concluir que una de las grandes diferencias entre el actual protocolo usado (IPv4) con IPv6, es en la cantidad de combinaciones posibles que se pueden obtener. En otras palabras, IPv6, ofrece 2^128 combinaciones, en cambio IPv4, solo 2^32. Esto ampliaría enormemente el espectro de objetos que puedan conectarse a la red, dando asi, un mayor uso a este medio y posiblemente descongestionar otros medios como son las frecuencias de radio. IPv6 ofrece tambien, una notable mejoria en disminuir el congestionamiento de las redes, como tambien disminuir considerablemente el uso de NATs en redes, ya que estos, ayudaban a ampliar las combinaciones posibles en IPv4. Debido a esto, se puede llegar a la conclusion de que el protocolo IPv6 es un gran cambio para la actual estructura y funcionamiento de las Redes actuales. Si bien es cierto, es un proceso largo en el cual, al fin de cuentas, no todos los usuarios actuales de IPv4, podrian beneficiarse a corto plazo de las ventajas que ofrece IPv6, si puede decirse que el hecho de que este cambio este en proceso es una gran avanze para el desarollo y desempeño global a futuro. BIBIOGRAFIA [1]IPv6 Interoperabilidad y robustez, Moreno Cervantes Axel Ernesto, [visitado el 05-11/2009], Disponible en http://www.cs.cinvestav.mx/Estudiantes/TesisGraduados/2004/tesisAxelErnesto.pdf [2] Introducción e Historia Del Ipv6, [visitado el 05-11/2009], Disponible en http://www.robotiker.com/revista/articulo.do;jsessionid=05FB53A3E791BA9E9F19A730B2269D8F?method=detalle &id=71 [3] Características principales de IPv6, [visitado el 05-11/2009], Disponible en http://docs.sun.com/app/docs/doc/820-2981/ipv6-overview-8?l=es&a=view [4] Cuadro comparativo ipv4 ipv6, [visitado el 05-11/2009], Disponible en http://www.toodoc.com/cuadrocomparativo-ipv4-ipv6-ebook.html [5] Direcciones y direccionamiento IPv6, [visitado el 05-11/2009], Disponible en http://people.fluidsignal.com/~luferbu/docs/Direccionamiento-IPv6.txt [6] Como o cual es la representación de las direcciones IPv6. , [Visitado el 07-11/2009], Disponible en http://technet.microsoft.com/es-es/library/cc784831(WS.10).aspx [7] Representación Compacta de Direcciones IPv6, [visitado el 07-11/2009], Disponible en http://montevideolibre.org/manuales:libros:ipv6:introduccion:a_que_se_parecen_las_direcciones_ipv6 [8] Transmisión De Paquetes Ipv6 Sobre Redes Token Ring Y Fddi, Zambrano Rivas Miguel Antonio, [visitado el 0711/2009], Disponible en http://neutron.ing.ucv.ve/revistae/No8/Miguel%20Zambrano%5CIPv6overTokRingFDDI.htm [9] Especificaciones del Protocolo Internet Versión IPv6, [visitado el 07-11/2009], Disponible en http://www.6sos.net/pdf/introduccion_a_ipv6_v1.pdf [10] Como se representan las direcciones URL en IPv6, [visitado el 07-11/2009], Disponible en http://eduangi.com/tag/ipv6/ [11] ICMP v6, [visitado el 07-11/2009], Disponible en http://worldlingo.com/ma/enwiki/es/ICMPv6/1 [12] DNS IPV6 [visitado el 07-11/2009], Disponible en http://e-articles.info/t/i/2942/l/es/ www.telesup.edu.pe | www.studiocibernautica.ya.st | Autor: Hilario Guzman P. 37