Cómo desactivar IPv6 en Ubuntu Linux

¿Quieres desactivar IPv6 en Linux? Aprende por qué querrías desactivar IPv6 y cómo desactivarla en Ubuntu Linux en este tutorial.
Warp Terminal

¿Estás buscando una forma de desactivar las conexiones IPv6 en tu máquina Ubuntu? En este artículo, te enseñaré exactamente cómo hacerlo y por qué deberías considerar esta opción. También te mostraré cómo habilitar o volver a habilitar IPv6 en caso de que cambies de opinión.

¿Qué es IPv6 y por qué querrías desactivar IPv6 en Ubuntu?

El Protocolo de Internet versión 6 (IPv6) es la versión más reciente del Protocolo de Internet (IP), el cual es el protocolo de comunicaciones que proporciona un sistema de identificación y localización de los ordenadores en las redes y encamina el tráfico a través de Internet, además es importante decir que se desarrolló en 1998 para sustituir al protocolo IPv4.

El objetivo de IPv6 es mejorar la seguridad y el rendimiento, además de garantizar que no se agoten las direcciones. Asigna direcciones únicas de forma global a cada dispositivo, almacenándolas en 128 bits, frente a los 32 bits que utiliza IPv4.

Aunque el objetivo es que el IPv4 sea sustituido por el IPv6, aún queda mucho camino por recorrer. Menos del 30% de los sitios de Internet pone a disposición de los usuarios la conectividad IPv6 (rastreada por Google aquí). El IPv6 también puede causar problemas con algunas aplicaciones a la vez.

Dado que las VPNs ofrecen servicios globales, el hecho de que IPv6 utilice direcciones enrutadas globalmente (asignadas de forma única) y de que (todavía) haya ISP que no ofrezcan soporte para IPv6 hace que esta característica se sitúe más abajo en su lista de prioridades. De este modo, pueden centrarse en lo que más importa a los usuarios de VPN: la seguridad.

Otra posible razón por la que podrías querer desactivar IPv6 en tu sistema es no querer exponerte a diversas amenazas. Aunque IPv6 en sí mismo es más seguro que IPv4, los riesgos a los que me refiero son de otra naturaleza. Si no estás usando activamente IPv6 y sus características, tener IPv6 activado te deja vulnerable a varios ataques, ofreciendo al hacker otra posible herramienta explotable.

En este sentido, no basta con configurar las reglas básicas de la red. Hay que prestar el mismo nivel de atención para ajustar la configuración de IPv6 que para IPv4. Esto puede resultar bastante complicado de hacer (y también de mantener). Con IPv6 viene un conjunto de problemas diferentes a los de IPv4 (muchos de los cuales pueden ser referenciados en línea, dada la antigüedad de este protocolo), dando a su sistema otra capa de complejidad.

También se ha observado que deshabilitar IPv6 ayuda a mejorar la velocidad del WiFi en Ubuntu en algunos casos.

Desactivar IPv6 en Ubuntu [Sólo para usuarios avanzados]

En esta sección, voy a cubrir cómo se puede desactivar el protocolo IPv6 en su máquina Ubuntu. Abre una terminal (por defecto: CTRL+ALT+T) y ¡manos a la obra!

Nota: Para la mayoría de los comandos que vas a introducir en el terminal vas a necesitar privilegios de root (sudo).

🚧
Atención! Si eres un usuario habitual de Linux de escritorio y prefieres un sistema de trabajo estable, por favor evita este tutorial. Esto es para usuarios avanzados que saben lo que están haciendo y por qué lo hacen.

1. Desactivar IPv6 mediante Sysctl

En primer lugar, tienes que asegurarte de que tienes el IPv6 activado en tu sistema. Comprueba tu dirección IP en Ubuntu con este comando:

ip a

Deberías ver una dirección IPv6 si está activada (el nombre de tu tarjeta de Internet podría ser diferente):

Dirección IPv6 en Ubuntu

Usted ha visto el comando sysctl en el tutorial sobre el reinicio de la red en Ubuntu. Vamos a utilizarlo aquí también. Para deshabilitar IPv6 sólo tienes que introducir 3 comandos:

sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1
sudo sysctl -w net.ipv6.conf.default.disable_ipv6=1
sudo sysctl -w net.ipv6.conf.lo.disable_ipv6=1

Puedes comprobar si ha funcionado utilizando:

ip a

No debería ver ninguna entrada IPv6:

Dirección IPv6 deshabilitada en Ubuntu

Sin embargo, esto sólo desactiva temporalmente IPv6. La próxima vez que tu sistema arranque, IPv6 volverá a estar habilitado.

Un método para hacer que esta opción persista es modificando /etc/sysctl.conf. Usaré nano para editar el archivo, pero puedes usar cualquier editor que quieras. Asegúrate de tener derechos de administrador (usa sudo):

Configuración Sysctl

Añade las siguientes líneas al archivo:

net.ipv6.conf.all.disable_ipv6=1
net.ipv6.conf.default.disable_ipv6=1
net.ipv6.conf.lo.disable_ipv6=1

Para que los ajustes surtan efecto, utiliza:

sudo sysctl -p

Si IPv6 sigue activado después de reiniciar, debes crear (con privilegios de root) el archivo /etc/rc.local y llenarlo con:

#!/bin/bash
# /etc/rc.local

/etc/sysctl.d
/etc/init.d/procps restart

exit 0

Ahora utiliza el comando chmod para hacer que el archivo sea ejecutable:

sudo chmod 755 /etc/rc.local

Lo que esto hará es leer manualmente (durante el tiempo de arranque) los parámetros del kernel desde tu archivo de configuración sysctl.

2. Desactivando IPv6 mediante GRUB

Un método alternativo es configurar GRUB para pasar los parámetros del kernel en el momento del arranque. Tendrás que editar /etc/default/grub. Una vez más, asegíúrate de tener privilegios de administrador:

Configurando GRUB

Ahora necesitas modificar GRUB_CMDLINE_LINUX_DEFAULT y GRUB_CMDLINE_LINUX para desactivar IPv6 en el arranque:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash ipv6.disable=1"
GRUB_CMDLINE_LINUX="ipv6.disable=1"

Guarda el archivo y ejecuta el comando update-grub:

sudo update-grub

Los ajustes deberían persistir ahora al reiniciar.

Reactivación de IPv6 en Ubuntu

Para volver a habilitar IPv6, tendrás que deshacer los cambios realizados. Para habilitar IPv6 hasta el reinicio, ingrese:

sudo sysctl -w net.ipv6.conf.all.disable_ipv6=0
sudo sysctl -w net.ipv6.conf.default.disable_ipv6=0
sudo sysctl -w net.ipv6.conf.lo.disable_ipv6=0

De lo contrario, si has modificado /etc/sysctl.conf puedes eliminar las líneas que has añadido o cambiarlas por

net.ipv6.conf.all.disable_ipv6=0
net.ipv6.conf.default.disable_ipv6=0
net.ipv6.conf.lo.disable_ipv6=0

Opcionalmente puedes recargar estos valores:

sudo sysctl -p

Deberías ver de nuevo una dirección IPv6:

Reactivando IPv6 en Ubuntu

Opcionalmente, puedes eliminar /etc/rc.local:

sudo rm /etc/rc.local

Si has modificado los parámetros del kernel en /etc/default/grub, sigue adelante y elimina las opciones añadidas:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

Ahora hazlo:

sudo update-grub

Conclusión

En esta guía te he proporcionado las formas en las que puedes deshabilitar IPv6 en Linux, además de darte una idea sobre qué es IPv6 y por qué querrías deshabilitarlo.

¿Te ha resultado útil este artículo? ¿Has logrado desactivar la conectividad IPv6? Permítenos saber en la sección de comentarios.

About the author
Marco Carmona

Marco Carmona

My name is Marco Antonio Carmona, I'm a physics and data science student, a great and passionate reader, and randomly, my favorite hobby is writing about what I learn day by day.

Become a Better Linux User

With the FOSS Weekly Newsletter, you learn useful Linux tips, discover applications, explore new distros and stay updated with the latest from Linux world

itsfoss happy penguin

Great! You’ve successfully signed up.

Welcome back! You've successfully signed in.

You've successfully subscribed to It's FOSS.

Success! Check your email for magic link to sign-in.

Success! Your billing info has been updated.

Your billing was not updated.