Cómo comprobar si hay un adaptador de red en Linux

LinuxLinuxBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, aprenderás cómo comprobar si hay un adaptador de red en tu sistema Linux. Exploraremos tres métodos comunes para lograr esto.

Primero, utilizarás el comando lshw con la opción -C network para listar información detallada sobre tu hardware de red. A continuación, verificarás la presencia de interfaces de red inspeccionando el contenido del directorio /sys/class/net. Finalmente, utilizarás el comando lspci para listar los dispositivos PCI y filtrar por controladores de red, lo que proporciona otra forma de identificar tus adaptadores de red. Al completar estos pasos, adquirirás habilidades prácticas para diagnosticar la presencia de hardware de red en un sistema Linux.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux(("Linux")) -.-> linux/FileandDirectoryManagementGroup(["File and Directory Management"]) linux(("Linux")) -.-> linux/SystemInformationandMonitoringGroup(["System Information and Monitoring"]) linux(("Linux")) -.-> linux/RemoteAccessandNetworkingGroup(["Remote Access and Networking"]) linux/BasicFileOperationsGroup -.-> linux/ls("Content Listing") linux/FileandDirectoryManagementGroup -.-> linux/whereis("File/Command Finding") linux/SystemInformationandMonitoringGroup -.-> linux/ps("Process Displaying") linux/RemoteAccessandNetworkingGroup -.-> linux/ifconfig("Network Configuring") linux/RemoteAccessandNetworkingGroup -.-> linux/netstat("Network Monitoring") linux/RemoteAccessandNetworkingGroup -.-> linux/ip("IP Managing") subgraph Lab Skills linux/ls -.-> lab-558732{{"Cómo comprobar si hay un adaptador de red en Linux"}} linux/whereis -.-> lab-558732{{"Cómo comprobar si hay un adaptador de red en Linux"}} linux/ps -.-> lab-558732{{"Cómo comprobar si hay un adaptador de red en Linux"}} linux/ifconfig -.-> lab-558732{{"Cómo comprobar si hay un adaptador de red en Linux"}} linux/netstat -.-> lab-558732{{"Cómo comprobar si hay un adaptador de red en Linux"}} linux/ip -.-> lab-558732{{"Cómo comprobar si hay un adaptador de red en Linux"}} end

Comprobar adaptadores con lshw -C network

En este paso, exploraremos cómo identificar los adaptadores de red conectados a tu sistema utilizando el comando lshw. lshw significa "listar hardware" y es una herramienta poderosa para obtener información detallada sobre la configuración del hardware de tu sistema.

Para listar específicamente los adaptadores de red, utilizamos la opción -C seguida del nombre de la clase, que es network.

Abre tu terminal si no está abierta. Puedes hacer esto haciendo clic en el icono de Xfce Terminal en el lado izquierdo de tu escritorio.

Ahora, escribe el siguiente comando y presiona Enter:

sudo lshw -C network

Desglosemos este comando:

  • sudo: Como aprendimos antes, esto nos permite ejecutar el comando con privilegios de superusuario, que a menudo son necesarios para acceder a información detallada del hardware.
  • lshw: El comando para listar el hardware.
  • -C network: Esta opción filtra la salida para mostrar solo los dispositivos que pertenecen a la clase "network".

Verás una salida similar a esta (los detalles exactos variarán según la configuración de la máquina virtual):

  *-network
       description: Ethernet interface
       product: Ethernet controller
       vendor: Red Hat, Inc.
       physical id: 3
       bus info: pci@0000:00:03.0
       logical name: eth0
       version: 00
       serial: 52:54:00:xx:xx:xx
       size: 1Gbit/s
       capacity: 10Gbit/s
       width: 32 bits
       clock: 66MHz
       capabilities: pm bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autoneg negotiated
       configuration: autonegotiation=on broadcast=yes driver=virtio_net driverversion=1.0.0 ip=172.18.0.x latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s
       resources: irq:24 ioport:c040(size=32) memory:fe000000-fe000fff

Esta salida proporciona mucha información sobre tu adaptador de red, incluyendo:

  • description: Qué es el dispositivo (interfaz Ethernet).
  • product y vendor: El fabricante y el modelo del hardware.
  • logical name: El nombre que el sistema operativo utiliza para esta interfaz (por ejemplo, eth0). Esto es importante para configurar la red.
  • serial: La dirección MAC del adaptador de red.
  • size y capacity: La velocidad actual y la capacidad máxima de la conexión.
  • configuration: Detalles sobre cómo está configurada actualmente la interfaz, incluyendo su dirección IP si se le ha asignado.

Comprender esta salida te ayuda a identificar tus interfaces de red y solucionar problemas de red.

Haz clic en Continuar para pasar al siguiente paso.

Verificar interfaces en /sys/class/net

