我在一个 wifi 热点,当我通过两种不同的方法查找路由器的 MAC 地址时,我得到了略有不同的结果:
$ arp -a
? (10.128.128.128) at 00:18:0a:58:WX:YZ [ether] on wlan0
? (10.0.2.15) at 00:18:0a:58:WX:YZ [ether] on wlan0
$ iwconfig
lo no wireless extensions.
wlan0 IEEE 802.11abgn ESSID:"PEETS"
Mode:Managed Frequency:5.765 GHz Access Point: 02:18:5A:58:WX:YZ
Bit Rate=520 Mb/s Tx-Power=22 dBm
Retry long limit:7 RTS thr:off Fragment thr:off
Power Management:on
Link Quality=42/70 Signal level=-68 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:153 Invalid misc:15 Missed beacon:0
(为了保护隐私,MAC 的最后两个字节被隐藏,但在所有这些情况下它们都是相同的。)
两者之间的唯一区别是,在其中一个中iwconfig
,“本地管理“位设置为 1(使其类似于私有 IP 地址)。
当(和)显示全局唯一(并且可能是准确的)MAC时,为什么将iwconfig
其显示为本地、非唯一的 MAC ?arp
/proc/net/arp
注意:在我的搜索中,我发现其他人在非常不同的(Windows)环境中观察到了同样的事情,但没有任何解释:
arp 表中的 MAC 地址与实际 MAC 不匹配,为什么?
答案1
路由器和接入点是两种不同的设备。如果您构建一个网络,其中每种设备各有一个,那么您不会指望这两个设备有相同的 MAC 地址。
对于家庭用户设备来说,将多个此类设备装入单个盒子中是很常见的。通常,您会在一个盒子中发现以下五种硬件:
- 调制解调器
- 路由器
- 转变
- USB以太网接口
- 切入点
这样的盒子需要多个 MAC 地址,供应商可以选择按顺序分配这些地址,或者在某种程度上重复使用相同的地址。例如,路由器和 AP 可以共享一个 MAC 地址用于 LAN/WLAN,但没有必要这样做。
其中一些设备可以配置为以不同的配置运行。例如,交换机和调制解调器之间是否需要路由器取决于具体部署。
某些配置涉及某些虚拟网络设备,这些设备可能也需要 MAC 地址。虚拟设备通常会将本地管理位设置为 1。