Como checar se sua placa possui sinal físico de rede
Dica publicada em Linux / Hardware
Como checar se sua placa possui sinal físico de rede
Hoje passei pelo seguinte problema, meu PC possui duas placas de rede, mas eu não lembrava mais qual delas era a eth0 e qual era a eth1. Ao plugar o cabo de rede na placa off-board, me surgiu a necessidade de descobrir que dispositivo respondia por ela.
Nesta dica veremos como descobrir se uma placa possui sinal físico de rede. No Linux isso é possível de várias maneiras, citarei 3 delas.
ip link show eth0
A saída será algo como:
2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT group default qlen 1000
link/ether 74:d4:35:91:c4:f9 brd ff:ff:ff:ff:ff:ff
Note a string NO-CARRIER na saída. Isso indica placa sem sinal de rede. Agora vamos ao mesmo exemplo para a placa que possui sinal:
ip link show eth1
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 58:10:8c:00:2c:59 brd ff:ff:ff:ff:ff:ff
Neste caso não há a palavra NO-CARRIER na saída, o que indica que a placa possui sinal.
sudo apt install ethtool
Comando para verificar:
ethtool eth0
Link detected: no
Mesmo comando em placa com sinal:
ethtool eth1
sudo apt install net-tools
Comando para verificar (requer root):
sudo mii-tool eth0
eth0: no link
sudo mii-tool eth1
eth1: negotiated 1000baseT-HD flow-control, link ok
Embora o mii-tool seja o único que requer permissão de super usuário para executar, é o que possui a saída mais user-friendly dos 3 métodos citados.
Um abraço.
Nesta dica veremos como descobrir se uma placa possui sinal físico de rede. No Linux isso é possível de várias maneiras, citarei 3 delas.
Método 1 - via comando ip
Abra um terminal e execute o seguinte comando:ip link show eth0
A saída será algo como:
2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT group default qlen 1000
link/ether 74:d4:35:91:c4:f9 brd ff:ff:ff:ff:ff:ff
Note a string NO-CARRIER na saída. Isso indica placa sem sinal de rede. Agora vamos ao mesmo exemplo para a placa que possui sinal:
ip link show eth1
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 58:10:8c:00:2c:59 brd ff:ff:ff:ff:ff:ff
Neste caso não há a palavra NO-CARRIER na saída, o que indica que a placa possui sinal.
Método 2 - ethtool
Você provavelmente já possui o pacote instalado, caso não, instale-o com o seguinte comando (Debian-like):sudo apt install ethtool
Comando para verificar:
ethtool eth0
Settings for eth0: Supported ports: [ TP MII ] Supported link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Half 1000baseT/Full Supported pause frame use: No Supports auto-negotiation: Yes Advertised link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Half 1000baseT/Full Advertised pause frame use: Symmetric Receive-only Advertised auto-negotiation: Yes Speed: 10Mb/s Duplex: Half Port: MII PHYAD: 0 Transceiver: internal Auto-negotiation: on Current message level: 0x00000033 (51) drv probe ifdown ifup Link detected: noA última linha da saída indica a ausência de sinal:
Link detected: no
Mesmo comando em placa com sinal:
ethtool eth1
Settings for eth1: Supported ports: [ TP MII ] Supported link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Half 1000baseT/Full Supported pause frame use: No Supports auto-negotiation: Yes Advertised link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Half 1000baseT/Full Advertised pause frame use: Symmetric Receive-only Advertised auto-negotiation: Yes Link partner advertised link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Half 1000baseT/Full Link partner advertised pause frame use: Symmetric Link partner advertised auto-negotiation: Yes Speed: 1000Mb/s Duplex: Full Port: MII PHYAD: 0 Transceiver: internal Auto-negotiation: on Current message level: 0x00000033 (51) drv probe ifdown ifup Link detected: yesNote que em "Link detected" temos um "yes".
Método 3 - mii-tool
O comando mii-tool está contigo no pacote net-tools, o qual você provavelmente já possui. Caso não tenha:sudo apt install net-tools
Comando para verificar (requer root):
sudo mii-tool eth0
eth0: no link
sudo mii-tool eth1
eth1: negotiated 1000baseT-HD flow-control, link ok
Embora o mii-tool seja o único que requer permissão de super usuário para executar, é o que possui a saída mais user-friendly dos 3 métodos citados.
Um abraço.