En Linux, el sistema de archivos /sys ofrece una vista del modelo de dispositivos del kernel. Es un sistema de archivos virtual, lo que significa que los archivos y directorios que contiene no se almacenan en el disco de la forma tradicional, sino que son generados por el kernel para representar información del sistema.

Específicamente, /sys/class/net es un directorio que contiene enlaces simbólicos a todas las interfaces de red detectadas por el sistema. Los nombres de estos enlaces corresponden a los nombres lógicos de las interfaces de red, como eth0 que vimos en el paso anterior.

Vamos a listar el contenido de este directorio para ver las interfaces de red. Utilizaremos el comando ls, que se utiliza para listar archivos y directorios.

Escribe el siguiente comando en tu terminal y presiona Enter:

ls /sys/class/net/

Deberías ver una salida similar a esta:

eth0  lo
  • eth0: Esta es la interfaz Ethernet que identificamos utilizando lshw en el paso anterior.
  • lo: Esto significa interfaz "loopback" (bucle interno). Es una interfaz virtual especial que tu computadora utiliza para comunicarse consigo misma. Es esencial para que el software de red funcione correctamente, incluso cuando tu computadora no está conectada a una red física.

La presencia de eth0 y lo en este directorio confirma que el sistema reconoce estas interfaces de red. Este directorio es una forma rápida de ver qué interfaces de red están disponibles en tu sistema.

Haz clic en Continuar para continuar.

Inspeccionar el hardware con lspci

En este paso, utilizaremos el comando lspci para listar información sobre los dispositivos PCI conectados a tu sistema. PCI (Peripheral Component Interconnect, Interconexión de Componentes Periféricos) es un bus estándar que conecta dispositivos de hardware a la placa madre de la computadora. Muchos dispositivos, incluyendo tarjetas de red, tarjetas gráficas y controladores de almacenamiento, se conectan a través de PCI o su sucesor, PCI Express (PCIe).

El comando lspci es útil para identificar rápidamente el hardware conectado y su información básica.

Escribe el siguiente comando en tu terminal y presiona Enter:

lspci

Verás una lista de dispositivos PCI. La salida se verá algo así:

00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE controller: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)
00:01.2 USB controller: Intel Corporation 82371AB/EB/MB PIIX4 USB (rev 01)
00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)
00:02.0 VGA compatible controller: Red Hat, Inc. QXL Paravirtual graphic driver
00:03.0 Ethernet controller: Red Hat, Inc. Virtio network device
00:04.0 Communication controller: Red Hat, Inc. Virtio console
00:05.0 SCSI storage controller: Red Hat, Inc. Virtio SCSI
00:06.0 Unclassified device [0000]: Red Hat, Inc. Virtio balloon
00:07.0 Audio device: Intel Corporation 82801AA AC'97 Audio Controller (rev 01)

Cada línea representa un dispositivo PCI. El formato suele ser Bus:Device.Function Clase: Proveedor Producto.

  • Bus:Device.Function: Identifica la ubicación del dispositivo en el bus PCI.
  • Clase: Describe el tipo de dispositivo (por ejemplo, Host bridge, Ethernet controller, VGA compatible controller).
  • Proveedor y Producto: Identifican el fabricante y el modelo específico del dispositivo.

Observa la línea que dice Ethernet controller: Red Hat, Inc. Virtio network device. Esto corresponde al adaptador de red que vimos con lshw y en /sys/class/net. lspci te ofrece una perspectiva diferente del hardware, centrada en el bus PCI.

Puedes usar lspci con opciones como -v para una salida más detallada o -nn para mostrar los IDs de proveedor y dispositivo en formato numérico, lo cual es útil para buscar información sobre el hardware en línea.

Por ejemplo, prueba:

lspci -v

Esto proporcionará mucha más información detallada sobre cada dispositivo. Presiona q para salir de la salida detallada cuando hayas terminado de verla.

Haz clic en Continuar para finalizar este laboratorio.

Resumen

En este laboratorio, aprendimos cómo comprobar la presencia de adaptadores de red en Linux utilizando diversas herramientas de línea de comandos. Comenzamos utilizando el comando sudo lshw -C network para listar información detallada sobre las interfaces de red, incluyendo su descripción, proveedor, producto y detalles de configuración. Este comando ofrece una visión general completa del hardware.

A continuación, exploramos el directorio /sys/class/net, que proporciona un enlace simbólico para cada interfaz de red presente en el sistema, ofreciendo una forma rápida de verificar su existencia. Finalmente, utilizamos el comando lspci para inspeccionar el bus PCI e identificar controladores de red filtrando la salida por "Ethernet controller" o descripciones similares, lo que proporciona otro método para confirmar la presencia de hardware de red. Estos pasos en conjunto demuestran diferentes enfoques para identificar adaptadores de red en un entorno Linux.