Como usar el comando ifconfig

Este artículo es una traducción del tutorial original en inglés

Aprender a utilizar el comando ifconfig en Linux, es necesario para interactuar con nuestros dispositivos de red, a pesar de ser viejo y reemplazado en los años ´90 por el comando ip, el comando ifconfig continúa siendo el comando más usado para configurar la interfaz de red, la IP y la MAC, la máscara de red, entre otras cosas, para la mayoría de los administradores de sistemas.

Nota: Una interfaz de red es un dispositivo de red.

Visualización y comprensión de la salida de ifconfig

Si ejecutamos el comando ifconfig sin parámetros adicionales, nos muestra las interfaces de red disponibles, sus direcciones IP, máscaras de red, estado y más.

Como usuario root ejecute ifconfig

La primer interfaz de red (dispositivo de hardware) el enp2s0 que es la interfaz de Ethernet.

Las flags indican el estado del dispositivo. Los estados de los dispositivos de red pueden incluir: UP, BROADCAST, MULTICAST, RUNNING, ALLMULTI y PROMISC o MONITOR para interfaces inalámbricas.

Donde:

UP: El dispositivo está activo.

BROADCAST: El dispositivo o interfaz puede enviar tráfico a otro dispositivo cruzando subredes.

MULTICAST: Esta flag permite enviar datos a múltiples destinos simultáneamente.

RUNNING: Esta flag informa que la interfaz de red está disponible y funcionando.

ALLMULTI: Permite recibir todos los paquetes de la red.

PROMISC: Esta flag escuchará y capturará todo el tráfico dentro de la red, generalmente se usa para rastrear.

MONITOR (Sólo inalámbrico): Permite capturar el tráfico sin estar conectado a la red, también se usa para detectar redes inalámbricas o auditar la transmisión. La sintaxis es:

iwconfig <wireless-interface> mode monitor“.

Además de los indicadores, el comando ifconfig también mostrará las siguientes propiedades:

The MTU (Unidad de máxima transferencia): Indica que el protocolo de comunicación puede procesar el tamaño de byte más grande. Aumentarlo o disminuirlo afecta el rendimiento.

Ether: Aquí encontramos la dirección MAC, nuestro hardware de interfaz o dirección física. (Más información en este tutorial información sobre MAC address )

txqueuelen (Longitud de la cola de transmisión): Indica el límite de paquetes en cola durante la transferencia. Editar esta propiedad es útil para optimizar el rendimiento de nuestra red como se explica más adelante en este tutorial.

RX packets: Permite ver paquetes recibidos en bytes y errores, si existen.

TX packets & TX errors: Permite ver paquetes transferidos en bytes y errores, si existen.

Dentro de RX Packets encontramos:

RX errors: Errores recibiendo datos.

Dropped: Los paquetes recibidos fueron descartados.

Overruns: Notifica a FIFO OVERRUNS (Primero en entrar, primero en salir). Significa que nuestro dispositivo está lleno de capacidad pero sigue intentando procesar el tráfico.

Frame: Frames rotos o ignorados.

Dentro de TX Packets encontramos:

TX errors: Errores durante la transferencia de datos.

Dropped: Los paquetes enviados fueron descartados.

Overruns: Notifica a FIFO OVERRUNS (Primero en entrar, primero en salir). Significa que nuestro dispositivo está lleno de capacidad pero sigue intentando procesar el tráfico.

Carrier: Cuando hay un desajuste en la negociación de la conexión, generalmente cuando dos dispositivos de comunicación tienen diferentes configuraciones, como la negociación automática para un dispositivo mientras que el otro dispositivo tiene configuración manual.

Collisions: Sucede cuando dos dispositivos dentro de la red transfieren datos simultáneamente, ambos dispositivos detectan la transferencia simultánea, luego el operador permite que los paquetes se turnen para ser transferidos.

Nota: No hace mucho tiempo estábamos acostumbrados a ver nuestros dispositivos Ethernet como “eth0”, “eth1”, etc. Dado que los nombres de interfaz de red predecibles de systemd v197 se asignan a dispositivos de red. Los nombres se basan en el firmware, la topología y la ubicación del dispositivo dentro de la placa base.

