Come elencare tutte le schede di rete (Debian) installate fisicamente?


14

Il mio "Server dedicato" dovrebbe avere due schede di rete installate ma posso trovarne solo una.

La mia domanda: quali altri comandi e metodi sono disponibili per testare quante schede di rete sono installate sul mio server

lspci | grep Ethernet

Ci sono altri comandi / metodi disponibili?


Hai accesso fisico all'host? Puoi confermare che le eventuali schede di espansione sono inserite correttamente? Tutte le schede di rete sono dello stesso produttore?
Tok

Ciao Tok. Grazie per la risposta. Nessuna scheda NIC non è dello stesso produttore (uno dovrebbe essere di Intel e l'altro di Realtek). => La tua domanda sembra interessante. Quale potrebbe essere l'effetto / risultato se le carte provengono da produttori diversi? E non ho accesso fisico al server e non so se sono installati correttamente. Grazie. jens.
jens,

Risposte:


14

Puoi usare lshw per vedere tutti i dispositivi su una macchina. Per visualizzare solo i dispositivi di rete inserire:

lshw -class network

4
lshw non fa parte di un setup Debian predefinito.
Jean-Marc Liotier,

1
Lo trovo un po 'troppo, preferirò solo: ip link show
Matías,

Questo mostra anche le interfacce bridge, che non sono fisiche.
Xorax,

11

Per Ethernet:

ls -d /sys/class/net/eth* | wc -l

1
Questo non funziona in generale perché i nomi dei dispositivi Ethernet non devono iniziare con eth. Molte (tutte?) Le principali distribuzioni Linux stanno ora usando "nomi di interfaccia ethernet prevedibili" con systemd, risultando in nomi di interfacce cablate come en0 o enp0s25, quindi alla ricerca di eth * mancheranno quelle.
rajb245,

2
Dare a questo una prova: $ ls -l /sys/class/net/ | grep -v virtual. Filtra tutte le interfacce di rete virtuale. Lavora su Ubuntu in esecuzione in una Virtual Box.
kwarnke,

11

ip link show elencherà tutto ciò che sembra un'interfaccia di rete.


10
find /sys/class/net -type l -not -lname '*virtual*' -printf '%f\n'

Mostra solo le interfacce relative a una scheda di rete fisica.

Ho provato a trovare typeun'opzione per ip link showvisualizzare non logico, ma purtroppo:

ip link help 2>&1 | grep -A10 'TYPE :='
TYPE := { vlan | veth | vcan | dummy | ifb | macvlan | macvtap |
          bridge | bond | ipoib | ip6tnl | ipip | sit | vxlan |
          gre | gretap | ip6gre | ip6gretap | vti | nlmon |
          bond_slave | ipvlan | geneve | bridge_slave | vrf }

Sembra essere l'unica cosa che ip link shownon può fare. Almeno non senza ricorrere a uno script che elenca prima tutto quanto sopra e poi lo fa grep -vcontro una corsa finale senza typespecificato.


Questo sicuramente sembra che qualcosa ip linkdovrebbe essere in grado di gestire. Se si utilizzano molte interfacce virtuali (ad esempio per il bridging o il vlan) e soprattutto se queste interfacce virtuali sono state rinominate.
Centimane,

7

/proc/net/devil file contiene dettagli su tutte le interfacce. per esempio

$ cat /proc/net/dev
Inter-|   Receive                                                |  Transmit
 face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed
    lo:    3562      60    0    0    0     0          0         0     3562      60    0    0    0     0       0          0
 wlan0: 2491781197 2034240    0    0    0     0          0         0 261797069 1502752    0    0    0     0       0          0
  eth0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0

Come puoi vedere, molte colonne e dettagli non sono molto facili da leggere quando si è catil file, quindi suggerirei di usare il ifconfigcomando che legge bene quel file e i formati.

Per elencare tutte le interfacce utilizzate

/sbin/ifconfig -a

che ti mostrerà le interfacce di rete non configurate / inattive , nonché quelle configurate e attive, come letto da/proc/net/dev


1
modprobe -c |grep 'eth[0-9]'

mostra il driver del dispositivo reale in uso per ciascun dispositivo Ethernet


... ma i dispositivi Ethernet potrebbero essere nominati diversamente
Joril,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.