- Activa DHCP según el gestor de tu distro: ifupdown, Netplan, NetworkManager o Wicked.
- Verifica IP, gateway y DNS con ip, nmcli e ifconfig (net-tools).
- Gestiona rutas y políticas con iproute2 para diagnósticos avanzados.
Configurar una dirección IP dinámica en Linux es sencillo si conoces las herramientas adecuadas y el archivo de configuración que usa cada distribución. DHCP se encarga de asignarte IP, máscara, gateway y DNS automáticamente, pero la forma de activarlo cambia entre Debian, Arch, Ubuntu, openSUSE y Fedora.
En esta guía te lo explico paso a paso desde consola y, donde procede, también desde interfaz gráfica. Integro métodos con ifupdown, Netplan, NetworkManager, Wicked e iproute2, y añado comandos de comprobación, trucos y notas útiles como el uso de resolv.conf, nmcli, ip route y más. Vamos a por ello.
Antes de empezar: identifica tu interfaz y entiende los nombres
Antes de activar DHCP necesitas saber cómo se llama tu tarjeta de red. Los nombres modernos suelen ser enpXsY o wlpXsY (predictable names), mientras que en sistemas antiguos verás eth0 o wlan0.
Puedes listar las interfaces con ip y, si tienes net-tools instalado, también con ifconfig. Estos comandos te mostrarán el nombre exacto y si está UP:
ip addr
ip link show
sudo ifconfig -a # requiere instalar el paquete net-tools en distros modernas
Si usas NetworkManager, nmcli te resume conexiones y perfiles activos:
nmcli connection show
nmcli device show
Conceptos básicos: ifupdown, Netplan, NetworkManager, Wicked e iproute2
En Debian clásicamente se usa ifupdown con el archivo /etc/network/interfaces, donde defines interfaces lógicas con auto, allow-hotplug e iface. En Ubuntu moderno se usa Netplan para generar configuración de NetworkManager o systemd-networkd. En Fedora y RHEL la red suele gestionarse por NetworkManager, aunque persisten archivos tipo ifcfg-*. openSUSE usa Wicked por defecto en perfiles de servidor y NetworkManager en escritorios.
Además de los gestores, Linux integra iproute2, cuyo comando ip sustituye a herramientas antiguas (ifconfig/route). ip te permite ver y configurar enlaces, direcciones, rutas, ARP, reglas y tablas de enrutamiento. Para entender mejor los fundamentos, consulta protocolos de red. Más abajo verás los comandos clave para verificar que DHCP ha surtido efecto.
Configurar IP dinámica en Debian (ifupdown, CLI)
En Debian (y derivadas con ifupdown) lo normal es declarar la interfaz en /etc/network/interfaces. Activa el arranque automático con auto/allow-hotplug y define el método dhcp:
sudo nano /etc/network/interfaces
# Activa loopback
auto lo
iface lo inet loopback
# Interfaz cableada (ejemplo con eth0 o enp2s0)
auto eth0
allow-hotplug eth0
iface eth0 inet dhcp
# Para IPv6 DHCPv6 (opcional)
# iface eth0 inet6 dhcp
Guarda y reinicia la red. En sistemas con systemd, puedes reiniciar el servicio o bajar/subir la interfaz:
sudo systemctl restart networking
# o
sudo ifdown eth0 && sudo ifup eth0
Debian documenta directivas útiles en /etc/network/interfaces: auto, allow-auto, allow-hotplug, iface y mapping, además de hooks como pre-up, up, post-up, pre-down, down y post-down. Permiten ejecutar comandos antes/después de subir o bajar la interfaz, p. ej. rutas estáticas adicionalmente:
# Ejemplo de hooks en iface
iface eth0 inet dhcp
post-up ip route add 10.10.10.0/24 via 192.168.1.1
pre-down ip route del 10.10.10.0/24 via 192.168.1.1
Configurar IP dinámica en Ubuntu (Netplan)
Ubuntu usa Netplan para definir la red en /etc/netplan/*.yaml. Para habilitar DHCP en IPv4, ajusta dhcp4: true en la interfaz correspondiente:
ls /etc/netplan
sudo nano /etc/netplan/01-network-manager-all.yaml
# Ejemplo mínimo con DHCP IPv4 en eth0
network:
version: 2
ethernets:
eth0:
dhcp4: true
Aplica la configuración con netplan apply. Si usas NetworkManager como backend, Netplan generará el perfil correspondiente:
sudo netplan apply
ip addr show eth0
ip route | grep default
En entornos con múltiples interfaces, puedes combinar DHCP y estática en archivos YAML. Recuerda que las modificaciones son declarativas y persistentes, y que Netplan valida sintaxis antes de aplicar.
Configurar IP dinámica en Fedora / Red Hat / CentOS
Con NetworkManager activo, puedes usar nmcli o editar archivos ifcfg. Para mantener compatibilidad, el archivo ifcfg-eth0 (o enpXsY) admite BOOTPROTO=dhcp:
sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
NAME=eth0
DEVICE=eth0
ONBOOT=yes
Reinicia la conexión con nmcli o el servicio. NetworkManager aplicará DHCP y gestionará DNS si PEERDNS=yes:
nmcli connection reload
nmcli device reapply eth0
# o
sudo systemctl restart NetworkManager
Configurar IP dinámica en openSUSE (Wicked o NetworkManager)
openSUSE suele usar Wicked en servidores y NetworkManager en escritorios. Con Wicked, la configuración típica de DHCP se define en ifcfg-*:
sudo nano /etc/sysconfig/network/ifcfg-eth0
BOOTPROTO='dhcp'
STARTMODE='onboot'
MTU=''
Aplica cambios reiniciando Wicked o la interfaz. Con NetworkManager, puedes forzar método automático (DHCP) desde YaST, GNOME o nmcli:
sudo systemctl restart wicked
# o con NetworkManager
nmcli con mod "Wired connection 1" ipv4.method auto
nmcli con up "Wired connection 1"
Configurar IP dinámica en Arch Linux
En Arch, por defecto se usa NetworkManager en instalaciones de escritorio. Activa y usa DHCP con nmcli de forma directa:
sudo systemctl enable --now NetworkManager
nmcli device
# Supongamos enp3s0
nmcli con add type ethernet ifname enp3s0 con-name dhcp-enp3s0 ipv4.method auto
nmcli con up dhcp-enp3s0
Si prefieres systemd-networkd, crea un archivo .network con DHCP=ipv4 (o yes) y habilita el servicio. Es un método ligero y muy estable para servidores:
sudo nano /etc/systemd/network/20-wired.network
Name=enp3s0
DHCP=ipv4
sudo systemctl enable --now systemd-networkd
sudo systemctl restart systemd-networkd
Comprobaciones tras activar DHCP
Una vez aplicado DHCP, verifica IP, máscara y broadcast. ip addr y ifconfig (si lo tienes) te muestran el estado de la interfaz:
ip addr show enp3s0
sudo ifconfig enp3s0
Comprueba la puerta de enlace por defecto. El comando ip route devuelve la ruta principal y la métrica:
ip route | grep default
Con NetworkManager, puedes ver un resumen muy completo. nmcli device show lista IP, gateway y DNS para IPv4 e IPv6:
nmcli device show
# Entre otras, verás claves como:
# GENERAL.DISPOSITIVO, GENERAL.TIPO, GENERAL.ESTADO
# IP4.DIRECCION, IP4.PUERTA_DE_ENLACE, IP4.DNS, IP4.DNS
Si puedes hacer ping a tu gateway y a un dominio, todo está OK. Empieza por la puerta de enlace y luego prueba resolución DNS:
ping -c 3 192.168.1.1
ping -c 3 google.com
DNS: gestión rápida y opciones habituales
Con DHCP, el router suele entregar los DNS. Si quieres forzarlos, puedes hacerlo desde NetworkManager, Netplan o editando resolv.conf (si no es gestionado). En muchos sistemas modernos resolv.conf lo gestiona systemd-resolved o resolvconf.
Ejemplo clásico de resolv.conf (cuando no es gestionado automáticamente). Ojo, si el sistema indica que no lo edites a mano, usa el gestor correspondiente:
# /etc/resolv.conf
nameserver 1.1.1.1
nameserver 8.8.8.8
search ejemplo.local
Si usas NetworkManager con perfiles, puedes definir DNS manuales en la conexión. En formatos keyfile, el bloque admite method=manual/auto y dns=…:
# /etc/NetworkManager/system-connections/<perfil>
method=auto
# dns=8.8.8.8;1.1.1.1;
Lista de DNS públicos populares por si quieres probar alternativas. Úsalos si los de tu operadora te dan problemas de latencia o filtrado:
Quad9 (IBM): 9.9.9.9
OpenDNS: 208.67.220.220 / 208.67.222.222
Cloudflare: 1.1.1.1 / 1.0.0.1
Level3: 209.244.0.3 / 209.244.0.4
Verisign: 64.6.64.6 / 64.6.65.6
Google: 8.8.8.8 / 8.8.4.4
WATCH: 84.200.69.80 / 84.200.70.40
Comodo Secure DNS: 8.26.56.26 / 8.20.247.20
DNS Advantage: 156.154.70.1 / 156.154.71.1
Norton ConnectSafe: 199.85.126.10 / 199.85.127.10
SafeDNS: 195.46.39.39 / 195.46.39.40
OpenNIC: 50.116.23.211 / 107.170.95.180
SmartViper: 208.76.50.50 / 208.76.51.51
Dyn: 216.146.35.35 / 216.146.36.36
FreeDNS: 37.235.1.174 / 37.235.1.177
Alternate DNS: 198.101.242.72 / 23.253.163.53
Yandex DNS: 77.88.8.8 / 77.88.8.1
puntCAT: 109.69.8.51
iproute2: comandos clave para tu día a día
La suite iproute2 es el presente en Linux. El comando ip concentra link, addr, route, neigh y mucho más. Aquí tienes equivalencias y operaciones comunes:
Mostrar dispositivos y configuraciones. addr muestra IP y máscara; link muestra estado de la interfaz:
ip addr show
ip link show
Levantar o bajar una interfaz sin reiniciar servicios. Útil para pruebas rápidas:
ip link set enp3s0 up
ip link set enp3s0 down
Añadir o eliminar direcciones. Muy útil si quieres alias o probar IPs secundarios:
ip addr add 192.168.1.10/24 dev enp3s0
ip addr del 192.168.1.10/24 dev enp3s0
ARP y vecinos. Puedes listar y gestionar entradas desde ip neigh:
ip neigh show
ip neigh add 192.168.1.1 lladdr 00:11:22:33:44:55 nud permanent dev enp3s0
ip neigh del 192.168.1.1 lladdr 00:11:22:33:44:55 nud permanent dev enp3s0
Rutas. Añade, borra, cambia rutas y define el gateway predeterminado:
ip route add 10.8.0.0/24 via 192.168.1.2
ip route del 10.8.0.0/24 via 192.168.1.2
ip route chg 10.8.0.0/24 via 192.168.1.3
ip route add default via 192.168.1.1
ip route del default
ip route show
Tablas de enrutamiento múltiples. Linux permite hasta 253 tablas para políticas avanzadas. Decláralas en /etc/iproute2/rt_tables, añade rutas con table y crea reglas con ip rule.
# /etc/iproute2/rt_tables (añadiendo una tabla)
255 local
254 main
253 default
0 unspec
66 redes
# Añadir rutas en la tabla "redes"
ip route add 10.8.0.0/24 dev enp3s0 src 10.10.2.2 table redes
ip route add default via 10.10.2.1 dev enp3s0 table redes
# Reglas de política
ip rule add from 10.10.2.2/32 table redes
ip rule add to 10.10.2.2/32 table redes
# Ver
ip route list table redes
ip rule show
iproute2 también abarca funcionalidades como QoS, balanceo de carga por múltiples interfaces y túneles. Puedes priorizar tráfico, encapsular paquetes o repartir carga con reglas y colas avanzadas, aunque son temas más propios de redes complejas que del día a día con DHCP.
GUI: activar DHCP desde entornos gráficos (NetworkManager)
Si trabajas en GNOME, MATE u otro escritorio con NetworkManager, puedes activar DHCP desde el applet. Selecciona tu conexión cableada o Wi‑Fi, edita y pon Método IPv4 en Automático (DHCP).
En GNOME: Ajustes > Red > icono de rueda en la conexión > IPv4 > Método Automático (DHCP). En MATE: Sistema > Preferencias > Conexiones de red y edita la interfaz. Si desmarcas DNS automático, puedes definir DNS manuales sin tocar resolv.conf.
Notas útiles: ifconfig, reinicios de red y estática
ifconfig aún existe, pero suele requerir instalar net-tools. Te puede ayudar a verificar IP y tráfico rápidamente si vienes de entornos antiguos. No olvides que ip es la herramienta moderna.
Si alguna vez necesitas configurar una IP fija, recuerda que no debe solaparse con el rango DHCP de tu router. Antes de fijarla, puedes probar si está libre con ping (si no responde, suele estar libre):
sudo ping 192.168.0.15
Para persistencia, cada distro tiene su método: Debian con /etc/network/interfaces, Ubuntu con Netplan, Fedora/openSUSE con NetworkManager/Wicked. Evita mezclar gestores simultáneamente para no pisar configuraciones.
Con todo lo visto, activar DHCP en Debian, Arch, Ubuntu, openSUSE y Fedora es cuestión de apuntar al gestor correcto y verificar resultados con ip y nmcli. Además, saber leer rutas, DNS y reglas con iproute2 te da el control total para diagnosticar cualquier contratiempo y ajustar el sistema sin miedo.
Redactor apasionado del mundo de los bytes y la tecnología en general. Me encanta compartir mis conocimientos a través de la escritura, y eso es lo que haré en este blog, mostrarte todo lo más interesante sobre gadgets, software, hardware, tendencias tecnológicas, y más. Mi objetivo es ayudarte a navegar por el mundo digital de forma sencilla y entretenida.