Cómo asignar IP estática en Linux: guía completa por distros y herramientas

Última actualización: 16/10/2025
Autor: Isaac
  • En Linux no hay un único comando universal: la persistencia depende de interfaces, Netplan, ifcfg o NetworkManager.
  • Identificar la interfaz y hacer copia de seguridad antes de editar es clave para evitar pérdidas de conectividad.
  • Verifica siempre con ip addr, rutas y ping; si falla por nombre, revisa la configuración de DNS.

IP estática en Linux

Configurar una IP fija en Linux no es un único truco, sino un conjunto de técnicas que dependen de la distribución, la versión y la pila de red que tengas activada; no existe un único comando universal que lo resuelva para todos los casos y de forma persistente.

Además, hay dos planos distintos: el ajuste temporal (que se va al reiniciar la red o el sistema) y la configuración persistente (la que se guarda en archivos o perfiles y sobrevive a los reinicios). En las familias Debian/Ubuntu puedes tocar /etc/network/interfaces o usar Netplan; en Red Hat/Rocky/AlmaLinux mandan NetworkManager y los ifcfg; en Arch Linux puedes tirar de netctl o systemd-networkd, y en todas brilla nmcli/nmtui como alternativa moderna.

Qué es una IP estática y por qué te interesa

Una dirección IP estática es aquella que no cambia con el tiempo ni depende de un servidor DHCP; resulta clave para servidores, redirecciones de puertos, túneles, accesos remotos (SSH, VPN), NAS y servicios con DDNS.

En entornos domésticos o de laboratorio suele bastar con IP dinámica (DHCP), pero cuando quieres estabilidad o publicar servicios internos, fijas la IP para que no cambie; esto evita “sorpresas” como que el router asigne otra dirección y deje de funcionar un reenvío de puertos.

Configurar red en Linux

Antes de tocar nada: identifica la interfaz y haz copia de seguridad

Lo primero es saber qué interfaz vas a configurar (cable: suele empezar por e, como enp0s3/enp2s0/eth0; wifi: empieza por w, tipo wlan0/wlp3s0); para listar interfaces con colores puedes usar ip -c link show y para ver las direcciones, ip -c addr show. Si trabajas en máquinas virtuales, revisa los tipos de redes en VirtualBox y VMware para elegir la configuración adecuada.

Si prefieres salida clásica, también es válido ifconfig -a (en distros modernas puede que tengas que instalar net-tools); revisa la interfaz objetivo y confirma si ahora mismo está bajo DHCP o ya tiene una IP estática.

Antes de editar archivos del sistema, guarda un respaldo: por ejemplo, copia /etc/network/interfaces a tu $HOME con fecha para tener un “plan B” por si metes la pata.

sudo cp /etc/network/interfaces ~/interfaces.$(date +%Y%m%d).bk

En muchas operaciones necesitarás privilegios de administración; puedes entrar como root o anteponer sudo a cada comando, algo imprescindible al modificar ficheros de configuración de red.

Red estática en Linux

Debian y derivados: método clásico con /etc/network/interfaces

En Debian 11 y versiones previas es habitual gestionar la red con el archivo /etc/network/interfaces; primero localiza la interfaz (por ejemplo, eth0 o enp2s0) y edita el fichero con tu editor favorito.

sudo vim /etc/network/interfaces
# o
sudo nano /etc/network/interfaces

Busca los bloques de tu interfaz. Si estaba en DHCP (por ejemplo, allow-hotplug eth0 + iface eth0 inet dhcp), cámbialo a estático; la sintaxis típica incluye auto <interfaz> y un bloque “inet static”.

auto eth0
iface eth0 inet static
    address 192.168.1.25       # IP del equipo
    netmask 255.255.255.0      # Máscara (equivale a /24)
    gateway 192.168.1.1        # Puerta de enlace
    dns-nameservers 192.168.1.1 1.1.1.1 8.8.8.8

En algunos escenarios también verás campos como network y broadcast (192.168.1.0 y 192.168.1.255 en /24); no siempre son necesarios, pero sí puedes incluirlos si tu guía o plantilla los contempla; lo imprescindible es address, netmask, gateway y los DNS.

  Cambiar el número de aplicaciones en Android: ¿cómo renombrar y cambiar el número de aplicaciones?

Guarda y reinicia el servicio de red para aplicar; en Debian estándar funciona bien systemctl restart networking.service y a continuación valida con ip addr que la IP ya es la que has fijado.

sudo systemctl restart networking.service
ip -c addr show eth0

En variantes como Ubuntu puedes encontrar unidades ifup específicas de interfaz (p. ej., ifup@enp2s0); si no estás seguro, vuelve al patrón general con networking.service; la idea es recargar la pila de red para que el cambio entre en vigor.

Ubuntu Server moderno: Netplan paso a paso

