La comunicación con las redes IP en GNU/Linux se hace a través de interfaces de red: dispositivos especiales que representan en el sistema operativo las conexiones de red del equipo. Sus nombres se componen de una letras según la naturaleza del interfaz y un número que sirve de índice, empezando por cero, para cuando hay más de una interfaz de este tipo en el sistema.
Por ejemplo, las tarjetas de red Ethernet tienen nombres que empiezan por «eth»(eth0,eth1,eth2). La herramienta que usaremos en este post es ifconfig(no es el único).
Salida en terminal de: ifconfig |
Ejecutandolo sin argumentos veremos la lista de interfaces configurados en el sistema. Con la opción -a veremos todos los interfaces disponibles, estén configurados o no. Si indicamos uno de ellos como argumento veremos su configuración. Por ejemplo, para ver la configuración del interfaz eth0 haríamos:
ifconfig eth0
Para poder usar un dispositivo de red, no sólo debe estar configurado, sino también activado. En el argot de redes, activar un interfaz es «levantarlo», y desactivarlo es «bajarlo». Cuando configuramos una dirección IP en el interfaz se activará automáticamente, pero podemos levantarlo o bajarlo explicitamente añadiendo la palabra up o down respectivamente, después de ifconfig .
ifconfig eth0 up ifconfig eth0 down
Configurar una IP en un Dispositivo
Configurar una IP en un dispositivo con ifconfig suele requerir solo indicar la dirección a continuación de ifconfig . Por ejemplo, si queremos asignar la IP 192.168.1.50 al dispositivo eth0, haríamos:
ifconfig eth0 192.168.1.50
Podríamos indicar también la máscara de red añadiendo el parametro netmask. La sintaxis de la máscara de red no usa los sufijos de clase C(«/24»), B(«/16»), A(«/8»), sino máscaras en notación de subred. por ejemplo, 255.255.255.0 correspondería a una clase C, y si quisieramos configurar la IP 192.168.1.50 con esa máscara en eth0, haríamos:
ifconfig eth0 192.168.1.50 netmask 255.255.255.0
Y podríamos añadir también la dirección de Broadcast para esta red, añadiendo la palabra broadcast:
ifconfig eth0 192.168.1.50 netmask 255.255.255.0 broadcast 192.168.1.255
Pero normalmente la dirección de broadcast no hace falta, por que se escoge siempre la última dirección del rango configurado por la dirección IP y la máscara de red.
¿Qué pasaría si quisieramos que el mismo interfaz tuviera varias direcciones ip diferentes?
Con ifconfig podemos crear una especie de «interfaz virtual» que tenga una dirección IP adicional usando ip aliasing. los interfaces así creados tendrán la forma : .
eth0:0 eth1:2
Y se pueden configurar como cualquier otro dispositivo:
ifconfig eth0:1 192.168.1.51 netmask 255.255.255.0 up
Si ahora hacemos un ifconfig -a veremos que se ha añadido un nuevo dispositivo llamado etho:1. este dispositivo es solo un «alias» de eth0, pero con una IP diferente. En la red física a la que este conectado etho podremos llegar a nuestro equipo con su IP original y con la nueva 192.168.1.51.
Si deseamos quitar esa IP del interfaz, con ifconfig tendríamos que bajar el interfaz virtual con:
ifconfig eth0:1 down
NOTA: la finalidad de este post no es iniciar una certificación cisco, tan solo ser una ayuda para cuando tenemos que trabajar con IP en GNU/Linux y los dispositivos que nos permiten tal trabajo, como tarjetas de RED tanto Ethernet como Inalámbricas.