Latest Posts:

14 de mayo de 2011

IPv6: La resistencia es fútil

Internet funciona actualmente bajo un protocolo llamado IP (concretamente, IP versión 4 o IPv4). Tanto visitando Youtube desde nuestro ordenador, escribiendo en Twitter desde nuestro móvil o nevera, como comprando libros desde un lector de ebooks, estamos utilizando unas normas definidas desde el año 1984.

Cableado de red: Varios cables azules y uno rojo conectados a un router

Estas normas indican que cualquier dispositivo que se conecte a Internet, debe adquirir una dirección IP -una especie de DNI- que nos identifica (no como persona, sino como usuario único) y diferencia de otros usuarios.

Pero si tenemos en cuenta la velocidad a la que avanza la tecnología, la velocidad a la que ha crecido Internet y la velocidad media de una golondrina sin carga, nos tropezamos con un problema que ha aparecido repetidamente durante estos años: la escalabilidad (o lo que es lo mismo, "esto ha crecido más de lo que esperábamos").

Probablemente, alguna vez hayas leído o escuchado en los medios algún título apocalíptico como "La sequía ha llegado: se acaban las IPs de Internet" o "IPs en peligro de extinción". Se refieren al hecho de que, con el actual esquema IPv4, se han llegado a los límites de diseño del protocolo.

Para hacernos una idea más exacta de lo que es una dirección IP y la cantidad de IPs que se pueden generar con este sistema actual, veamos el siguiente gráfico:

Esquema de información de una dirección IPv4: Octetos, representación decimal y binaria y posibles direcciones.

La dirección IP está formada por 4 octetos (grupos de 8 bits -hablando en sistema binario- o números del 0 al 255 -hablando en sistema decimal-).

Pero centrémonos en las posibles direcciones que se pueden generar. 4.294.967.296 direcciones IP. Un número considerable para el momento en el que fue creado. Sin embargo, insuficiente para dar una dirección IP a cada persona del planeta con la población mundial actual (6.900.000.000 habitantes aproximadamente). Y ni hablar si quieres también una dirección IP en el móvil, iPad, consola, etc...

Para intentar evitar este agotamiento de IPs, se fueron desarrollando algunos "parches", entre otros, que lo frenaban en la medida de lo posible:

  • Redes privadas: Empresas, organizaciones, o incluso hogares con ciertas IPs reservadas como una "Internet local".
  • DHCP: Posibilidad de establecer direcciones IP estáticas, o por otra parte, IP dinámicas, que permiten ser reutilizadas cuando no están en uso.
  • NAT: Traducción de IPs entre dos redes. Generalmente usada para interconectar redes privadas e Internet.
  • CIDR: Debido a la mala distribución de IPs, se ideó un sistema de división de rangos de IPs más eficiente y flexible.

Pero la resistencia es inútil. Las direcciones IP en IPv4 se han agotado y hay que prepararse para el cambio a su nueva versión (IP versión 6 o IPv6), que solucionará el problema del límite de IPs, aprovechando la ocasión para introducir cambios de diseño muy interesantes:

  • Auto-configuración: Posibilidad de que los propios dispositivos se configuren solos al conectarse a una red.
  • Seguridad: El cifrado y autenticación mediante IPSec es obligatorio (en IPv4 es opcional), por lo que las comunicaciones serán más seguras.
  • Optimización: El diseño de la información enviada ha sido optimizada y simplificada, de forma que tanto los envíos como los procesos que se realizan en los dispositivos de red (como routers o similares) es mucho más eficiente.

Lo primero será acostumbrarse al nuevo sistema. Veamos como será IPv6, con un gráfico similar al anterior (la siguiente dirección IPv6 es utilizada para fines de documentación. Aquí asignaciones oficiales):

Esquema de información de una dirección IPv6: Grupos hexadecimales, representación hexadecimal y binaria, representaciones alternativas, grupos comprimibles y posibles direcciones.

Parece complejo, pero da esa impresión sólo por dos razones:

  • La longitud de la nueva dirección IP, que pasa a ser considerablemente larga. Esto es necesario para asegurar un alto número de IPs.
  • El uso del sistema hexadecimal en lugar de los números decimales de la dirección IP en IPv4. Esto consigue que la dirección IP sea más corta que si la representamos con números decimales.

