El kernel de #linux salva la info de nuestras tarjetas de red en la carpeta /sys/class/net. Usted puede verificar la lista de interfaces disponibles buscando en esa carpeta:
# ls /sys/class/net
Nota: Antes de seguir leyendo el post, quisiera que entiendan, que es totalmente irrelevante el uso de eth0 o enp5s0 para estas pruebas, por ejemplo, como posibles nombres de interfaces de red. Al final el nombre, ya sea uno u otro, en el sistema que usted use, es el identificador de la interfaz de red que posea. En algunos sistemas puede que sea enp3s0 o eno1, al final todos responden a la tarjeta o tarjetas de red en uso. Explico esto, pues he probado en varios sistemas con distintos nombres y todos los ejemplos funcionan.
Ahora, para conocer más detalles necesitamos varias herramientas:
# apt install -y inxi lshw ethtool pciutils net-tools
Primero que todo, veamos inxi. inxi es un script muy completo que permite desplegar la información del hardware del sistema. Está escrito en bash así que se puede utilizar directamente desde un terminal. Para ver todas las propiedades del sistema, incluidas las de la red:
# inxi -F
Sólo las de la red:
# inxi -N
Ahora veamos otras herramientas. Por ejemplo lspci que es parte del paquete pciutils. Para ver las propiedades de la red con lspci, ejecutamos:
# lspci | egrep -i --color 'network|ethernet'
En mi caso:
08:00.0 Network controller: Broadcom Limited BCM43142 802.11b/g/n (rev 01) 09:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101/2/6E PCI Express Fast/Gigabit Ethernet controller (rev 08)
También podemos usar, para tener un tilín más de detalle, lshw:
# lshw -C network ... *-network description: Wireless interface product: BCM43142 802.11b/g/n vendor: Broadcom Limited physical id: 0 bus info: pci@0000:08:00.0 logical name: wlan0 version: 01 serial: d0:53:49:bb:45:52 width: 64 bits clock: 33MHz capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless configuration: broadcast=yes driver=wl0 driverversion=6.30.223.271 (r587334) ip=192.168.43.229 latency=0 multicast=yes wireless=IEEE 802.11 resources: irq:18 memory:c6100000-c6107fff *-network description: Ethernet interface product: RTL8101/2/6E PCI Express Fast/Gigabit Ethernet controller vendor: Realtek Semiconductor Co., Ltd. physical id: 0 bus info: pci@0000:09:00.0 logical name: eth0 version: 08 serial: d0:bf:9c:9a:eb:2f size: 10Mbit/s capacity: 100Mbit/s width: 64 bits clock: 33MHz capabilities: pm msi pciexpress msix vpd bus_master cap_list ethernet physical tp aui bnc mii fibre 10bt 10bt-fd 100bt 100bt-fd autonegotiation configuration: autonegotiation=on broadcast=yes driver=r8169 duplex=half firmware=rtl8106e-2_0.0.1 04/23/13 latency=0 link=no multicast=yes port=MII speed=10Mbit/s resources: irq:19 ioport:4000(size=256) memory:c6004000-c6004fff memory:c6000000-c6003fff ...
Como ven, es muy útil. Ahora probemos con netstat que viene en el paquete net-tools. El comando netstat muestra muchos detalles importantes, tales como conectividad de red, tablas de ruta, estadísticas de uso de las interfaces, puertos abiertos y sevicios en escucha, entre otras:
# netstat -i
o:
# netstat -s
Si necesita más detalles:
# man netstat
Otra de las herramientas disponibles es ethtool, la cual da buena información de nuestra tarjeta de red:
# ethtool -i enp5s0 driver: sky2 ...
Por ejemplo, si queremos ver el driver insertado en el kernel:
# modinfo sky2 ... filename: /lib/modules/5.4.60-1-pve/kernel/drivers/net/ethernet/marvell/sky2.ko version: 1.30 license: GPL author: Stephen Hemminger <[email protected]> description: Marvell Yukon 2 Gigabit Ethernet driver srcversion: BB558EA81DC3D52E543219D alias: pci:v000011ABd00004382sv*sd*bc*sc*i* ...
Veamos otros ejemplos.
Estado de la red:
# cat /sys/class/net/enp5s0/operstate
Se debería ver «up» o «down», para los estados de encendido o apagado, respectivamente.
o:
# ethtool enp5s0 | grep -i 'Link det'
Cómo vemos si el cable está conectado o no:
# cat /sys/class/net/enp5s0/carrier
Con 1 está activo/conectado, si no está conectado, entonces 0.
Velocidad de la tarjeta de red:
# ethtool enp5s0 | grep Speed
o:
# cat /sys/class/net/enp5s0/speed
Estadísticas de la tarjeta:
# ethtool -S enp3s0
Habilitando la interfaz:
# ifconfig eth0 up
o:
# ifup eth0
o:
# ip link set eth0 up
Deshabilitando la interfaz:
# ifconfig eth down
o:
# ifdown eth0
o:
# ip link set eth0 down
Asignando IP:
# ifconfig eth0 192.168.0.200 netmask 255.255.255.0 broadcast 192.168.0.255
y con ip se puede hacer de dos maneras:
# ip a add 192.168.1.200/255.255.255.0 dev eth0
o:
# ip a add 192.168.0.200/24 dev eth0
Removiendo la dirección ip:
# ifconfig eth0 0.0.0.0
o:
# ip addr flush dev eth0
Uso/cambio de MAC
Para ver la MAC:
ethtool --show-permaddr enp5s0
Cambiar la MAC. Con ifconfig:
# /etc/init.d/networking stop # ifconfig eth0 hw ether AA:BB:CC:DD:EE:FF # /etc/init.d/networking start
Con ip:
ip link set dev eth0 down ip link set dev eth0 address AA:BB:CC:DD:EE:FF ip link set dev eth0 up
Estos cambios son en vivo, es decir, en el momento, pues cuando reiniciamos la PC desaparecen. Para cambios aún despues de reiniciar se recomienda macchanger:
# apt install -y macchanger
Ejemplo:
# macchanger --mac=AA:BB:CC:DD:EE:FF eth0
Y si queremos retornar a la MAC original:
# macchanger -p eth0
Ante la duda:
# man macchanger
Bueno, todas estas herramientas nos ayudan a conocer un poco más nuestras tarjetas de red, y en algunos casos a configurarlas, pero, si desea hacer cambios como direcciones ip, máscara y demás permanentes, ya eso está en dependencia de cada sistema[Debian/Ubuntu]. Dejaré par de enlaces acá debajo:
– https://www.sysadminsdecuba.com/2017/10/configurando-las-interfaces-de-red-en-debian-9/
– https://www.sysadminsdecuba.com/2020/05/netplan-para-principiantes/
Un saludo y esto es todo. Espero les sirva.
Dejar una contestacion