Usando #ifconfig, en Ubuntu/Debian/Devuan

En este post hablaremos de “ifconfig“. Como su nombre indica “interface configuration” es una utilidad para manejar o administrar la configuración de la red a travéz de la línea de comandos.

Ahora me preguntarás: ¿Y /etc/network/interfaces?

Y yo te diré: “Los cambios que hace ifconfig son hechos al vuelo, es decir, cuando reinicies el servicio de la red esos cambios se pierden y se aplican los existentes en /etc/network/interfaces”.

Y ahora me preguntarás nuevamente: Conozco Debian y Ubuntu… ¿Qué demonios es Devuan?

En una corta descripcion: Según WikipediaDevuan es un sistema operativo libre tipo linux basado en Debian GNU/Linux pero siendo un fork para no usar systemd”.

Nota: ifconfig está “deprecated”, es decir, está descontinuado a partir de Debian 9 y Ubuntu 16.04, pero se puede instalar mediante el siguiente comando:

apt install net-tools

Ahora bien, ¿¿¿qué me traes???

Bueno hoy estaba configurando un TL-WR1043ND v3 con LEDE, y LEDE cuando flasheas un router inhalámbrico te asigna la configuración 192.168.1.1 por default, pero yo no quiero editar mi archivo /etc/network/interfaces, por lo cual recurro a ifconfig que puede hacer este tipo de operaciones sin tocar ningun archivo de configuración.

Ahora bien, como funciona eso? Fácil, consola en mano y como root ejecuta:

# ifconfig eth0 192.168.1.11 netmask 255.255.255.0 broadcast 192.168.1.255

Así vemos que hemos asignado la dirección 192.168.1.11 con la máscara de red 255.255.255.0 y un broadcast 192.168.1.255. Mas dudas solo ejecuta:

# man ifconfig

Y listo, opciones, tiene bastantes.

Ahora bien, resolví el problema. Pero y ifconfig?

Ifconfig tiene opciones para:

Ver la configuración de la red:

# ifconfig
eth0      Link encap:Ethernet  HWaddr d0:1b:a2:95:1e:31  
          inet addr:10.10.1.12  Bcast:10.10.1.255  Mask:255.255.255.0
          inet6 addr: fe80::d217:c2ff:fe95:1f31/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:17509168 errors:0 dropped:25 overruns:0 frame:0
          TX packets:30418435 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:5428374793 (5.0 GiB)  TX bytes:42197978030 (39.2 GiB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:388436 errors:0 dropped:0 overruns:0 frame:0
          TX packets:388436 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:27676676 (26.3 MiB)  TX bytes:27676676 (26.3 MiB)
# ifconfig eth0
eth0      Link encap:Ethernet  HWaddr d0:1b:a2:95:1e:31  
          inet addr:10.10.1.12  Bcast:10.10.1.255  Mask:255.255.255.0
          inet6 addr: fe80::d217:c2ff:fe95:1f31/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:17509168 errors:0 dropped:25 overruns:0 frame:0
          TX packets:30418435 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:5428374793 (5.0 GiB)  TX bytes:42197978030 (39.2 GiB)

Apagar/encender una interfaz de red:

# ifconfig eth0 down/up <- habilita/deshabilita la interfaz
# ifup eth0 <-habilita la interfaz
# ifdown eth0 <-deshabilita la interfaz

Pone la tarjeta de red en modo promiscuo:

# ifconfig eth0 promisc

Explicando un poco, en informática, el modo promiscuo es aquel en el que una computadora conectada a una red compartida, tanto la basada en cable de cobre como la basada en tecnología inalámbrica, captura todo el tráfico que circula por ella. Este modo está muy relacionado con los sniffers que se basan en este modo para realizar su tarea.
Y para eliminar el modo promiscuo:

# ifconfig eth0 -promisc

E incluso, ifconfig se puede usar para cambiar la MAC de nuestra tarjeta de red:

ifconfig eth0 hw ether AA:BB:CC:DD:EE:FF

De hecho también se puede usar para crear alias de nuestra tarjeta de red:

# ifconfig eth0:0 192.168.1.11

Y comprobamos los cambios:

#ifconfig
eth0      Link encap:Ethernet  HWaddr d0:1b:a2:95:1e:31   
          inet addr:10.10.1.12  Bcast:10.10.1.255  Mask:255.255.255.0
          inet6 addr: fe80::d217:c2ff:fe95:1f31/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:17513290 errors:0 dropped:25 overruns:0 frame:0
          TX packets:30423694 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:5430131340 (5.0 GiB)  TX bytes:42198767008 (39.3 GiB)

eth0:0    Link encap:Ethernet  HWaddr d0:1b:a2:95:1e:31  
          inet addr:192.168.1.11  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:389949 errors:0 dropped:0 overruns:0 frame:0
          TX packets:389949 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:27771052 (26.4 MiB)  TX bytes:27771052 (26.4 MiB)

Y cuando no necesitemos más el alias, lo deshabilitamos calmadamente:

# ifconfig eth0:0 down

Como vemos, el comando ifconfig es muy útil. Sólo queda que ustedes lo usen debidamente y aprovechen sus muchas bondades. Hasta la próxima, y espero les sirva.

2 comentarios de “Usando #ifconfig, en Ubuntu/Debian/Devuan

  1. Ifconfig fue sustituido por ip, para qué instalar ifconfig si ip viene instalado por defecto y hace lo mismo?

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *