IPv6 es la próxima versión del esquema de direccionamiento de red IPv4 que está siendo utilizada para asignar direcciones numéricas a los nombres de dominio como «colegiopablovi.es» en Internet.
IPv6 proporciona muchas más direcciones que IPv4, pensando sobre todo en el inmediato «Internet de las cosas». Sin embargo aun no está ampliamente soportado y su adopción aunque en progreso está siendo más lenta de lo esperado. Y aquí es donde podemos encontrar problemas.
¿Tu sistema soporta ipv6 ?
Para que IPv6 pueda funcionar hay algunas cosas que debes tener en cuenta. En primer lugar necesitas un sistema operativo que soporte IPv6. Ubuntu Linux y otros sistemas modernos ya vienen preparados para ello. Si echas un vistazo a la salida del comando «ifconfig» puedes ver las direcciones ipv6 asignadas a las interfaces de red (busca las líneas «inet6 addr«):
$ ifconfig eth0 Link encap:Ethernet HWaddr 00:1c:c0:f8:79:ee inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::21c:c0ff:fef8:79ee/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:110880 errors:0 dropped:0 overruns:0 frame:0 TX packets:111960 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:62289395 (62.2 MB) TX bytes:25169458 (25.1 MB) Interrupt:20 Memory:e3200000-e3220000 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:45258 errors:0 dropped:0 overruns:0 frame:0 TX packets:45258 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:4900560 (4.9 MB) TX bytes:4900560 (4.9 MB)
Además necesitarás un router/modem que soporte en nuevo protocolo. Y por último tu proveedor de Internet también ha de proporcionarte una conexión basada en ipv6.
Aparte de verificar tu infraestructura de red, una buena idea es comprobar si puedes conectarte a tus páginas y servicios habituales utilizando el protocolo ipv6. Mucho sitios chequean si es posible automáticamente cuando intentas acceder a ellos. Prueba «http://testmyipv6.com/«, por ejemplo.
Configuración del kernel
Puedes verificar desde una consola si tu «kernel» tiene habilitados los parámetros necesarios para trabajar con ipv6 utilizando los siguientes comandos:
$ sysctl net.ipv6.conf.all.disable_ipv6 net.ipv6.conf.all.disable_ipv6 = 0 $ sysctl net.ipv6.conf.default.disable_ipv6 net.ipv6.conf.default.disable_ipv6 = 0 $ sysctl net.ipv6.conf.lo.disable_ipv6 net.ipv6.conf.lo.disable_ipv6 = 0
Nota1: puedes obtener la misma información mostrando el contenido del fichero especial «/proc/sys/net/ipv6/conf/all/disable_ipv6»
$ cat /proc/sys/net/ipv6/conf/all/disable_ipv6 0
Nota2: Observa que los parámetros controlan el uso de ipv6 marcan la desactivación («disabling»): «0» significa que sí esta habilitado y «1» que no lo está.
Cómo desactivar IPv6 si tienes problemas
Si estás dentro de una subred ipv4 o tu infraestructura no soporta en algún punto ipv6 lo recomendable es desactivarlo completamente. ¿Por qué? Se conocen muchos casos en los que aparecen retrasos en la búsqueda y resolución de dominios, intentos de conexión innecesarios a direcciones ipv6 que fallan en las respuestas, etc.
Algunos de estos problemas se dan en las versiones recientes de Ubuntu, probablemente porque estén intentado utilizar cuanto antes Ipv6 en todos sus servicios sin contar con la disponibilidad real en el lado del cliente. Algo parecido el para al navegador Google Chrome.
Por ello la mejor solución es desactivar por ahora IPv6. El proceso es sencillo y puede ayudarte a resolver esos «problemas misteriosos» con la red (hay quien dice haber mejorado la velocidad general de las conexiones a internet desde su ordenador)
Método 1: parámetros del kernel
Edita el fichero «/etc/sysctl.conf» con privilegios de administrador:
$ sudo gedit /etc/sysctl.conf
… y añade las siguientes líneas al final del mismo:
# IPv6 disabled net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.lo.disable_ipv6 = 1
Salva el fichero y ciérralo. Para probar los cambios tendrás que recargar los parámetros del sistema utilizando la orden:
$ sudo sysctl -p
Chequea la configuración de las interfaces de red con el comando «ifconfig» y comprueba que no tengan asignadas direcciones ipv6:
$ ifconfig eth0 Link encap:Ethernet HWaddr 08:00:27:5f:28:8b inet addr:192.168.1.3 Bcast:192.168.1.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:1346 errors:0 dropped:0 overruns:0 frame:0 TX packets:965 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1501691 (1.5 MB) TX bytes:104883 (104.8 KB)
Nota: si no funciona (caso extraño) tendrás que reiniciar el sistema para que los cambios tengan efecto y comprobarlo de nuevo.
Método 2: parámetros del cargador GRUB
Puedes desactivar el soporte de Ipv6 modificando el fichero de configuración del cargador del sistema GRUB:
$ sudo gedit /etc/default/grub
Busca la línea «GRUB_CMDLINE_LINUX» y edítala de la forma:
GRUB_CMDLINE_LINUX="ipv6.disable=1"
Lo mismo puedes hacer con el valor de la línea «GRUB_CMDLINE_LINUX_DEFAULT». Guarda el fichero, ciérralo y regenera el cargador del sistema con la nueva configuración:
$ sudo update-grub2
Reinicia el ordenador. A partir de ahora ya no se activará por defecto IPv6.