PROTOCOLO DE INTERNET VERSION 6 DIRECCIONAMIENTO IPV6 RED DE INVESTIGACIÓN DE TECNOLOGÍA AVANZADA rita@udistrital.edu.co MANUAL PARA UN PLAN DE DIRECCIONAMIENTO IPV6 1. ESTRUCTURA DE LAS DIRECCIONES IPV6 Las direcciones IPv6 tienen 128 bits de longitud, cuatro veces más que las direcciones IPv4. Estas son escritas de manera diferente. 1.1. Representación de las direcciones IPv6 Una dirección IPv6 consiste en 128 bits, cada bit es un uno o un cero, como una dirección de 128 unos y ceros es bastante ilegible, un formato más conveniente se ha ideado, un formato de representación hexadecimal, que permite una visualización mucho más sencilla y es mucho más fácil de entender para los humanos y a la vez tiene una relación con la representación binaria. Cada dígito en el sistema hexadecimal equivale a 4 bits, por tanto, una dirección de 128 bits, está formada por 128/4 = 32 dígitos hexadecimales. Por ejemplo: 2001:0db8:0000:0000:0000:0000:0000:0001 Puesto que es poco práctico escribir todos esos ceros, algunos se pueden omitir de acuerdo con ciertas convenciones. Los ceros a la izquierda se pueden dejar de escribir para cada grupo de dígitos. El resultado sería entonces: 2001:db8:0:0:0:0:0:1 Una (y sólo una) serie de ceros y los dos puntos se puede abreviar con dos puntos. El resultado ahora es: 2001:db8::1 Las reglas para la representación de las direcciones IPv6 están especificadas en el RFC 59521. 1.2. Prefijos: agrupamiento de direcciones Las direcciones IPv6 se agrupan utilizando el valor binario de la dirección. Esta agrupación se llevó a cabo utilizando un "prefijo". Los prefijos son todas las direcciones que comienzan con la misma serie de bits, similar a un código de área para los números de teléfono (por ejemplo, el prefijo para Colombia es 057). La longitud de las series idénticas se observa después de la dirección, separados por una barra “/”. Por ejemplo el prefijo: 2001:db8::/ 32 Con el prefijo /32 quiere decir los primeros 32 bits binarios más significativos o los primeros 8 dígitos hexadecimales siempre serán iguales para este grupo de direcciones. Esta agrupación de direcciones contiene las direcciones desde: 1 http://tools.ietf.org/html/rfc5952 2001:0db8:0000:0000:0000:0000:0000:0000 Hasta: 2001:0db8:ffff:ffff:ffff:ffff:ffff:ffff El prefijo: 2001:db8:1234::/64 Contiene las direcciones desde: 2001:0db8:1234:0000:0000:0000:0000:0000 Hasta 2001:0db8:1234:0000:ffff:ffff:ffff:ffff No confundirse por los ceros que faltan en 2001: db8: 1234::/64 en lugar de 2001: db8: 1234:0000::/64 Los prefijos que son múltiplos de cuatro bits son más fáciles de trabajar, por lo que cada digito hexadecimal agrupa 4 bits. Los ejemplos son /32, /48, /52, /56, /60 y /64. Si un tiene un valor diferente, esto significa que existen "cortes" a través un dígito hexadecimal, haciendo que el rango de direcciones más difícil de descifrar: 1.1.1. Prefijo no múltiplo de cuatro Si la longitud del prefijo no es un múltiplo de cuatro, la separación binaria se llevará a cabo en el medio de un número hexadecimal. Esto significa que todos los números hexadecimales que empiezan con la misma serie de bits pertenecerán a este prefijo. Por ejemplo el prefijo: 2001:db8::/61 Agrupa todas las direcciones desde: 2001:0db8:0000:0000:0000:0000:0000:0000 Hasta: 2001:0db8:0000:0007:ffff:ffff:ffff:ffff Porque los números hexadecimales de 0 a 7 todos comienzan con el valor binario 0. Por ejemplo, el prefijo: 2001:db8:0:8::/ 61 Agrupa todas las direcciones desde: Hasta: 2001:0db8:0000:000f:ffff:ffff:ffff:ffff Porque los números hexadecimales de 8 a F todos comienzan con el valor binario 1. 1.2. Subredes /64 Las direcciones IPv6 no tienen una estructura fija, como el sistema de clases A/B/C utilizado originalmente en IPv4. Sin embargo, las subredes IPv6 deben ser prefijos /64. Otros tamaños de subred son posibles, pero pueden dejar de funcionar cosas y mecanismos tales como la autoconfiguración de direcciones sin estado. Así que muy pequeñas subredes, como un enlace punto a punto, utilizan el mismo tamaño de bloque de direcciones IPv6 que subredes muy grandes. 1.3. Asignación de bloques de direcciones La recomendación original para la asignación de espacio de direcciones IPv6 a los usuarios finales es como se muestra a continuación2: /48 (65 536 subredes) es el caso general, excepto para suscriptores muy grandes /64 (Una sola subred) cuando se sabe que una y sólo una subred es necesaria por diseño /128 (Una sola dirección) cuando se conoce absolutamente que uno y sólo un dispositivo se va a conectar Sin embargo en el RFC 61773 (también conocido como Mejor Práctica Actual 157) cambia algunas cosas sobre el RFC 3177, y recomienda el uso de un tamaño prefijo de direcciones adaptado a las necesidades del usuario final. También recomienda no dar direcciones individuales. Por ejemplo, un /48 es mucho más de lo que un usuario necesita en su casa, pero un /64 sólo permite una sola subred, que pueden ser limitantes, de pronto no inmediatamente, pero si en el futuro. Así que un /56 o /60 pueden ser más apropiados para los consumidores. En el RFC 6177 es importante errar asignando de más y no errar en asignar muy poco. Así que un /48 debe ser utilizado cuando hay alguna duda sobre si un /56 es suficiente en el largo plazo. Los ISPs tienen libertad para determinar el tamaño de prefijo que brindan a sus clientes de hasta un /48, incluso en el caso de los usuarios domésticos. Los ISPs que son LIRs (Registros de Internet locales) puede obtener un /32, pero los grandes ISPs pueden recibir bloques de direcciones mucho más grandes con prefijos menores, para que puedan utilizar un sub-prefijo dedicado por región o país en el que están activos. En este, se supondrá que su organización se le ha asignado un bloque de direcciones /48, y que se tienen 16 bits (64 - 48) disponible para la asignación de las direcciones a las subredes. Si su situación es diferente, tendrá que adaptar los cálculos de este manual. 2 http://www.ietf.org/rfc/rfc3177.txt 3 http://tools.ietf.org/html/rfc6177 Con base en la información anterior, los primeros 48 bits siempre son fijos. En este documento, usamos 2001: db8: 1234:: /48 como ejemplo. Esto significa que pueden utilizar los prefijos /64 desde: 2001:db8:1234:0000::/64 Hasta 2001:db8:1234:ffff::/64 Se tienen un total de 16 bit para asignar subredes. 1.4. Representación de subdivisiones Como los primeros 48 bits son asignados por un proveedor de servicios y los últimos 64 bits se utilizan dentro de cada subred, el plan de direccionamiento IPv6 es de los bits 49 a 64, quedan entonces 16 bits para subredes. En este manual, vamos a subdividir los 16 bits disponibles en grupos. Se distinguen los siguientes tipos de grupos: • B: bit asignable • L: bit asignado a un lugar • T: bit asignado por tipo La siguiente notación se utiliza para los bits asignados. El orden de las letras aquí no tiene sentido y sólo se utiliza como un ejemplo: 2001:db8:1234 L L L L T T T T B B B B B B B B ::/64 Cada cuadro representa 1 bit. Cuatro cajas representan juntos un dígito hexadecimal en la dirección IPv6. Para el ejemplo anterior, esto produce la siguiente estructura de dirección: 2001:db8:1234:LTBB::/64 Del bit 49 hasta el bit 64 (16 bits) hay: - 4 bits para definir localizaciones (L) (Bogotá, Medellin, sedeA, sedeB, etc.) - 4 bits para definir el tipo de uso (T) (backbone, servidores, redes invitados, etc) - 8 bits para uso alternativo (B). 2. PREPARANDO UN PLAN DE DIRECCIONAMIENTO En la preparación de su plan de direccionamiento IPV6 se tiene que decidir qué sistema utilizar para asignar las direcciones disponibles a las redes de la organización. Hay un número de métodos convenientes para la asignación de direcciones. A continuación se describen los posibles planes de direccionamiento, usando el siguiente ejemplo de red: Figura 1: Ejemplo de red Fuente: (SURFNET, 2013) 2.1. Estructura básica del plan de direccionamiento Como en el protocolo IPv6 hay tantas direcciones disponibles, podemos crear las subredes necesarias que se deseen. Podemos, por ejemplo, asignar las direcciones por tipo de uso o por ubicación o utilizar combinaciones. Por ejemplo, es posible asignar las direcciones primero por tipo de uso y después por ubicación. Una vez que estas subredes se han definido, todavía habrá bits restantes que se pueden asignar a otro propósito. Tomando el ejemplo mencionado anteriormente: 2001:db8:1234 L L L L T T T T B B B B B B B B ::/64 En este ejemplo, 4 bits están asignados a ubicación (L) y 4 bits están asignados a un tipo de uso (T). Como resultado, hay 8 bits restantes (B). A raíz de este plan de direccionamiento, con 4 bits de ubicación, un máximo de 16 lugares pueden ser direccionados, y cada lugar tiene 16 (también 4 bits) tipos de uso asignable. Se dejan 8 bits en total, para un máximo de 256 subredes diferentes para cada combinación de ubicación y tipo de uso. 2.2. Ubicación o tipo de uso Primero tenemos que decidir sobre la conveniencia de utilizar primero la ubicación, y a continuación, utilizar el tipo de uso (por ejemplo, estudiantes, personal, servidores, switches, routers, público, etc), o al revés. La subred que se utilice primero la llamaremos subred primaria. 2.2.1. Ubicación primero Cuando el lugar es la subred primaria, cada edificio, departamento, etc se le asigna un número de direcciones reservados. El énfasis en este caso radica en la optimización de las tablas de enrutamiento. Todas las redes en un solo lugar se agregarán a una única ruta en la tabla de enrutamiento, de forma que la tabla de enrutamiento se mantendrá compacta. 2.2.2. Tipo de uso primero Cuando el tipo de uso es la subred primaria, la optimización de encaminamiento descrita anteriormente no es factible, debido a que los tipos de uso se dividen a través de un número de ubicaciones. Sin embargo, en la práctica esto no será un problema con la mayoría de los routers. La ventaja de agrupar primero todas las subredes utilizando tipo de uso primero es que hace que sea mucho más fácil de implementar una política de seguridad. La mayoría de las políticas de firewall se basan en el tipo de uso y no en la ubicación de la red. Los firewall suelen requerir una política de seguridad por tipo de uso. 2.2.3. Recomendación En general, la recomendación es intentar usar el tipo de uso como discriminador de las subredes principales, porque es la mejor forma de integrar el direccionamiento con los procedimientos y políticas de seguridad que tiene una organización. El uso de la localización como discriminador estaría justificado en casos como: - Cada ubicación quiere tener su propio plan de direccionamiento - Los routers que hay no pueden procesar una gran tabla de rutas, por lo que hay que optimizar el tamaño de esta. 2.3. Determinando el espacio de direcciones requerido para el plan de direccionamiento Ahora se tiene que determinar qué parte de los 16 bits del espacio de direcciones disponibles es necesario para el plan de direccionamiento seleccionado, dependiendo del número de grupos de tipos y lugares que existe. Por tanto, el número de grupos determina cuántos de los 16 bits disponibles deben ser utilizados. Un bit puede contener dos grupos (21 ), 2 bits pueden contener 4 grupos (22 ), etc (ver la tabla). Podemos calcular el número de grupos de la siguiente manera: 1. Primero, determine el número de lugares o tipos de uso dentro de su organización. Contar cada ubicación o utilizar tipo de uso como un solo grupo. 2. Incrementar este número por un grupo (necesario para el backbone y otras infraestructuras). 3. Si usted decide trabajar la subred primaria basada en la ubicación, agregue un grupo adicional para todas las redes que no tienen una ubicación fija. Estas son redes para las VPN y túneles, por ejemplo. 4. Añadir uno o dos grupos para permitir la expansión futura. Para crear un plan de direccionamiento practico, el número de bloques en que se divide el espacio de direcciones debe ser una potencia de 2. Así redondearemos el número de grupos contabilizados en los pasos 1 a 4 para la potencia más cercana a 2. Véase la tabla para el número de bits necesarios para cada posible número de grupos. El resultado es el número de grupos en la subred primaria, ya sea por ubicación o por tipo de uso. Este método se explica usando un número de ejemplos. Bits 1 2 3 4 5 6 7 8 9 10 11 12 Ubicación o Tipo de Uso 2 3-4 5-8 9-16 17-32 33-64 65-128 129-256 257-512 513-1024 1025-2048 2049-4096 Ejemplo 1: Subredes basadas en la ubicación En este ejemplo, definimos los lugares como las subredes primarias. El número de grupos necesarios es entonces el siguiente: • • • • • Número de ubicaciones: Tres grupos Backbone y otras infraestructuras: un grupo Las redes no basadas en la ubicación: un grupo Ubicaciones futuras: Dos grupos Total: Siete grupos La red de ejemplo se muestra a continuación: Figura 2: Direccionamiento con subred primarias por ubicación Fuente: (SURFNET, 2013) Si redondeamos hasta la primera potencia de 2, esto se traduce en ocho subredes. La incorporación de estas subredes primarias en la dirección IPv6 requiere 3 bits (L). Esto se traduce en la siguiente distribución: 2001:db8:1234 L L L B B B B B B B B B B B B B ::/64 Esto deja 13 bits disponibles (B). Ejemplo 2: Subredes basadas en tipo de uso En este ejemplo se definen los tipos de uso como las subredes primarias. El número de grupos necesarios es entonces el siguiente: • Número de tipos de uso (personal, estudiantes, invitados, servidores y VPN): Cinco grupos • Backbone y otras infraestructuras: Un grupo • Tipos de uso del futuro: Cuatro grupos • Total: Diez grupos Esta red de ejemplo aparecería entonces como sigue: Figura 3: Direccionamiento con subredes primarias por tipo de uso Fuente: (SURFNET, 2013) Si redondeamos hasta la primera potencia de 2, esto se traduce en 16 subredes. La incorporación de estas subredes en la dirección IPv6 requiere 4 bits (T) (24 = 16). Esto deja 12 bits disponibles (B). 2001:db8:1234 2.4. T T T T B B B B B B B B B B B B ::/64 Subredes secundarias opcionales Los bits restantes pueden ser utilizados para la numeración de subredes secundarias dentro del plan de direccionamiento seleccionado. Si las subredes primarias están basadas en la localización, múltiples redes se pueden direccionar por ubicación, mientras que si las subredes son basadas por tipo de uso, múltiples redes de estudiantes o redes de servidor se pueden direccionar, por ejemplo. Los bits restantes también se pueden utilizar para combinar subredes por ubicación y tipo de uso. Si la subred se basa en la localización, como en el ejemplo 1, y creamos una subred secundaria basada en el tipo de uso, como en el ejemplo 2, el resultado es el siguiente: 2001:db8:1234 L L L T T T T B B B B B B B B B ::/64 En este plan de la dirección, hay espacio para ocho ubicaciones, cada una con 16 tipos de uso. Dentro de cada tipo de uso, hay otras 512 (29 debido a 9 bits disponibles (B)) subredes secundarias disponibles. Esta combinación de las subredes primaria y secundaria utiliza subredes primarias basadas en la ubicación. Esto hará que sea más fácil optimizar las tablas de enrutamiento, pero va a complicar el diseño de la política de seguridad. Esto es porque las políticas de firewall sólo se pueden aplicar sobre la base de los primeros números de una dirección, y en este ejemplo los bits de la ubicación están para las subredes primarias en el inicio de la dirección, no el tipo de uso. Para facilitar el proceso de diseño para la política de seguridad, la combinación puede ser revertida y colocar la subred primaria basada en tipo de uso, como en el ejemplo 2, y las subredes secundarias basadas en la ubicación, como en el ejemplo 1, el resultado es entonces el siguiente: 2001:db8:1234 T T T T L L L B B B B B B B B B ::/64 En este ejemplo, el tipo de uso va al comienzo de la dirección, por lo que es más fácil de aplicar políticas de firewall por tipo de uso. Dado que el tipo de uso suele ser más relevante para las políticas de seguridad, se recomienda el uso de este sistema. Una vez definido el esquema de direccionamiento, se puede comprobar fácilmente si el número de bits disponibles para las redes secundarias (B) es suficiente para las necesidades de la organización. En el ejemplo del punto anterior, hay 9 bits B, es decir 29 = 512 subredes secundarias. Si el número de bits restantes no es suficiente, esto puede ser compensado en la asignación de las subredes primarias y secundarias. En el ejemplo anterior hemos utilizado 4 bits para los tipos de uso y 3 bits para las ubicaciones. Eso deja a 9 bits, por lo que puede crear 512 redes por cada tipo de uso y lugar. Esto será suficiente en la mayoría de los casos. Sin embargo, puede ser que se requiere 2.048 redes por ubicación, por ejemplo 2048 VPNs. En ese caso, las 512 subredes que permiten los 9 bits B no son suficientes. Esto se puede resolver cambiando la asignación de subredes primarias y secundarias. Sin embargo, la dirección IPv6 será más difícil de descifrar en formato hexadecimal. Otra opción es reservar cuatro grupos dentro de las subredes de tipo para el uso de redes VPN, como se muestra a continuación: 0 1 2 3 4 5 6 7 8 9 Backbone Servidores Uso futuro Uso futuro Personal Estudiantes Invitados Uso futuro VPNs VPNs A B C D E F VPNs VPNs Uso futuro Uso futuro Uso futuro Uso futuro Como se ve en la tabla, se definen 4 tipos de uso iguales (VPNs), de forma que en realidad, para VPNs se tienen 4x512=2048 subredes secundarias, y así se cumple con el requisito expuesto en el ejemplo. 2.5. Legibilidad En el caso contrario de que los bits disponibles para definir las redes secundarias sean más que suficientes, entonces conviene primar la legibilidad de la dirección. Cada dígito hexadecimal en una dirección IPv6 es equivalente a 4 bits. Por la elección de un sistema de asignación basado en múltiplos de 4 bits, cada grupo se corresponden a un dígito en la dirección IPv6. En el ejemplo de esta sección, hemos utilizado 3 bits por ubicación y 4 bits por tipo de uso. Sin embargo, los dígitos hexadecimales de la dirección IPv6 representan cada 4 bits. Así que si la ubicación o tipo de uso sólo necesita dos o tres bits, puede ser útil que sean 4 bits en su lugar, y hacer las direcciones IPv6 más fácil de leer. Por ejemplo: 2001:db8:1234 L L L T T T T B B B B B B B B B ::/64 2001:db8:1234 T T T T L L L B B B B B B B B B ::/64 Cambiarlos respectivamente por: 2001:db8:1234 L L L L T T T B B B B B B B B B ::/64 2001:db8:1234 T T T T L L L L B B B B B B B B ::/64 Los 4 bits L se muestran como un dígito hexadecimal en la dirección IPv6. Los cuatro bits T también se muestran como un dígito hexadecimal. Esto da como resultado las siguientes direcciones IPv6 respectivamente: 2001:db8:1234:LTBB::/ 64 2001:db8:1234:TLBB::/ 64 El uso de este sistema, la ubicación y el tipo de uso puede identificarse fácilmente en la dirección IPv6. 2.6. Flexibilidad para un futuro crecimiento Si el número de lugares y / o tipos de uso puede crecer en formas que son difíciles de predecir en el momento de crear el plan de dirección, puede ser beneficioso mantener los límites entre los diferentes grupos de bits tan flexibles como sea posible. Esto se puede hacer utilizando la estrategia descrita en el RFC 1219 y 3531. Las desventajas de este enfoque es que se requiere un buen conocimiento de la manipulación de bits, y de vez en cuando, ya que los límites entre los campos se mueven, las reglas de firewall. Asumiendo que la ubicación ocupa los bits superiores y el tipo de uso que viene a continuación, un plan de direcciones con límites flexibles puede ser de la siguiente manera: con cinco ubicaciones, tres tipos de uso y dos subredes restantes para uso alternativo. 2001:db8:1234 L L L T T B ::/64 Después de esto, el número de tipos de uso aumenta a cinco, que requiere un tercer bit. Hay espacios libres en el lado izquierdo, por lo que el campo tipo de uso crece en esa dirección: 2001:db8:1234 L L L T T T B ::/64 El número de lugares crece a 50, que requiere seis bits: 2001:db8:1234 L L L L L L T T T B ::/64 El número de tipos de uso crece a 13, que requiere un cuarto bit, que se puede tomar hacia la derecha donde hay más bits restantes: 2001:db8:1234 L L L L L L T T T T B ::/64 Etcétera. Por favor, consulte el RFC 3531 para más información. 2.7. Usando los números de las VLANs Otro enfoque es el uso de números de las VLAN como el número de subred IPv6. En las redes donde la mayoría de las subredes son redes VLAN y por lo tanto ya tiene un número de VLAN, esto simplifica la administración de los números de las VLAN y subredes IPv6, porque ahora sólo un número tendrá que ser administrado. Números de las VLAN tienen 12 bits de tamaño, mientras que los bits de subredes IPv6 son 16 bits (suponiendo un prefijo /48 para la organización). Así que es posible utilizar cualquiera de los siguientes métodos: 2001:db8:1234 V V V V 2001:db8:1234 B B B B V V V V V V V V V V V V V V V V B V B V B B ::/64 V V ::/64 Sin embargo, las direcciones IPv6 se escriben en formato hexadecimal, y los números de VLAN están escritos en decimal. Así que los enfoques anteriores requieren la conversión entre hexadecimal y decimal, dificultando la relación entre los números de las VLAN y las subredes IPv4. Un enfoque preferible es tomar el número de VLAN decimal, y usarlo en lugar del número de subred hexadecimal. Así la VLAN 2783 simplemente se convierte en la subred 2001: db8:1234:2783::/64 . Se debe tener en cuenta que esto deja a los números de subred por encima de 4095, dejando muchos números disponibles para subredes adicionales que no están vinculados a una VLAN. La tabla muestra la numeración decimal y las dos variaciones hexadecimales. VLAN ID 1 12 2783 4094 Decimal 2001:db8:1234:0001::/ 64 2001:db8:1234:0012::/ 64 2001:db8:1234:2783::/ 64 2001:db8:1234:4096::/ 64 Hexadecimal (High) 2001:db8:1234:0010::/ 64 2001:db8:1234:00c0::/ 64 2001:db8:1234:adf0::/ 64 Hexadecimal (High) 2001:db8:1234:0001::/ 64 2001:db8:1234:000c::/ 64 2001:db8:1234:0adf::/ 64 2001:db8:1234:ffe0::/ 64 2001:db8:1234:0ffe::/ 64 En este enfoque, como el tipo de uso y la ubicación no aparecen en la dirección IPv6, no será posible optimizar las políticas de seguridad y las tablas de enrutamiento. Con codificaciones hexadecimales, cuatro bits quedan libres para otros fines, tales como la codificación de la ubicación. 2.8. Direccionamiento para enlaces punto a punto Si se utiliza enlaces punto a punto, utilizando una dirección /64, en algunos casos se pueden presentar problemas en combinación con determinadas configuraciones del router. Algunas veces, las direcciones no utilizadas en el sistema /64 pueden rebotaron por los routers a ambos lados del enlace. Esto coloca una carga no deseada en la red. Podría, por lo tanto, ser práctico en algunos casos, configurar un prefijo mayor que /64 para estos enlaces. Nota: el uso de un tamaño de prefijo de subred que no sea /64 va en contra RFC 4291. Pero si no es / 64, ¿cuál es el tamaño de la subred adecuada para enlaces punto a punto? /127 es posible porque IPv6 no tiene ninguna dirección de broacast. Sin embargo, la dirección de todos los ceros en cada subred es la " dirección anycast todos los routers ", lo que significa que todos los routers deben recibir los paquetes en esa dirección. Algunos fabricantes de routers implementan esta característica, por lo que las subredes /127 trabajan en sus routers. /126 permite que la dirección con todos los ceros quede excluida. Sin embargo, las 128 direcciones más altas de cualquier subred también se reservan para diversas direcciones anycast (RFC 2526). Pero en la práctica esto no suele ser problema. /120 hace posible evitar todas las direcciones anycast reservadas. 2.9. Direccionamiento EUI-64 En subredes con routers actuales, puede ser útil contar con los routers que generan automáticamente los 64 bits inferiores de la dirección IPv6 en esa subred. De esta manera, no hay necesidad de realizar un seguimiento de que dirección tienen los routers. Puede ser posible configurar el uso del direccionamiento "EUI-64" (la forma de 64 bits de una dirección Ethernet MAC). Los routers generarán entonces una dirección IPv6 de su dirección MAC, similar a cómo los hosts pueden generar los 64 bits inferiores de la dirección IPv6 de la dirección MAC cuando se utiliza la configuración automática de direcciones sin estado. Al igual que la configuración automática de direcciones sin estado, sólo es posible EUI-64 con subredes /64. La siguiente figura se muestra una subred que contiene dos routers Cisco configurados con "IPv6 address 2001: db8: 1234:419::/64 EUI-64" en la interfaz que conecta a la subred. A pesar de tener la configuración idéntica, cada router configura una dirección única. Figura 4: Direccionamiento EUI-64 Fuente: (SURFNET, 2013) 3. OPCION SIN UN PLAN DE DIRECCIONAMIENTO 3.1. Relacionar directa de IPv4 con las redes IPv6 Si las redes IPv4 existentes sólo utilizan /24 (por ejemplo, de 203.0.113.0 a 203.0.113.255), una relación directa se puede establecer entre las direcciones IPv4 y las nuevas direcciones IPv6. En este caso, puede incluir el penúltimo número de la dirección IPv4 (113 en 203.0.113.0 /24, por ejemplo) en la subred IPv6. La dirección IPv6 será entonces 2001: db8: 1234:113 :: / 64. Tal transición de IPv4 a IPv6 puede ser como se muestra: Figura 5: Relación direcciones IPv4 - IPv6 (SURFNET, 2013) Con esta opción, el vínculo entre las redes IPv4 existentes y las redes IPv6 es inmediatamente visible. Sin embargo, este esquema sólo funciona bien cuando las subredes IPv4 son /24. Para los equipos vitales, tales como servidores y routers, puede ser práctico utilizar el último número de la dirección IPv4 en la dirección IPv6 también. La dirección IPv4 192.0.2.123, por ejemplo, se convertiría en la dirección IPv6: 2001: db8: 1234:2::123. Si se elige esta opción, se recomienda mantener una lista de las redes asignadas en una ubicación central, como una hoja de cálculo Excel, o en la configuración de DNS inversa. La razón por la que este enfoque sólo funciona con subredes /24 de IPv4 es porque con una máscara diferente se pueden presentar incongruencias al relacionar subredes. Por ejemplo, con un tamaño de subred /28 en efecto, las dos direcciones 172.31.5.14 y 172.31.5.18 se encuentran en diferentes subredes IPv4 (172.31.5.0 /28 y 172.31.5.16 /28), pero cuando se mapean a 2001:db8:1234:5::14 y 2001:db8:1234:5::18, serían de la misma IPv6 /64 Si el tamaño de la subred es menor que /24, por ejemplo con 10.0.8.250 y 10.0.9.5, que se encuentran ambas en 10.0.8.0 /23, las direcciones se asignan a 2001:db8:1234:8::250 y 2001:db8:1234:9:: 5, que están en diferentes /64s. 3.2. Relacionar directa de IPv4 con las direcciones IPv6 Es posible escribir toda la dirección IPv4 en la dirección IPv6. Por ejemplo el sistema con la dirección IPv4 192.0.2.123, la dirección IPv6 se puede escribir como: 2001:db8:1234:0:192:0:2:123. Tenga en cuenta que hay una variación en la notación IPv6 que permite la inclusión de una dirección IPv4, en este caso la dirección IPv4 debe ocupar los 32 bits más bajos de la dirección IPv6, por ejemplo: 2001:db8:1234:a:b:c:192.0.2.123 Sin embargo, el hecho de que una dirección se ha introducido en esta forma generalmente no se mantiene siempre ese formato, cuando se muestra la configuración de red, por lo general aparecen en notación estándar IPv6 por ejemplo: 2001:db8:1234:a:b:c:c000:27b En este formato la relación con la dirección IPv4 192.0.2.123 no es tan obvia. 4. ADMINISTRACIÓN Y DIRECCIONAMIENTO DE LOS HOST Una vez que tenga un plan de dirección para las redes IPv6, se puede proceder a direccionar los host en la red. Hay tres métodos comunes para hacer esto: • Configuración automática de direcciones sin estado • Protocolo de configuración dinámica de host para IPv6 (DHCPv6) • La configuración manual Recomendamos la configuración automática a través de la configuración automática de direcciones sin estado (a veces extraoficialmente abreviado como SLAAC) o DHCPv6 para la mayoría de los clientes porque esto hace que la administración sea mucho más fácil. Se recomienda la configuración manual sólo para equipos como routers, switches, firewalls y servidores. 4.1. Configuración Automática de direcciones sin estado La configuración automática de direcciones sin estado es la forma más sencilla de conectar los hosts de una red IPv6. El router envía anuncios de enrutador (RA) y los host usan la información de la RA en combinación con su dirección MAC para crear una dirección IPv6. Las direcciones MAC Ethernet son de 48 bits, pero éstas se extienden a 64 bits creando un identificador único extendido de 64 bits (EUI-64). Se toman los primeros tres bytes (los de mayor orden), estos 24 bits de la dirección MAC se llaman identificador OUI, y se agrega FFFE (hexadecimal), y a continuación el resto de los bytes de la dirección MAC, estos últimos 24 bits de la dirección MAC son una parte llamada NIC determinada y configurada por el fabricante y por el IEEE. Luego se invierte la bandera local universal (bit 7) de la porción OUI de la dirección. 4.2. Protocolo de configuración dinámica de host para IPv6 (DHCPv6) Si los administradores de red desean rastrear quién está utilizando una dirección IPv6 y cuándo, la solución es utilizar DHCPv6. DHCPv6 es un protocolo de configuración dinámica de host para IPv6, está definido en la RFC 3315. Trabaja sobre UDP y utiliza la arquitectura cliente servidor, utiliza multicast en lugar de broadcast para los mensajes. Hasta hace unos pocos años de Mac OS X no apoyó DHCPv6. Sin embargo, en Mac OS X 10.7 se añadió soporte DHCPv6. Windows soporta DHCPv6 desde Windows Vista. Hoy en día todos los sistemas operativos principales soportan DHCPv6, pero el software DHCPv6 no son instalados por defecto en todas las distribuciones de Linux y BSD. Con DHCPv6 podemos asignar otros parámetros que no se pueden con los mensajes RA como, dominio por defecto, servidores DNS, NTP, etc. Dos banderas en los mensajes anuncios de enrutador (RA) determinan qué opción es seleccionada por los host. Por esta razón, y también porque DHCPv6 no proporciona una dirección de puerta de enlace predeterminada, los routers IPv6 siempre deben enviar los mensajes RA a los host, incluso cuando no se utiliza la configuración automática de direcciones sin estado. 4.3. Configuración manual de direcciones Se recomienda asignar manualmente las direcciones IPv6 estáticas sólo para equipos como routers, switches, firewalls y servidores. La configuración automática de dicho equipo dará lugar a problemas en el largo plazo. Por ejemplo, si se sustituye el adaptador de red en un servidor, la configuración automática de direcciones sin estado de direcciones de ese servidor también cambia, y hay un riesgo importante de que la persona que sustituye el adaptador de red se olvide de modificar las entradas de DNS para el servidor. 5. EJEMPLO DIRECCIONAMIENTO EN UNA EMPRESA La empresa de servicios de internet en cuestión ha recibido el prefijo de direcciones IPv6: 2001:db8:1234::/48 La empresa tiene 120 sucursales y en cada sucursal tiene distintos servicios. Se desea que cada sucursal tenga su propio direccionamiento interno, por tal motivo se va a utilizar la ubicación como subred primaria. Con el prefijo que se tiene, se tienen 16 bits disponibles para direccionar subredes dentro de la empresa. Como se tienen 120 sucursales, el numero potencia de dos más próximo es 128 = 27 , entonces se tiene que son necesarios 7 bits para ubicación. Sin embargo para un futuro crecimiento y para mayor legibilidad se van a dejar 8 bits es decir 28 = 256 ubicaciones o sucursales, esto quiere decir que se le entrega un prefijo /56 a cada sucursal. Quedan 8 bits disponibles de los cuales se utilizaran 4 bits para tipo de uso (24 = 16) y 4 bits para otras subredes terciarias (24 = 16). Esto significa que en cada una de las 256 posibles sucursales, se pueden direccionar 16 subredes para tipo de uso, y en cada subred de tipo de uso se pueden tener 16 subredes para otros usos. El uso de los bits para el direccionamiento se muestra a continuación: 2001:db8:1234 L L L L L L L L T T T T B B B B ::/64 La dirección IPv6 para cada subred queda de la siguiente manera: 2001:db8:1234: LLTB::/64 Un esquema de direccionamiento se muestra a continuación, donde las 256 sucursales se enumeran desde 00 hasta FF Prefijo empresa /48 2001:0db8:1234: 2001:0db8:1234: 2001:0db8:1234: 2001:0db8:1234: 2001:0db8:1234: 2001:0db8:1234: 2001:0db8:1234: 2001:0db8:1234: Sucursales (LL) Subredes Sucursales /56 00 2001:0db8:1234:00… 01 2001:0db8:1234:01… 02 2001:0db8:1234:02… 03 2001:0db8:1234:03… … FD 2001:0db8:1234:FD… FE 2001:0db8:1234:FE… FF 2001:0db8:1234:FF… En cada sucursal existe la posibilidad de direccionar 16 subredes para 16 tipos de servicio, se tomara de ejemplo la sucursal con la dirección el prefijo IPv6 2001:db8:1234:0100::/56 Prefijo Sucursal /56 2001:0db8:1234:01… 2001:0db8:1234:01… 2001:0db8:1234:01… 2001:0db8:1234:01… 2001:0db8:1234:01… 2001:0db8:1234:01… 2001:0db8:1234:01… 2001:0db8:1234:01… Tipo de servicio (T) 0 1 2 3 Subredes Sucursales /60 2001:0db8:1234:010… 2001:0db8:1234:011… 2001:0db8:1234:012… 2001:0db8:1234:013… … D E F 2001:0db8:1234:01D... 2001:0db8:1234:01E… 2001:0db8:1234:01F… Por último en cada en cada subred de tipo de servicio existe la posibilidad de direccionar 16 subredes para otros 16 usos, se tomara de ejemplo la el prefijo 2001:0db8:1234:0130::/60, que equivale a la sucursal 01 (LL) y la subred de tipo de servicio 3 (T). Prefijo Tipo de servicio /60 2001:0db8:1234:013… 2001:0db8:1234:013… 2001:0db8:1234:013… Otros usos (T) 0 1 2 2001:0db8:1234:013… Subredes Otros usos /64 2001:0db8:1234:0130: 2001:0db8:1234:0131: 2001:0db8:1234:0132: 2001:0db8:1234:0133: 3 2001:0db8:1234:013… … 2001:0db8:1234:013… 2001:0db8:1234:013D: D 2001:0db8:1234:013… 2001:0db8:1234:013… E F 2001:0db8:1234:013E: 2001:0db8:1234:013F: Las subredes /64 son las subredes finales. Cada subred /64 puede direccionar 264 host, lo equivale a 18.446.744.073.709.551.616 posibles direcciones. Aquí fácilmente se puede observar la gran capacidad de direccionamiento en IPv6. Referencias SURFNET. (2013). Red académica y de investigación holandesa, Preparing an IPv6 Address Plan, Version 2, Manual.
© Copyright 2024