Después del dispositivo Ethernet, veremos el bucle de retorno. La interfaz de bucle invertido no es un dispositivo de red real, sino uno virtual destinado únicamente a la comunicación local. Si no tenemos una conexión de red, la interfaz Loopback (definida como “lo”) nos permitirá hacer ping a nuestro host local o interactuar con aplicaciones que dependen de la red.

Las siguientes interfaces también son virtuales y pertenecen a dispositivos virtuales invitados de virtualbox, no tienen características extrañas que explicar.

En mi caso, el wlp3s0 es la interfaz inalámbrica, que, como se mencionó anteriormente y en contraste con los dispositivos cableados, es capaz de detectar redes sin ser parte de ellas en su MODO DE MONITOR.

Si queremos que Linux nos devuelva solo las tarjetas de red inalámbrica, en lugar de ejecutar “ifconfig” podemos ejecutar “iwconfig“:

El resultado nos informa que wlp3s0 es el único dispositivo de red inalámbrica, siendo dispositivos físicos o virtuales enp2s0, vmnet1, lo y vmnet8 sin funcionalidad inalámbrica.

ifconfig permite mostrar información en una interfaz de red específica especificando su nombre, en mi caso escribo:

ifconfig enp2s0

Cómo usar ifconfig para deshabilitar y habilitar interfaces:

En algunos casos, para realizar cambios en nuestra interfaz, primero debemos deshabilitarla, aplicar los cambios que deseamos y volver a habilitarla. Ese es el caso, por ejemplo, cuando queremos editar la dirección MAC física de la red o el modo de tarjeta (por ejemplo, Monitor). Los comandos para deshabilitar y habilitar interfaces son intuitivos:

ifconfig <interface> down

En mi caso:

ifconfig enp2s0 down

Como puede ver, después de deshabilitarla, el ping de la tarjeta de red no funciona, si queremos restaurar nuestro tipo de interfaz:

ifconfig enp2s0 up

Ahora el ping funciona de nuevo después de habilitar nuestra interfaz

Cómo usar ifconfig para cambiar nuestras direcciones IP y MAC:

Para actualizar nuestra dirección IP, necesitamos invocar ifconfig, especificar la interfaz de red y configurar la dirección IP, la sintaxis es:

ifconfig <Interface>  <IP>

En mi caso:

ifconfig enp2s0 172.31.124.145

Luego para confirmar volvemos a correr:

ifconfig enp2s0

Como puede observar, la dirección IP cambió de 172.31.124.144 a 172.32.124.145.

Ahora, si queremos cambiar nuestra dirección MAC para omitir cualquier clonación de la lista blanca por otra diferente o para evitar dejar nuestra MAC real en un registro, podemos hacerlo utilizando ifconfig, primero debemos configurar nuestra interfaz, configurar la nueva MAC, direccionar y habilitar la tarjeta de red nuevamente:

ifconfig enp2s0 down

ifconfig enp2s0 hw ether 00:00:00:00:00:01

ifconfig enp2s0 up

ifconfig enp2s0

Como puede observar, la tarjeta de red tiene una nueva dirección MAC (00: 00: 00: 00: 00: 01).

Cómo usar ifconfig para cambiar la máscara de red:

La máscara de red, que se utiliza para dividir subredes, también se puede editar utilizando ifconfig.

Para cambiar la máscara de red de una interfaz, la sintaxis es:

ifconfig <interface> netmask 255.255.255.0

Para cambiarlo (en mi caso) sería:

ifconfig enp2s0 netmask 255.255.255.0

Como puede observarse la máscara de red fue editada con éxito.

ifconfig permite usar una cadena de parámetros para configurar todas las propiedades que queremos dentro de un solo comando, preste atención para no incluir comandos que necesiten la interfaz para funcionar. Un ejemplo práctico sería:

Ifconfig enp2s0 10.0.108.68 netmask 255.255.255.0 mtu 1000

A pesar de estar limitado en comparación con ip, ifconfig sigue siendo un comando muy útil para editar la configuración de nuestras interfaces de red. Personalmente prefiero usar ifconfig, pero en un próximo tutorial mostraré el uso de ip.


Gracias por seguir LinuxHint. Continúe siguiéndonos para obtener actualizaciones y nuevos consejos sobre Linux. Si tiene alguna pregunta sobre este tutorial u otro problema de Linux, comuníquese con nosotros a través de https://support.linuxhint.com