尽pipe绑定设备在/ proc或某处查找MAC地址?

有没有办法获得eth0和eth1的原始MAC地址?

大量的服务器具有pipe理备份交换机连接的绑定接口,而且一个是行为不当的。 在bond0处于活动状态时,两个MAC地址将被ifconfigreplace并报告相同。

我想在服务器arrays中search在思科设备中find的MAC地址。

我会使用dmesg(1)或/ var / log / messages,但是对于大部分数组,它们已经滚动了数百天。

我仍然在寻找一个更“官方”的解释,但根据这个博客 ,文件/proc/net/bonding/${bonding name}将为/proc/net/bonding/${bonding name}中的每个NIC提供实际的mac地址(eth0,eth1,等等),这样可能会更有用。

希望这会有所帮助!

在RHEL / CentOS 6上:

 # ethtool -P <if> Permanent address: 00:11:22:33:44:55 

操作系统应该在文件中保留物理NIC详细信息的列表:

 /etc/udev/rules.d/70-persistent-net.rules 

这是我的例子:

 # This file maintains persistent names for network interfaces. # See udev(7) for syntax. # # Entries are automatically added by the 75-persistent-net-generator.rules # file; however you are also free to add your own entries. # PCI device 0x10ec:0x8168 (r8169) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:23:54:95:74:e5", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0" 

注意“ATTR {address} ==”部分?

SATA和NET设备有几种方法。 像udevadm信息命令也会这样做。 ifconfig和netstat。 而这样的例子不胜枚举。 检查上面的一些旧的链接全套。

您可以使用arp来查找MAC地址

为了find制造商MAC,IEEE注册机构保留属于该MAC地址的品牌名称列表,MAC地址中的前六个是品牌名称,后面跟着types和序列号

search公开的OUI /'company_id'列表

dmesg | grep eth0 && dmesg | grep eth1

在债券build立之前,您可以获取任何接口的报告硬件地址。

如果您不确定接口名称(与CentOS 7发生),请尝试: ip addr

并从列表中select接口