25 abril, 2024

IsProto

Soluciones para Redes e Internet

IP Estática – Asignación de direcciones IP en Linux

ip estatica

Una dirección IP estática es aquella que es asignada de forma fija a través de la configuración de red, establecida en los intervalos de red preestablecidos de acuerdo al rango de red (o máscara de red).

Dirección IP estática y dinámica

Para acceder a una red, se requiere de direcciones IP que funcionen como medio para localizar los dispositivos origen y destino, los cuáles intercambiarán paquetes entre sí de acuerdo a un protocolo de red, que en particular se manejan principalmente dos: UDP y TCP/IP.

La configuración de una dirección IP sobre un dispositivo se puede realizar normalmente a través de uno de los dos siguientes procedimientos:

  • DHCP: Se utiliza para la asignación dinámica de dirección IP, a través de un descubrimiento de direcciones entre servidor y cliente, utilizando los puertos de UDP 67 (para el servidor) y 68 (para el cliente).
  • Estática: La asignación de la dirección IP del host queda en manos del usuario, en donde se puede asignar una dirección IP que se encuentre en el rango establecido por la puerta de enlace (gateway), para los usuarios de la red.

Configuración de una dirección IP estática

El gateway contiene la información necesaria para el establecimiento de cualquier dirección IP, de acuerdo al rango de la máscara de red (netmask), normalmente la asignación estática se realiza dentro de una red local, salvo en el caso de un ISP (proveedor de servicios de internet).

El objetivo de ésta sección es mostrar cómo configurar una dirección IP de forma estática. Una de las ventajas que te permite la asignación estática de IP es permitirte mantener un control de las direcciones utilizadas, para evitar traslapes, así como mantener un control mayor sobre los dispositivos conectados a la red.

Configuración de una dirección IP estática

La configuración de direcciones IP que mostraremos a continuación funcionan en ambientes de Linux, tanto Debian, RedHat o Slackware.

Asignación de una dirección IP estática al vuelo

Antes de la asignación de una dirección IP, es necesario levantar a interfaz que vamos a utilizar, por ejemplo, si vamos a utilizar la interfaz de red eth0, utilizaremos ifconfig para levantar la interfaz de red:

ifconfig eth0 up

O para distribuciones Red Hat (Fedora, CentOS) podemos utilizar: ifup eth0.

Configuración de IP usando ip addr

La forma más sencilla de asignar una dirección IP estática es a través del comando ip (o ifconfig), comando con el cual podremos asignar la dirección en forma temporal, es decir hasta el momento de reiniciar el equipo, o bien la asignación de una nueva dirección IP.

Para ello utilizamos el comando:

ip addr add [dirección IP] dev [interfaz]

Con el comando anterior realizamos la asignación de una dirección IP estática utilizando la interfaz de red deseada. Por ejemplo si deseamos asignar la dirección 192.168.1.2 a un dispositivo de la red, cuya interfaz de red sea eth0, el comando a utilizar es:

ip addr add 192.168.1.2 dev eth0

Y eso es todo, la asignación de la dirección IP está configurada. Para comprobar que la dirección IP estática fue configurada de forma exitosa, simplemente realizamos un ping hacia la dirección desde cualquier dispositivo conectado en la misma red.

ip estatica

Como tenemos respuesta del ping hacia la dirección IP que asignamos de forma estática, podemos ver que la asignación fue exitosa.

Configuración de IP por ifconfig

También es posible realizar la configuración de una dirección IP estática utilizando el comando ifconfig, con la ventaja que el comando también está disponible en otras distribuciones de Linux, incluso Unix y MacOS.

Para realizar la configuración de una dirección IP estática utilizando ifconfig, simplemente seguimos la siguiente sintaxis:

ifconfig [interfaz] [dirección IP] netmask [máscara de red] broadcast [dirección broadcast]

Para el ejemplo anterior, el comando utilizado para realizar la configuración de la interfaz de red, con la asignación de la dirección IP es el siguiente:

ifconfig eth0 192.168.1.2 netmask 255.255.255.0 broadcast 192.168.1.255

