
Podemos configurar interfaces de red en Linux durante el tiempo de instalación. Sin embargo, es posible que algunos de ustedes quieran hacer esto después de la instalación o cambiar la configuración existente. Como ya sabe, lo primero que necesita saber es cuántas interfaces están disponibles en el sistema para configurar la red desde la línea de comandos. Este tutorial detallado cubre todas las formas de enumerar y encontrar interfaces de red disponibles en los sistemas operativos Linux y Unix.
Encuentre interfaces de red disponibles en Linux
Podemos encontrar las tarjetas de red disponibles de varias formas. Esta guía describe 10 formas de enumerar las tarjetas de interfaz de red en Linux.
1. Enumere las interfaces de red con el comando ifconfig
El método más común para encontrar los detalles de la interfaz de red con ifconfig
Mando. Creo que algunos de los usuarios de Linux aún podrían usar esto.
$ ifconfig -a
Salida de muestra:
enp5s0: flags=4098<BROADCAST,MULTICAST> mtu 1500 ether 24:b6:fd:37:8b:29 txqueuelen 1000 (Ethernet) 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 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 1000 (Local Loopback) RX packets 171420 bytes 303980988 (289.8 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 171420 bytes 303980988 (289.8 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 wlp9s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.225.37 netmask 255.255.255.0 broadcast 192.168.225.255 inet6 2409:4072:6183:c604:c218:85ff:fe50:474f prefixlen 64 scopeid 0x0<global> inet6 fe80::c218:85ff:fe50:474f prefixlen 64 scopeid 0x20<link> ether c0:18:85:50:47:4f txqueuelen 1000 (Ethernet) RX packets 564574 bytes 628671925 (599.5 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 299706 bytes 60535732 (57.7 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Como puede ver en el resultado anterior, tengo dos interfaces de red enp5s0
(adaptador ethernet cableado a bordo) y wlp9s0
(Adaptador WLAN) en mi caja Linux. Aquí, lo
es una interfaz de bucle invertido que se utiliza para acceder a todos los servicios de red localmente. Tiene una dirección IP 127.0.0.1
.
Podemos usar eso también 'ifconfig'
Comando en muchos sabores de UNIX, por ejemplo FreeBSDpara enumerar las tarjetas de red disponibles.
2. Enumere las interfaces de red con el comando ip
los 'ifconfig'
El comando está obsoleto en las últimas versiones de Linux. Entonces puedes usar 'ip'
Comando para mostrar las interfaces de red como se muestra a continuación.
$ ip link show
Salida de muestra:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: enp5s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000 link/ether 24:b6:fd:37:8b:29 brd ff:ff:ff:ff:ff:ff 3: wlp9s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DORMANT group default qlen 1000 link/ether c0:18:85:50:47:4f brd ff:ff:ff:ff:ff:ff
También puede utilizar los siguientes comandos.
$ ip addr
$ ip -s link
¿Notó que este comando también muestra el estado de conexión de las interfaces de red? Si observa detenidamente la salida anterior, encontrará que mi tarjeta ethernet no está conectada a un cable de red (consulte la palabra «BAJO» en la edición anterior). Y la tarjeta de red inalámbrica está conectada (vea la palabra «ELEVADO»). Para obtener más información, consulte también nuestra guía anterior. Encuentre el estado conectado de las interfaces de red en Linux.
Estos dos comandos (ifconfig
y ip
) son suficientes para encontrar las tarjetas de red disponibles en sus sistemas Linux.
Sin embargo, existen algunos otros métodos para enumerar las interfaces de red en Linux.
3. Enumere las interfaces de red con el directorio / sys / class / net /
El kernel de Linux almacena los detalles de la interfaz de red dentro /sys/class/net
Directorio. Puede consultar la lista de interfaces disponibles en este directorio.
$ ls /sys/class/net
Salida de muestra:
enp5s0 lo virbr0 wlp9s0
4. Enumere las interfaces de red con el archivo / proc / net / dev
Para los sistemas operativos Linux, /proc/net/dev
El archivo contiene estadísticas sobre las interfaces de red.
Para ver las tarjetas de red disponibles, simplemente vea su contenido con el comando:
$ cat /proc/net/dev
Salida de muestra:
Inter-| Receive | Transmit face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed lo: 2836 30 0 0 0 0 0 0 2836 30 0 0 0 0 0 0 enp5s0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 wlp9s0: 557664882 402062 0 0 0 0 0 0 20087136 165358 0 0 0 0 0 0 virbr0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
5. Enumere las interfaces de red mediante el comando netstat
los netstat
El comando muestra varios detalles, como conexiones de red, tablas de enrutamiento, estadísticas de interfaz, conexiones de enmascaramiento y membresías de multidifusión.
$ netstat -i
Salida de muestra:
Kernel Interface table Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg enp5s0 1500 0 0 0 0 0 0 0 0 BMU lo 65536 30 0 0 0 30 0 0 0 LRU virbr0 1500 0 0 0 0 0 0 0 0 BMU wlp9s0 1500 402063 0 0 0 165361 0 0 0 BMRU
Tenga en cuenta que netstat no está actualizado. El reemplazo de "netstat -i"
es "ip -s link"
. También tenga en cuenta que este método solo enumera las interfaces activas, no todas las interfaces disponibles.
6. Enumere las interfaces de red con el comando nmcli
los nmcli es una herramienta de línea de comandos para controlar NetworkManager e informar sobre el estado de la red. Se utiliza para crear, ver, editar, eliminar, activar y desactivar conexiones de red y mostrar el estado de la red.
Si tiene un sistema Linux con Network Manager instalado, puede enumerar las interfaces de red disponibles usando la herramienta nmcli con los siguientes comandos:
$ nmcli device status
Salida de muestra:
DEVICE TYPE STATE CONNECTION wlp9s0 wifi connected JioFi4_12E9FE virbr0 bridge connected (externally) virbr0 p2p-dev-wlp9s0 wifi-p2p disconnected -- enp5s0 ethernet unavailable -- lo loopback unmanaged --
También puede usar este comando para ver las interfaces de red en su sistema Linux:
$ nmcli connection show
La mayoría de las utilidades anteriores están preinstaladas en la mayoría de los sistemas Linux y Unix. También hay algunas utilidades externas más para mostrar una lista de tarjetas de red.
7. Muestra la lista de interfaces de red con hwinfo.
Hwinfo es una utilidad de línea de comandos para ver información de hardware en un sistema Linux. Busca el hardware presente en un sistema Linux y muestra los detalles completos de cada dispositivo de hardware.
Hwinfo está disponible en los repositorios oficiales de muchas distribuciones de Linux. Para instalar hwinfo en sistemas basados en RPM, haga lo siguiente:
$ sudo dnf install hwinfo
En sistemas basados en Deb, puede instalar hwinfo con el siguiente comando:
$ sudo apt install hwinfo
Después de la instalación, ejecute el siguiente comando para enumerar los nombres de las interfaces de red que utilizan la utilidad hwinfo:
$ sudo hwinfo --short --network
Salida de muestra:
network interface: enp5s0 Ethernet network interface virbr0 Ethernet network interface wlp9s0 Ethernet network interface lo Loopback network interface
8. Muestre las interfaces de red con lshw. a
Lshw (escucha de hardware) es una utilidad CLI que proporciona información detallada sobre la configuración de hardware de un sistema Linux.
Para ver la lista de tarjetas de red en Linux usando la utilidad lshw, ejecute:
$ sudo lshw -class network -short
Salida de muestra:
H/W path Device Class Description =============================================================== /0/100/1c.1/0 enp5s0 network RTL810xE PCI Express Fast Ethernet controller /0/100/1c.3/0 wlp9s0 network AR9285 Wireless Network Adapter (PCI-Express)
9. Interfaces de red con inxi. Show
Inxi es otra herramienta de información del sistema de línea de comandos como hwinfo y lshw. Muestra el hardware del sistema, CPU, controladores, Xorg, escritorio, kernel, versión (s) de GCC, procesos, uso de RAM y una gran cantidad de otra información útil.
Para ver información sobre las tarjetas de red, incluido el fabricante, el controlador de la tarjeta y la cantidad de interfaces de red disponibles en un sistema Linux, ejecute inix con. el fin -N
Oportunidad:
$ inxi -N Network: Device-1: Realtek RTL810xE PCI Express Fast Ethernet driver: r8169 Device-2: Qualcomm Atheros AR9285 Wireless Network Adapter driver: ath9k
10. Muestre las interfaces de red con lspci. a
los lspci
El comando enumera todos los dispositivos PCI en un sistema Linux.
Para ver la lista de interfaces de red disponibles en un sistema Linux, use lspci con garza Comando de la siguiente manera:
$ lspci | egrep -i 'network|ethernet|wireless|wi-fi'
Salida de muestra:
05:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL810xE PCI Express Fast Ethernet controller (rev 05) 09:00.0 Network controller: Qualcomm Atheros AR9285 Wireless Network Adapter (PCI-Express) (rev 01)
Enumere solo los nombres de las interfaces de red disponibles
Lo que hemos visto hasta ahora son diferentes métodos para encontrar las interfaces de red disponibles en Linux. En todos los métodos anteriores, hemos mostrado las interfaces de red disponibles junto con algunos detalles adicionales como detalles de RX / TX, dirección Mac, estado de conexión, modo, tipo de red y algunos más. Si desea eliminar detalles innecesarios y simplemente enumerar los nombres de las interfaces de red, puede usar uno de los siguientes comandos.
$ ifconfig -a | sed 's/[ t].*//;/^$/d'
Salida de muestra:
enp5s0: lo: virbr0: wlp9s0:
Para excluir el dispositivo de bucle de retorno (lo) de la salida, ejecute este comando en su lugar:
$ ifconfig -a | sed 's/[ t].*//;/^(lo|)$/d'
Como ya dije ifconfig
El comando está desactualizado. si ifconfig
El comando no está disponible, use ip
Comando para mostrar solo el nombre de las interfaces de red con -o
Marcar como se muestra a continuación:
$ ip -o link show | awk -F': ' 'print $2' lo enp5s0 wlp9s0 virbr0
También puede utilizar el siguiente comando:
$ ip addr show | awk '/^[1-9]/ print $2'
diploma
En esta guía, hemos analizado diez métodos diferentes para encontrar y enumerar las interfaces de red disponibles en Linux y Unix. También analizamos algunas formas de mostrar solo los nombres de las interfaces de red en Linux.
Lea las guías a continuación para aprender cómo configurar la dirección IP en Linux.