Как определить MAC-адрес сетевой карты в CentOS без использования ifconfig?
CentOS 5.5
Одна из моих систем CenTOS недавно загрузилась со следующей ошибкой:
"Воспроизведение интерфейса eth0: устройство eth0 имеет другой MAC-адрес, чем ожидалось. Игнорируем."
Когда я запускаю ifconfig -a, нет записи для eth0, и я вполне уверен, что статическая запись HWADDR в /etc/sysconfig/network-scripts/ifcfg-eth0 неверна.
Существуют ли альтернативные способы для точного определения правильных MAC-адресов через командную строку? Мне было интересно, может ли lspci помочь? У меня нет доступного hwinfo.
4 ответа
Если нет записи в ifconfig -a
... это означает, что устройство не обнаружено в машине... (либо из-за отсутствия поддержки драйвера, либо из-за неисправного / неправильно идентифицированного оборудования) dmesg
чтобы подтвердить, что "eth0" обнаружен системой вообще. Вы также можете lspci
перечислить все устройства, подключенные к системе... и найти неизвестные устройства и / или ваш контроллер Ethernet.
Для CentOS 7:
ip a
в моей коробке MAC появляется после 'link/ether'
например:
ссылка / эфир cc:10:ee:5f:d8:aa
Ты можешь использовать:
Для всех интерфейсов:
cat /sys/class/net/*/address
Для интерфейса ethernet0:
cat /sys/class/net/eth0/address
Извлечено из: http://www.sysadmit.com/2018/01/linux-saber-direccion-mac.html
Другие ответы выше хороши для работающего интерфейса, но если вы пытаетесь найти MAC для настройки нового интерфейса - например, вы меняете сетевой адаптер - ответ Дуайта является ключевым. Спасибо Дуайт!
Ты упомянул ifcfg-eth0
неверное значение - у меня тоже была такая проблема, потому что я заменил материнскую плату. Я сделал:
cat /sys/class/net/eth0/address
команда и использовал вывод:
vi /etc/sysconfig/network-scripts/ifcfg-eth0
и изменить HWADDR
значение, и после запуска ifup eth0
, интерфейс начал работать.