La nueva dirección IP está formada por 8 grupos de 4 dígitos en hexadecimal. Esto es así porque, de ser representados en decimal como en IPv4, los grupos serían de 0 a 65535, en lugar de 0 a 255, algo excesivamente complejo.

Además, como se ve en el gráfico, existen varias formas alternativas de representación de una IP, reduciéndola a un formato más manejable. Todas las siguientes IPs son equivalentes:

:0000: :0: Grupo reducible a un sólo 0.
:0DB8: : DB8: Ceros a la izquierda pueden eliminarse.
:0483:0000:4563: :483::4563: Un grupo vacío (sin dígitos), significa que los grupos faltantes pueden rellenarse con ceros en esa situación. Sólo puede usarse una vez.
:1:0000:0000:453: :1::453: Ídem al anterior, incluso con varios grupos.
:48::56A::85: Incorrecta Esta dirección es incorrecta, puesto se usa el recurso :: dos veces, y sólo debe usarse una vez.
3:0000:0000:0000 3:: Si el final de la IP está formado por grupos de ceros, se puede reemplazar por :: (siempre y cuando no se haya usado anteriormente)

La siguiente hipotética dirección IP (del ejemplo del gráfico) es equivalente a las representaciones siguientes:

  • 2001:0DB8:F181:0000:0000:0000:0000:0000
  • 2001:0DB8:F181:0:0:0:0:0
  • 2001:DB8:F181:0:0:0:0:0
  • 2001:DB8:F181::0:0:0:0
  • 2001:DB8:F181::0:0
  • 2001:DB8:F181::

Como hemos visto, el cambio de una IP de 32 bits (IPv4) a una IP de 128 bits (IPv6), nos proporciona una increíble cifra de 340 sextillones de posibles IPs, o lo que es lo mismo ¡670 mil billones de IPs por mm² de la superficie del planeta!

IPv4: Menos de una IP por persona en el planeta. IPv6: 670.000 billones de IP por mm cuadrado.

Así que, aunque Chuck Norris ya utiliza sin ningún tipo de problema direcciones IP de IPv6, estamos en el momento perfecto para organizarnos y plantearnos el cambio a este nuevo sistema sin que nos pille desprevenidos.

El Ministerio de Industria, Turismo y Comercio ha lanzado IPv6.es, una plataforma con información clara y abundante sobre el tema, y algunas herramientas interesantes, como un test de conectividad IPv6 para saber si estamos preparados para el cambio.

¡A prepararse!

Los usuarios son los que más fácil lo tienen. Los sistemas operativos soportan desde hace varios años IPv6 (¡incluso Windows 98!). Las empresas y los proveedores, por otra parte, tienen una carga de responsabilidad mayor.

  • Routers y dispositivos: Los routers mediante los que acceden a Internet deben soportar IPv6. Si disponemos de routers de código abierto, es posible que se realicen actualizaciones para soportar IPv6. Si adquirimos uno nuevo, ya conviene ir mirando estos detalles. Lo mismo con smartphones, tablets, etc. Afortunadamente, la mayoría de ellos ya tienen soporte para IPv6.
  • Proveedor de Internet: Nuestro proveedor de conexión a Internet también debe estar preparado y ofrecer soporte para IPv6.
  • Aplicaciones o servicios web: Esto afectará sobretodo a las empresas, ya que son los responsables de que su aplicación funcione correctamente en IPv6. Es posible que exista software diseñado específicamente para IPv4 y tenga que ser reescrito. Lo mismo con productos que ofrecen servicios como podrían ser páginas web.

No obstante, este paso desde IPv4 a IPv6 no será un cambio drástico, sino que existirá, durante varios años, un proceso de transición a IPv6.

El próximo 8 de junio de 2011, se celebrará el World IPv6 day, un evento en el que varias empresas (Google, Facebook, Yahoo y Akamai entre ellas) ofrecerán sus servicios utilizando IPv6, como una primera prueba mundial a gran escala.

Espero que todo esto sirva para tener un poco más claro este tema y ayude en la medida de lo posible a irnos adaptando al nuevo "formato" de Internet.

google.com, pub-7451761037085740, DIRECT, f08c47fec0942fa0