El IPcalypsis ha llegado

Ya es oficial, no quedan rangos de IPv4 que puedan ser reservados por nuevas compañías, sólo queda implantar oficialmente y a nivel mundial el protocolo IPv6.

En resumidas cuentas, no es que sólo hayan aumentado el número de IPs disponibles, cambia toda la filosofía y tanto los conceptos como la configuración no son del todo intuitivos.

En cuanto los IPs lo implementen de forma nativa, en principio la mayoría de routers basados en linux ya están preparados para utilizar IPv6 o podrían estarlo simplemente con una actualización de software.

A priori esto no es un problema para usuarios ni la mayoría de ISPs existentes, puesto que tienen sus rangos ya comprados y salvo que se les agoten por ahora pueden ir tirando; sinembargo es un problema para los ISPs nuevos y todo aquel que necesite comprarse un hueco en internet.

Básicamente lo que ha sucedido es que todo el rango de ips versión 4 que va desde 0 – 255 dividido en 4 segmentos: 0.0.0.0 está vendido. Hasta la fecha se había trampeado esta situación con el uso de NAT en las redes locales.

El funcionamiento del NAT es muy simple, se forma un subconjunto de redes, enlazadas entre sí por un enrutador, para los rangos de redes locales se reservan 3 segmentos: 10.0.0.0 (clase A), 172.16.0.0 (clase B) y 192.168.1.0 (clase C), los equipos de la red local tendrán IPs dentro de esos rangos. Cuando quieran acceder a una ip de un rango externo preguntarán al enrutador asignado en la red, el cual tiene 2 tarjetas de red (de ahora en adelante referidas como interfaces) lo que le permite hacer de puente.

Dicho de otro modo, ahora mismo todas las peticiones de cualquier equipo de una red local se ven desde internet como que proceden desde la misma IP:

 

IPv6 es totalmente nuevo, en todos los sentidos, por un lado las IPs pasan a abarcar de 0 – 65535 dividido en 8 segmentos, es decir, MUCHOS. La forma de representarlo también cambia, se opta por el hexadecimal para simplificar y compactar los números. Además existen muchas formas de escribir la misma IP, recomiendo echar un vistazo a la explicación que está en la wikipedia (sí, para variar este post no será muy técnico por ahora, sólo conceptual ya que este tema podría abarcar varios posts).

La filosofía cambia, como hay tantas IPs disponibles, la idea es que todos los aparatos sean accesibles directamente desde internet, hasta podrás conectarte a la tostadora de tu casa con tu móvil. Desaparece por tanto el concepto de NAT, aunque es posible hacer alguna chapucilla no oficial por ahí (hacer que sólo el router tenga IPv6 y el resto de equipos usen un proxy http a través de él, o bien asignar un rango de IPv6 local y hacer un pseudo-nat).

¡Las pilas de red son paralelas! ¿Qué significa esto? que tener un sistema dual IPv4 e IPv6 significa que ese equipo tiene que tener configurados dos firewalls por separado, uno para cada protocolo. Pensadlo gráficamente como que acabáis de instalar una tarjeta de red más nueva y un cableado paralelo al que ya teníais.

Y hay mucho más, mientras los ISPs no implantan nativamente el protocolo IPv6, se puede utilizar mediante un túnel 6to4. Lo que se hace es pasar el tráfico IPv6 encapsulado bajo el protocolo 41. El primer paso sería habilitarlo en el firewall IPv4:

Para habilitar el túnel depende de si teneis ip estática o dinámica. Si es dinámica tendreis que daros de alta en algun servicio que os permita utilizarlo de túnel, se parece a como se hacía antiguamente con las conexiones PPP de módem, se lanza un cliente que nos crea una interfaz TAP en el equipo. En caso de tener una IPv4 estática y si la tenemos directamente en el equipo porque el router está en modo bridge, podremos crear nosotros de forma nativa el puente 6to4. Es algo complejo entender todos los parámetros y el porqué, hay manuales ya creados por internet, procupro detallar en este post todo lo que no he visto o me ha costado encontrar por ahí. Os pondré como ejemplo mi configuración:

Con esto se creará una interfaz que automáticamente enrutará el tráfico IPv6 por nosotros. Fijaos en que llamo al script /etc/network/ipv6rules.sh para configurar el firewall IPv6 (en mi caso es ipv6tables, que es nativo del kernel de linux).

Una vez creado y lanzado el túnel de cualquiera de las formas antes indicadas, faltaría instalar un programa que transfiera las rutas al resto de equipos de la red, en el caso de linux se usa radvd. Si no se instala y configura, sólo el equipo con el túnel 6to4 tendrá conectividad IPv6, mientras que si se instala y configura, el resto de equipos sabrán como llegar al siguiente enrutador y ser visibles públicamente, así es cómo soluciona IPv6 el problema del NAT (recuerda al típico: Para salir afuera hay que usar la puerta de la entrada ¡pásalo!).

Si quereis hacer pruebas para verificar si vuestra configuración funciona o si ya teneis habilitado el acceso por IPv6, os recomiendo las siguientes direcciones web:

¡Me olvidaba! Por si habeis pensado en asociar un dominio o subdominio a una IPv6, es posible mediante los DNS actuales, especialmente con bind, sólo hay que crear un registro de tipo AAAA.

Para probar si teneis conexión desde los equipos de la red, además de navegar por páginas web, podéis utilizar la utilidad ping6 para saber si los paquetes llegan:

Y bueno, hay mucho, mucho, por leer, y es bueno estar preparado para que luego no nos coja por sorpresa. 😉

Si teneis cualquier duda planteádmela e intentaré ayudaros hasta donde pueda.

Un saludo.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *