Post actualizado el día noviembre 1, 2026 by DeiviSanzPlay
La noche que casi pierdo acceso a un servidor de casa empezó con una orden inocente: cambiar ip en linux comando. Llevaba meses administrando una pequeña máquina con Debian que uso como servidor de archivos y para pruebas. Decidí moverla de la red 192.168.1.0/24 a la 192.168.50.0/24 porque el router nuevo repartía direcciones con otro rango. El comando era simple: ip addr add 192.168.50.20/24 dev enp3s0. Lo ejecuté por SSH, sin consola física delante, y ahí empezó el problema.
Al añadir la dirección nueva no borré la anterior ni ajusté la puerta de enlace. El servidor respondía en dos rangos a la vez, pero el router ya no enrutaba hacia la IP vieja. La sesión SSH aguantó unos segundos y luego se congeló. El puerto seguía abierto, pero el tráfico de retorno se iba por la ruta equivocada. Un clásico de quien intenta cambiar ip en linux comando sin revisar la tabla de rutas.
Por qué el comando ip no es tan inocente como parece
Mucha gente viene de ifconfig y asume que ip addr add reemplaza la configuración existente. No lo hace: añade. Si quieres cambiar la IP de una interfaz de forma limpia en sistemas modernos, lo habitual es borrar la anterior o usar ip addr change, aunque el matiz importa. En mi caso, la interfaz acabó con dos direcciones y el kernel eligió la ruta de salida según la métrica, no según lo que yo esperaba.
El comando correcto para dejar una sola IP en una interfaz concreta sería algo como:
sudo ip addr flush dev enp3s0
sudo ip addr add 192.168.50.20/24 dev enp3s0
sudo ip route add default via 192.168.50.1
Y aun así, hay que tener cuidado: ip addr flush elimina todas las direcciones de esa interfaz, incluidas las IPv6 o las secundarias que tuvieras. En un equipo de escritorio no pasa nada grave; en un servidor con servicios atados a una IP concreta, puedes dejar colgados el DNS local, el contenedor o la VPN.
El error real: cambiar la IP sin tocar la puerta de enlace
Mi fallo no fue el comando en sí, sino no haber previsto la puerta de enlace. Al cambiar la IP en Linux con el comando ip, la ruta por defecto sigue apuntando al router antiguo hasta que la modificas. Durante unos minutos el servidor tenía IP nueva, pero seguía intentando salir por 192.168.1.1, que ya no existía en esa interfaz. Resultado: sin acceso remoto y sin salida a Internet.
Esto no funciona igual en todos los entornos. En sistemas con NetworkManager o systemd-networkd, cambiar la IP a mano con ip suele ser temporal: al reiniciar o al renovar la conexión, la configuración vuelve a la del gestor. Si lo haces en un servidor con netplan, el cambio manual se pierde en el siguiente netplan apply. Para que persista, toca editar el archivo de configuración correspondiente, no solo lanzar el comando.
Un caso doméstico: la Raspberry Pi que dejó de responder
Un conocido intentó lo mismo en una Raspberry Pi con Pi-hole. Quería cambiar la IP de la Pi para que coincidiera con la reserva DHCP del router nuevo. Ejecutó sudo ip addr add 192.168.1.80/24 dev eth0 y luego reinició. Al no modificar /etc/dhcpcd.conf, la Pi volvió a pedir la IP por DHCP y el cambio se perdió. Peor aún: durante ese reinicio, el router asignó la dirección antigua a otro dispositivo, generando un conflicto de IP que tumbó la red doméstica unos minutos.
La lección es clara: el comando ip sirve para probar y para emergencias, pero si buscas un cambio estable, debes editar la configuración persistente. En Debian con dhcpcd, por ejemplo, se declara la IP estática en /etc/dhcpcd.conf; en Ubuntu con netplan, en el YAML de /etc/netplan/.
Limitaciones que conviene tener presentes
No todo se resuelve con un par de comandos. Si el equipo está en una red con VLANs, bridges o bonding, cambiar la IP de la interfaz física puede romper la configuración lógica. Tampoco funciona bien en contenedores Docker sin ajustar la red del host. Y en máquinas virtuales, el cambio de IP puede chocar con las reglas del hipervisor o con las reservas DHCP del switch virtual.
Además, si trabajas por SSH, conviene tener siempre una segunda vía de acceso: consola IPMI, pantalla y teclado, o un usuario con acceso físico. Yo aprendí a lanzar los cambios de red dentro de una sesión screen o tmux con un temporizador que revierta la configuración si pierdo la conexión. No es infalible, pero evita muchos sustos.
Recomendación práctica antes de cambiar la IP
Antes de tocar nada, revisa la configuración actual con ip addr show y ip route show. Anota la IP, la máscara y la puerta de enlace. Después, decide si el cambio es temporal o definitivo. Si es temporal, usa ip addr add y ip route replace; si es definitivo, edita el archivo del gestor de red y reinicia el servicio. Y verifica siempre desde otra máquina que la nueva IP responde antes de cerrar la sesión vieja.
En mi caso, la solución fue entrar por consola física, borrar la IP sobrante con ip addr del, ajustar la ruta por defecto y luego fijar la configuración en netplan. Tardé más en encontrar el cable de consola que en corregir el comando. La próxima vez que alguien me pregunte cómo cambiar la IP en Linux con un comando, le diré que el comando es lo fácil; lo difícil es no quedarse sin red por el camino.
Perfiles verificables: Sitio web
Publicado el 1 de November de 2026. Última revisión: 1 de November de 2026.