请教大家一个问题, 最近刚更换了一个 Tp-Link 的路由器,带 IPv6 功能, 并且内网里的各个机器也获取到了 IPv4 和 IPv6 的地址, 通过 IPv4 以及 IPv6 也都能正常进行内、外网的网络通讯。
进入路由器后台--> 基本设置 --> LAN 设置 ,看到 “客户端列表”页面 , 以及 “IPv6 客户端列表”页面, 这两个页面里, 相同机器,MAC 地址不一样。
比如, 在 “客户端列表”,里的一个机器,
主机名:server-1 , IP:192.168.1.40 ,MAC 地址:40-A8-F0-3F-5A-57
但在 “IPv6 客户端列表” , 找到这个 server-1 的记录:
主机名:server-1 , IPv6:240e:xxxx:xxxx:xxxx::24 ,MAC 地址:C9-4B-54-E5-6F-2A .
登陆这个 server-1(ubuntu 20.04) , 看到 IPv4 地址 和 IPv6 地址,与上面提到的地址都对的上,但是 MAC 地址是 40-A8-F0-3F-5A-57 . 而看不到 C9-4B-54-E5-6F-2A
请教下大家, 为啥会出现不同协议下 DHCP 客户端的 MAC 地址不一致?
1
kokutou 2 天前 via Android
ipv6 有那个临时地址,保护隐私的,你看获取的所有 v6 地址,有好几个。
|
2
flyingfz OP @kokutou IPv6 确实是有好几个。 我的问题是, 为啥 MAC 地址会不一样。
咨询过 TP-link 的在线客服,他们回复: 路由器是根据记录到的终端设备发出的报文来显示对应的 MAC 地址 但,为啥 DHCPv6 报文里,这个机器的 MAC 地址就会不一样呢 |
3
flyingfz OP 不知道大家能否复现这个现象,麻烦 有 TP-link 路由器 的可以进入后台看看 。
|
4
titanium98118 2 天前
试试把 windows 的 ipv6 隐私扩展关闭,MAC 地址是否能对应上?
netsh interface ipv6 set privacy state=disable |
5
flyingfz OP @titanium98118 好。 我找台 win 试试。
|
6
ranaanna 2 天前
DHCPv6 与 DHCPv4 是不同的。DHCPv4 用 MAC 地址作为客户端 ID 。DHCPv6 用 DUID+IAID ,分别是设备和接口的 ID 。虽然 IAID 的后 24 位很可能 MAC 地址的前 24 位相同,但因为 IAID 只有 MAC 的部分,DUID 与 MAC 无关,从 DUID+IAID 是不能导出 MAC 地址的,所以那个 C9-4B-54-E5-6F-2A 只是一串长度和 MAC 地址相同的二进制码,并不是 MAC 地址,当然,也不可能是 DUID+IAID ,因为那样的话,长度会超过 128+40
|
7
ranaanna 2 天前
所以,所有楼上说的有关隐私扩展的都不对。Windows 可以用 ipconfig/all 查看 DUID 和 IAID 。可以看看它们的和 C9-4B-54-E5-6F-2A 的关系。注意显示的 IAID 是十进制,可以转成十六进制看看其和 MAC 地址的关系
|
9
ilanting 2 天前
如果是 macOS 或 iOS 有没有可能是因为开启了 Wi-Fi 的 私有网络 导致的呢.
|
10
flynaj 2 天前 via Android
是你哪个破路由器的问题,要完整 ipv6 还是上 openwrt, dhcp v6 使用 duid 来标识,你看到的那个应该是 duid 的一部分。有 ip neigh 命令可以看所有存活的 Mac 地址关联。
|