【发布时间】:2023-06-29 00:58:01
【问题描述】:
目前所有提到的获取 MAC 地址的解决方案都是使用 eth0。
但是,如果我的接口不是以 eth1 开头,而不是 eth0 怎么办。同样在 OS X 上,接口名称也不同。
此外,接口 eth0 可能存在但未使用。即不活动,它没有IP。
那么有没有一种方法可以获得第一个可用接口的 MAC 地址,该接口处于活动状态。(即它有一个 inet 地址,我什至不希望一个有 inet6)。
例如
eth0 Link encap:Ethernet HWaddr <some addr>
inet6 addr: <some addr> Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:123
RX packets:123 errors:123 dropped:123 overruns:123 frame:123
TX packets:123 errors:123 dropped:123 overruns:123 carrier:123
collisions:123 txqueuelen:123
RX bytes:123 (123 MB) TX bytes:123 (123 KB)
Interrupt:123 Memory:00000000-00000000
eth1 Link encap:Ethernet HWaddr <some addr>
inet addr:<some addr> Bcast:<some addr> Mask:<some addr>
inet6 addr: <some addr> Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:123 Metric:123
RX packets:123 errors:123 dropped:123 overruns:123 frame:123
TX packets:123 errors:123 dropped:123 overruns:123 carrier:123
collisions:123 txqueuelen:123
RX bytes:123 (123 MB) TX bytes:123 (123 KB)
Interrupt:123 Memory:00000000-00000000
注意:我已经更改了输出的值。
所以在这种情况下,我想要 eth1 而不是 eth0 的 HWaddr。 我如何找到它?它还应该适用于所有 Linux 风格。
【问题讨论】:
标签: linux shell mac-address