Algo que le ocurre a muchos usuarios que actualizan su sistema Debian o instalan directamente Debian 9, 10 u 11 es que algunas cosas (en realidad pocas) no son como solían ser. Una de las más llamativas es la ausencia del comando ifconfig, que aparentemente no se instala con el sistema base, ¿qué está ocurriendo? No hay problema, en esta entrada te explico cómo instalar ifconfig en Debian 9, 10 y 11.
Tabla de contenidos
ifconfig: no se encontró la orden
El comando ifconfig es uno de los comandos que si bien se usan relativamente poco, sí son de uso obligatorio, pues además de permitirnos ciertas configuraciones de los adaptadores de red, sirve para mostrar información sobre estos adaptadores, estado, configuración IP, etc.
De hecho, normalmente tras la instalación del sistema lo primero que hacemos es comprobar que la red está correctamente configurada y funcionando, simplemente invocándolo en consola.
Pero desde que tenemos Debian 9 Stretch, Debian 10 Buster y Debian 11 Bullseye nos encontramos con el siguiente problema tras lanzar ifconfig:
En lugar de obtener la información de los adaptadores de red presentes en el sistema, obtenemos el mensaje de error -bash: ifconfig: no se encontró la orden. La primera reacción es pensar que el sistema base no incluye el paquete al que pertenece ifconfig. Y, de hecho, así es. Pero, ¿por qué?
¿Seguro que quieres instalar ifconfig en Debian 9, 10 u 11?
Efectivamente, ifconfig ha pasado a ser un comando obsoleto (deprecated). Pero si ifconfig está obsoleto será porque hay un nuevo comando que lo va a sustituir. Y así es.
En Debian 9 y 10 ahora tenemos el comando ip que nos ofrece toda la funcionalidad de ifconfig y muchas más nuevas funcionalidades. Podemos ver un resumen del uso de ip simplemente lanzando el comando en consola:
Por ejemplo, si queremos ver la configuración de los adaptadores de red que tenemos instalados en el sistema, el comando ip address hará el trabajo:
~$ ip address 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN group default qlen 1000 link/ether 08:00:27:57:4e:56 brd ff:ff:ff:ff:ff:ff inet 192.168.112.114/24 brd 192.168.112.255 scope global enp0s3 valid_lft forever preferred_lft forever inet6 fe80::a00:27ff:fe57:4e56/64 scope link valid_lft forever preferred_lft forever
En el ejemplo podemos ver dos interfaces que aparecen numeradas y que son lo y enp0s3, con sus correspondientes valores de red. Vemos que ip address equivale a ifconfig.
Pero, ¿qué podemos hacer si no queremos aprender a usar, por ahora, el nuevo comando?
Cómo instalar ifconfig en Debian 9, 10 y 11
Tenemos buenas noticias: ifconfig, al estar en estado obsoleto, todavía se puede usar. Sólo tenemos que instalar el paquete que lo contiene y ya lo tendremos disponible. Y, lo mejor de todo, ifconfig puede convivir con el nuevo comando ip sin que haya problemas.
El paquete que contiene ifconfig es net-tools. Instalamos net-tools mediante apt:
~$ sudo apt update && sudo apt -y install net-tools
Y por fin tenemos disponible ifconfig en nuestro sistema Debian 9, Debian 10 ó Debian 11. Hay que señalar que este comando se instala en la carpeta /sbin/, por lo que si no tenemos esta carpeta en nuestra variable de entorno PATH, deberemos indicar la ruta completa para usar el comando. En este caso, lanzaríamos el comando ifconfig de la siguiente forma:
~$ /sbin/ifconfig enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.112.114 netmask 255.255.255.0 broadcast 192.168.112.255 inet6 fe80::a00:27ff:fe57:4e56 prefixlen 64 scopeid 0x20<link> ether 08:00:27:57:4e:56 txqueuelen 1000 (Ethernet) RX packets 53224 bytes 77491698 (73.9 MiB) RX errors 8 dropped 0 overruns 0 frame 0 TX packets 25884 bytes 2059823 (1.9 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 device interrupt 9 base 0xd020 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1 (Local Loopback) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Todo listo.
Conclusión
Ahora que ya sabemos cómo instalar ifconfig en Debian, ya podemos usar ifconfig e ip indistintamente. Lo ideal es ir aprendiendo a usar ip poco a poco, dejando ifconfig para momentos en que necesitemos hacer alguna tarea rápidamente si no sabemos aún cómo hacerla con ip.
La idea es que en algún momento, no sabemos en qué futura versión de Debian, el paquete obsoleto net-tools dejará de estar disponible. Pero tenemos tiempo de sobra para aprender el uso de ip.
¡Apóyanos!
¿Te ha resultado interesante el artículo? ¿Quieres ayudarnos a mantener este sitio en línea y crear nuevos artículos y tutoriales como este?
Si es así puedes hacerlo dejando una propina de tan sólo 1 $ desde PayPal:
¡Gracias!