Antes de que nuestro equipo pueda trabajar en red, es necesario que configuremos la/s interfaces de red. Las distribuciones de la misma familia utilizan el mismo método para realizar esta tarea. En este post veremos cómo hacerlo de manera permanente editando los archivos de texto /etc/network/interfaces y los que se encuentran dentro de /etc/sysconfig/network-scripts. En el primer caso (/etc/network/interfaces) se configuran las interfaces en Debian y derivados. Por otro lado, para CentOS y similares se utilizan archivos individuales ubicados dentro de /etc/sysconfig/network-scripts.
Es importate aclarar que las directivas de configuración indicadas en este post tienen como propósito servir de referencia. No constituyen una explicación de completa de cómo configurar interfaces de red en Linux, aunque sí un punto de partida.
Configuración de interfaces de red en Debian y derivados
A continuación podemos ver la configuración estática de eth0 (iface eth0 inet static
). Bajo esta modalidad, asignamos una dirección IP fija (192.168.0.200) a dicha interfaz:
iface eth0 inet static address 192.168.0.200 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.1 dns-nameservers 8.8.8.8 dns-nameservers 8.8.4.4
Luego, mediante las directivas netmask, network, y broadcast indicamos que esta interfaz se encontrará en la red 192.168.0.0/24. Finalmente, el gateway por defecto será 192.168.0.1 (generalmente, la IP de nuestro router) y utilizaremos el servicio de DNS de Google (servidores con direcciones 8.8.8.8 y 8.8.4.4).
En este mismo archivo podemos colocar las configuraciones de todas las interfaces. La otra opción es hacerlo en archivos individuales dentro de /etc/network/interfaces.d, aunque la primera es la más común. Más detalles en el man page de interfaces.
Miembros de la familia de CentOS
En CentOS, la forma típica de configurar las interfaces de red consiste en editar los archivos dentro de /etc/sysconfig/network-scripts. Por ejemplo, para configurar la interfaz enp0s3 utilizaremos /etc/sysconfig/network-scripts/ifcfg-enp0s3. Mediante las siguientes líneas realizamos la misma configuración que en el caso anterior:
BOOTPROTO="static" IPADDR=192.168.0.200 NETMASK=255.255.255.0 NETWORK=192.168.0.0 GATEWAY=192.168.0.1 DNS1=8.8.8.8 DNS2=8.8.4.4 ONBOOT="yes" NM_CONTROLLED=no
Para más detalles, podemos consultar la documentación de CentOS.
Para aplicar los cambios realizados en cualquiera de los dos casos, recordemos reiniciar el servicio de red:
systemctl restart network # CentOS systemctl restart networking # Debian
En el caso de Debian si el comando anterior muestra un error, bajemos y levantemos la interfaz:
ip link set dev eth0 down ip link set dev eth0 up
En cualquiera de los casos utilizaremos
ip address show
como verificación básica para comprobar que la IP deseada fue asignada a la interfaz correcta como vemos en la Fig. 1:
Espero que este post les haya resultado de utilidad. ¡Nos leemos en breve!