miércoles, 2 de julio de 2014

Configurar direccionamiento IP por la consola de Linux

Configurar el direccionamiento IP en un sistema Linux a través de línea de comandos es una tarea sencilla, que como lo son la mayoría en Linux, se basa en archivos de configuración. A continuación se explica de manera sencilla como lograrlo en un sistema basado en Debian / Ubuntu.

El primer paso es saber que interfaces de red tenemos y que direccionamiento IP tienen, para lo cual usamos el comando ifconfig sin ningún parámetro con lo que obtenemos una salida similar a esta:

Salida del comando ifconfig
Salida del comando ifconfig

En este ejemplo se tienen dos interfaces de red: eth0 que hace referencia a la conexión cableada  y lo que hace referencia al loopback que se usa para conexiones localesy que no se suele configurar (más información de los dispositivos de red en Linux aquí).

Para modificar el direccionamiento se debe editar el contenido del archivo /etc/network/interfaces con algún editor de textos como vim, nano o gedit; por ejemplo en línea de comandos uso nano:

sudo nano /etc/network/interfaces

El contenido del archivo es algo parecido a este:

Editando archivo con nano
Editando archivo con nano

El primer bloque corresponde a la configuración de la interfaz lo, el segundo a la configuración de la red por cable (eth0), y todo lo que va precedido del símbolo # son comentarios.

Ahora analizando en detalle la configuración de la red cableada, la primera línea indica al sistema que levante la interfaz desde el inicio:

auto eth0 

La segunda línea indica que la red cableada está configurada con un direccionamiento IP dinámico, es decir haciendo uso del protocolo DHCP,:

iface eth0

Si se desea cambiar el direccionamiento de dinámico a estático en primer lugar se debe cambiar la palabra dhcp por static para que quede así:

iface eth0 inet static

Y finalmente se deben especificar los parámetros de configuración de la red así:

address 192.168.0.1 # Dirección IP para la interfaz / host
netmask 255.255.255.0 # Máscara de subred
network 192.168.0.0 # Dirección IP de la red
broadcast 192.168.0.255 # Dirección IP de Boradcast en la red
gateway 192.168.0.1 # Puerta de enlace de la red (router)
dns-nameservers 192.168.0.1 # Servidor DNS

Para que de algo similar a esto, a mayor número de interfaces mayor será el contenido del archivo:

Archivo /etc/network/interfaces
Archivo /etc/network/interfaces
Finalmente para que se tomen los cambios primero se debe bajar la interfaz:

ifdown eth0


Luego subirla:

ifup eth0

Y finalmente ejecutamos ifconfig para corroborar que todo haya quedado bien configurado.

Más información del archivo /etc/network/interfaces