идентифицировать физическое сетевое устройство по имени интерфейса в linux

8

У меня есть несколько USB-устройств Ethernet, которые подключены к одному и тому же компьютеру.

Есть ли способ определить, какой из них сопоставлен с каким * сетевым интерфейсом eth * через USB-порт / и т. Д.?

Я пробовал искать в lsusb и / proc, но не нашел ничего полезного.

user62167
источник

Ответы:

9

Сопоставление имен интерфейсов и устройств можно увидеть в /sys/class/net/

Пример:

$ ls -la /sys/class/net
total 0
drwxr-xr-x  2 root root 0 Oct 29 12:49 .
drwxr-xr-x 56 root root 0 Oct 29 12:49 ..
lrwxrwxrwx  1 root root 0 Oct 29 12:49 eth0 -> ../../devices/pci0000:00/0000:00:19.0/net/eth0
lrwxrwxrwx  1 root root 0 Oct 29 12:49 lo -> ../../devices/virtual/net/lo

Мое устройство eth0находится на шине PCI, устройство 0x19, как показывает символическая ссылка.

Роберт Симер
источник
0

Если ваша система использует udev для управления устройствами, вы можете использовать следующее для получения идентификаторов устройств:

grep -i eth /var/log/udev

Если ваша ОС хранит там журнал активности udev; отрегулируйте при необходимости.

adaptr
источник
Здесь есть только eth0 (сетевой интерфейс pci, но не usb), так что это не поможет.
user62167
-1

Вы можете отключить и снова подключить его, а затем проверить последние сообщения в dmesg.

zoite
источник
Это будет работать, но это не вариант.
user62167