![我的计算机的有效 MAC 地址是什么?](https://linux22.com/image/1097179/%E6%88%91%E7%9A%84%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%9A%84%E6%9C%89%E6%95%88%20MAC%20%E5%9C%B0%E5%9D%80%E6%98%AF%E4%BB%80%E4%B9%88%EF%BC%9F.png)
当我查看我的计算机的 MAC 地址时,因为它出现在无线网络中,所以建议我运行ifconfig
。
在终端中执行该命令后,我注意到,与我的其他机器不同,连接的网络似乎被列为以太网,即使内置无线网卡是我目前用来发布此信息的东西。
ifconfig
输出:
lewisgoddard@t42:~$ ifconfig
eth0 Link encap:Ethernet HWaddr 00:0d:60:7b:d2:18
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
eth1 Link encap:Ethernet HWaddr 00:0c:f1:53:55:c5
inet addr:192.168.1.10 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::20c:f1ff:fe53:55c5/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:716 errors:1 dropped:1 overruns:0 frame:0
TX packets:710 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:620786 (620.7 KB) TX bytes:80480 (80.4 KB)
Interrupt:11 Base address:0xe000 Memory:c0210000-c0210fff
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:182 errors:0 dropped:0 overruns:0 frame:0
TX packets:182 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:19665 (19.6 KB) TX bytes:19665 (19.6 KB)
Ubuntu 是否可能在某种程度上感到困惑?
如果不是,我是否误解了我的结果,并且我的 MAC 地址可能不是00:0c:f1:53:55:c5
?
答案1
使用ip
代替过时的ifconfig
。例如:
ip addr show
...
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 04:7d:4b:28:51:33 brd ff:ff:ff:ff:ff:ff
...
发现:网络接口/适配器 eth0 的 MAC 地址是04:7d:4b:28:51:33。
答案2
我不太清楚为什么会发生这种情况,但我以前也见过这种情况。
您对 MAC 地址的说法是正确的 —— 它就是 中的那个eth1
。
答案3
您的计算机的 MAC 地址实际上只是与接口关联的 MAC 地址,无论是物理接口还是虚拟接口。当存在桥接或隧道接口、虚拟机接口、绑定接口等时,事情会变得混乱。对于此输出,我不确定为什么您的接口被列为 eth1,但鉴于它是唯一具有地址的接口,可能就是这样。
如果没有更多信息,我猜测 Ubuntu/Linux 错误识别了您的板载 NIC。
您可以使用wireshark
或tcpdump
来确认流量是否来自您认为的接口。wireshark
是一个基于 GUI 的捕获工具(带有命令行选项),而 tcpdump 是一个命令行工具。您可以使用类似 的命令快速查看其输出(安装后)sudo tcpdump -i any
。
如果您可以访问无线网关,则可以使用它来查看连接的设备。系统用于连接的 MAC 地址将在那里显示。
正如 LivewireBT 所暗示的, 中可能有线索/etc/udev/rules.d/70-persistent-net.rules
。
要查看计算机识别和调出的接口,请查看系统日志的输出。使用dmesg
可能是最简单的方法。
以下是一个例子:
~$ dmesg | egrep 'lan|eth'
[ 1.608941] e1000e 0000:00:ff.0: eth0: (PCI Express:2.5GT/s:Width x1) 5c:af:0a:15:42:a2
[ 1.608943] e1000e 0000:00:ff.0: eth0: Intel(R) PRO/1000 Network Connection
[ 1.608994] e1000e 0000:00:ff.0: eth0: MAC: 9, PHY: 10, PBA No: 2041FF-0FF
[ 29.486325] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 30.532255] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 33.622226] e1000e: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx
[ 33.622856] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 43.880499] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[ 43.880939] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[ 50.500518] wlan0: authenticate with 0c:d9:0f:23:ae:0f
[ 50.541272] wlan0: send auth to 0c:d9:0f:23:ae:0f (try 1/3)
注意与 e1000e/eth0(有线千兆接口)和 wlan0(无线)关联的 MAC 地址。即使实际接口名称不是我们所期望的,您的计算机也应该有类似的名称。
答案4
iwconfig
显示无线信息(包括 MAC 地址),就像 ifconfig 显示以太网信息一样。这是 iwconfig 的链接,它说明了它显示的所有内容以及信息的含义。
系统配置