Desde Ubuntu 17.10, y muy especialmente en 20.04 LTS y posteriores, Netplan gestiona la configuración de red leyendo archivos YAML en /etc/netplan/*.yaml; la sintaxis es sensible a sangrías y espacios.

Revisa el fichero activo (por ejemplo, 00-installer-config.yaml o 50-cloud-init.yaml) y confirma el estado actual; por defecto verás algo del estilo dhcp4: true, que significa que la IP se obtiene por DHCP.

cat /etc/netplan/00-installer-config.yaml
# Ejemplo típico por defecto:
# network:
#   ethernets:
#     enp0s3:
#       dhcp4: true
#   version: 2

Edita el YAML y desactiva DHCP cambiando dhcp4: true por dhcp4: no (o false), añadiendo addresses (con máscara en notación CIDR), gateway4 y nameservers; respeta las indentaciones, porque un espacio de menos puede romper el parseo.

sudo nano /etc/netplan/00-installer-config.yaml

network:
  ethernets:
    enp0s3:
      dhcp4: no
      addresses: 
      gateway4: 192.168.1.1
      nameservers:
        addresses: 
  version: 2

Si el directorio no contiene archivos (raro, pero puede ocurrir), puedes regenerar los básicos con sudo netplan generate y después aplicar; en condiciones normales bastará con lanzar el apply y comprobar.

sudo netplan apply
ip addr

Si fallan los cambios, Netplan te avisa y no deja la red “rota”; revisa la sintaxis YAML y vuelve a ejecutar apply cuando lo tengas; el comando “ip a” es tu aliado para verificar el estado tras cada ajuste.

Red Hat, Rocky y AlmaLinux: ifcfg y NetworkManager (nmcli/nmtui)

En sistemas basados en RPM todavía conviven archivos ifcfg en /etc/sysconfig/network-scripts/ con NetworkManager como capa de gestión; puedes hacerlo a la vieja usanza editando el ifcfg de tu interfaz.

sudo nvim /etc/sysconfig/network-scripts/ifcfg-enp0s2

TYPE="Ethernet"
BOOTPROTO="none"
NAME="enp0s2"
ONBOOT="yes"
HWADDR="08:00:27:80:63:19"
IPADDR0="192.168.225.150"
PREFIX0="24"
GATEWAY0="192.168.225.1"
DNS1="8.8.8.8"

Asegúrate de poner BOOTPROTO=»none» para indicar que no usas DHCP y ONBOOT=»yes» para que suba la interfaz; guarda y reinicia el servicio de red, y verifica con ip addr que ya se refleja; así queda persistente. Si necesitas más contexto sobre la dirección MAC y la máscara de red, revisa esa referencia.

sudo systemctl restart network
ip a s enp0s2

Con NetworkManager puedes preferir nmcli, que es cómodo y declarativo; modifica el perfil de conexión (no siempre coincide con el nombre de la interfaz) indicando ip4, gw4 y los DNS, y luego activa el perfil.

nmcli connection show
sudo nmcli connection modify "eth0" ip4 192.168.1.20/24 gw4 192.168.1.101 ipv4.dns 8.8.8.8
sudo nmcli connection up "eth0"

Si quieres un modo semigráfico en terminal, instala la TUI de NetworkManager y utiliza su asistente; es práctico para asegurarte de que no te dejas ningún campo por el camino; luego reinicia NetworkManager si lo ves necesario.

sudo dnf install NetworkManager-tui
nmtui
sudo systemctl restart NetworkManager

Arch Linux: netctl o systemd-networkd

En Arch tienes dos caminos muy usados: netctl (perfiles inspirados en systemd) o ir “a pelo” con systemd-networkd; ambos son válidos y la elección depende de tu entorno.

  Find out how to Set Rounding Precision In Excel

Con netctl, copia el perfil de ejemplo ethernet-static a /etc/netctl/ con el nombre de tu interfaz, edita dirección, máscara (en CIDR), puerta de enlace y DNS; después habilita y arranca el perfil.

sudo cp /etc/netctl/examples/ethernet-static /etc/netctl/enp2s0
sudo nvim /etc/netctl/enp2s0

Description='A basic static ethernet connection'
Interface=enp2s0
Connection=ethernet
IP=static
Address=('192.168.1.102/24')
Gateway=('192.168.1.1')
DNS=('8.8.8.8' '8.8.4.4')

sudo netctl enable enp2s0
sudo netctl start enp2s0

Si tenías un cliente DHCP en marcha (como dhcpcd), detén y deshabilita sus unidades para que no se pisen con tus ajustes estáticos; evitar conflictos aquí es fundamental.

sudo systemctl stop dhcpcd
sudo systemctl disable dhcpcd

Con systemd-networkd crea un archivo .network que case con tu interfaz en /etc/systemd/network/, especifica la IP, gateway y DNS, y habilita el servicio; después de reiniciar, verifica con ip addr.

sudo nvim /etc/systemd/network/enp2s0.network


Name=enp2s0


Address=192.168.1.102/24
Gateway=192.168.1.1
DNS=8.8.8.8
DNS=8.8.4.4

sudo systemctl disable netctl@enp2s0.service  # si venías de netctl
sudo systemctl enable systemd-networkd
sudo systemctl start systemd-networkd

Antes de dejarlo por cerrado, vuelve a revisar que no queda ningún resto de perfiles o servicios que compitan; un systemctl list-unit-files te ayuda a detectar unidades residuales de netctl o clientes DHCP.

GUI y alternativas en escritorios Linux

Si estás en un entorno con interfaz gráfica (GNOME, KDE, etc.), puedes abrir las “Conexiones de red” y en la conexión cableada o inalámbrica elegir el método “Manual” (IPv4), rellenando Dirección, Máscara y Puerta de enlace; también puedes definir DNS en esa misma pantalla.

Este enfoque es cómodo para equipos de usuario y funciona con NetworkManager por debajo; aun así, conviene conocer los métodos en consola para servidores y administraciones remotas, donde la GUI no siempre está disponible ni es recomendable.

Aplicar cambios: reinicios de servicio y del sistema

Tras editar, normalmente basta con reiniciar el demonio de red: en Debian/Ubuntu clásico, systemctl restart networking.service; en Netplan, netplan apply; en NetworkManager, systemctl restart NetworkManager o desactivar/activar el perfil con nmcli.

# Debian/Ubuntu tradicional
sudo systemctl restart networking.service

# Netplan
sudo netplan apply

# NetworkManager
sudo systemctl restart NetworkManager

En distros con ifcfg a la antigua, usa systemctl restart network; en Arch con netctl, netctl restart <perfil> o stop/start; si el servicio de reinicio no está disponible, puedes reiniciar el equipo con systemctl reboot o apagar con systemctl poweroff.

sudo systemctl restart network
sudo netctl restart enp2s0
# Alternativas de control del sistema
sudo systemctl reboot
sudo systemctl poweroff

Verificación y pruebas de conectividad

Comprueba que la dirección está aplicada con ip -c addr show <interfaz> y que la ruta por defecto apunta a la puerta de enlace que has definido; si todo cuadra, pasa a probar conectividad.

  Permitir no molestar a determinados contactos en el iPhone

Empieza con un ping a la puerta de enlace (p. ej., 192.168.1.1) y luego a un dominio (google.com) para verificar también la resolución DNS; si el ping por IP funciona y por nombre no, revisa tus servidores DNS.

ip -c addr show enp0s3
ping -c 4 192.168.1.1
ping -c 4 google.com

En caso de problemas, vuelve a la fuente: revisa el archivo que hayas tocado (/etc/network/interfaces o el YAML de Netplan), confirma que no hay clientes DHCP activos que sobrescriban, y repite el ciclo de aplicar y verificar.

¿Existe un único “comando mágico” para fijar IP en Linux?

No, y aquí está el quid de la cuestión: en Linux hay varias formas de dejar una IP fija, y dependen del gestor de red y la distro; lo que sí existe es un comando genérico para asignar una IP de forma temporal, por ejemplo con ip addr add.

# Asignación temporal (no persiste tras reiniciar red/sistema)
sudo ip addr add 192.168.1.50/24 dev enp0s3
sudo ip route add default via 192.168.1.1

Esa configuración no es persistente; para que sobreviva a reinicios debes editar archivos (interfaces, ifcfg, Netplan) o usar herramientas de perfiles como nmcli/nmtui; por eso los profesores suelen pedir el método de tu distro, no un “comando único”.

Notas y matices útiles que conviene recordar

En el mundo RPM, BOOTPROTO=»none» indica IP manual y BOOTPROTO=»dhcp» activa la obtención automática; los campos IPADDR0/PREFIX0/GATEWAY0/DNS1 permiten múltiples entradas con sufijos 0,1,2 si lo necesitas.

En Debian clásico, la clave es usar “inet static” y no olvidar gateway y dns-nameservers; en Netplan, vigila la indentación y recuerda que las máscaras van en formato CIDR en addresses (por ejemplo, /24 para 255.255.255.0).

Si trabajas con dispositivos exóticos o laboratorios “vintage”, quizá tengas versiones no tan recientes (como Debian 11 en SBC tipo Pine A64) y el método clásico de interfaces te resuelva la papeleta; adapta el método a lo que realmente corre estable en tu equipo.

Por último, si algo deja de responder en remoto tras aplicar cambios de red, espera a que se recargue el servicio y verifica rutas desde consola local; una copia de seguridad del archivo original te ahorra sustos al revertir rápidamente.

Con todo lo anterior ya tienes un mapa completo por familias y herramientas: método clásico en Debian/Ubuntu, YAML con Netplan para servidores modernos, ifcfg y NetworkManager en Red Hat/Rocky/Alma y perfiles netctl o systemd-networkd en Arch; elige la ruta que encaja con tu distro y contexto, recuerda verificar con ip addr y ping, y no olvides los DNS si te quedas sin resolver nombres.

cómo configurar IP estática en Debian, Arch, Ubuntu, openSUSE y Fedora
Artículo relacionado:
Cómo configurar IP estática en Debian, Arch, Ubuntu, openSUSE y Fedora