En donde

  • eth0 es la interfaz de red.
  • 192.168.1.2 la dirección IP estática que deseamos asignar.
  • 255.255.255.0 es el rango de direcciones posibles en donde podemos asignar una dirección IP, en éste caso el rango va desde 192.168.1.0 hasta 192.168.1.254, quitando el broadcast y la dirección de la puerta de enlace (gateway).
  • 192.168.1.255 es el broadcast, dirección IP a la que se envía todo el tráfico de red cuando hace cualquier petición.

Configuración de una dirección IP estática desde el arranque

Antes de la asignación de la dirección, es muy importante configurar la interfaz de red sobre la cuál la dirección IP estática será asignada. Para contamos con las utilidades de networking para proporcionar algunas propiedades a la interfaz de red, levantarla y asignar su dirección IP estática.

Para ello podemos configurar el script /etc/sysconfig/network-scripts/ifcfg-[nombre_interfaz] para proporcionar la asignación de la dirección IP para la interfaz de red indicada, que en particular si es la primer interfaz de red, normalmente se llama eth0 (y para las subsiguientes eth1, eth2, etc.).

Distribuciones RedHat (Fedora, CentOS)

Un ejemplo de script de configuración que podría ser utilizado en Red Hat, Fedora y CentOS podría ser el siguiente:

Contenido de la configuración: /etc/sysconfig/network-scripts/ifcfg-eth0:

DEVICE=”eth0″
BOOTPROTO=static
ONBOOT=yes
TYPE=”Ethernet”
IPADDR=192.168.1.2
NAME=”Mi host”
HWADDR=00:0B:15:1D:1A:5C
GATEWAY=192.168.1.254

En donde indicamos que la interfaz de red eth0 es estática, carga desde el inicio (booteo), de tipo Ethernet, dirección IP 192.168.1.2 y perteneciente a la red de la puerta de enlace (o gateway) 192.168.1.254.

Finalmente reiniciamos el servicio con el comando:

service network restart

Distribuciones Debian (Ubuntu, Linux Mint)

También es posible hacerlo permanente a través de editar el archivo /etc/network/interfaces, en donde un ejemplo de configuración es el siguiente:

auto eth0
iface eth0 inet static
address 192.168.1.2
netmask 255.255.255.0
gateway 192.168.1.254

Nota: Hay que reiniciar el servicio después de introducir los valores con el comando: sudo /etc/init.d/networking restart en modo superusuario.

Otros comandos de redes útiles

ip estatica

También existen otros comandos que son bastante útiles al momento de configurar o monitorear la red, ente éstos comandos tenemos:

Ver direcciones IP de la misma red

Podemos ver las direcciones IP de otros dispositivos conectados a la misma red a través del comando:

ip neighbor

Mostrar interfaces actuales del host

Para mostrar las direcciones IP de las interfaces de red levantadas en el equipo, podemos utilizar cualquiera de los siguientes comandos:

  • ifconfig
  • ip addr show

Remover dirección IP de interfaz

También es posible remover una dirección IP de una interfaz, tanto estática o asignada por DHCP, para ello utilizamos el siguiente comando:

ip addr del [dirección IP] dev [interfaz]

Por ejemplo, si queremos remover la dirección IP estática que hemos estado manejando, el comando a utilizar sería:

ip addr del 192.168.1.2/24 dev eth0

Mostrar tablas de enrutamiento

Podemos consultar las tablas de enrutamiento para los dispositivos de la red, es decir las rutas que siguen los paquetes enviados por los diferentes dispositivos o hosts, utilizamos el comando:

ip route show

Conclusiones

Una vez que conoces el procedimiento para configurar una dirección IP estática, ahora tienes el control de tu red: Puedes modificar las direcciones IP, removerlas, levantar interfaces de red, conocer las direcciones de los hosts, entre otras utilidades mostradas aquí.

Es importante mostrar ésta guía como muy básica para la asignación de una dirección IP estática, ya que existen muchos otros temas, por ejemplo asignar enrutamiento de paquetes, cambiar la puerta de enlace por defecto, rutas estáticas, DHCP, entre otros temas, que mostraremos en otros artíclulos, fuera del alcance de la guía actual, pero bastantes útiles para el dominio de tu red.