V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
flyingfz
V2EX  ›  宽带症候群

通过路由器的 DHCP 获取 分别获取 IPv4 和 IPv6 地址时,在客户端列表页里看到的 MAC 地址不一样。

  •  
  •   flyingfz · 2 天前 · 593 次点击

    请教大家一个问题, 最近刚更换了一个 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 地址不一致?

    11 条回复    2025-01-07 09:11:36 +08:00
    kokutou
        1
    kokutou  
       2 天前 via Android
    ipv6 有那个临时地址,保护隐私的,你看获取的所有 v6 地址,有好几个。
    flyingfz
        2
    flyingfz  
    OP
       1 天前
    @kokutou IPv6 确实是有好几个。 我的问题是, 为啥 MAC 地址会不一样。

    咨询过 TP-link 的在线客服,他们回复: 路由器是根据记录到的终端设备发出的报文来显示对应的 MAC 地址
    但,为啥 DHCPv6 报文里,这个机器的 MAC 地址就会不一样呢
    flyingfz
        3
    flyingfz  
    OP
       1 天前
    不知道大家能否复现这个现象,麻烦 有 TP-link 路由器 的可以进入后台看看 。
    titanium98118
        4
    titanium98118  
       1 天前
    试试把 windows 的 ipv6 隐私扩展关闭,MAC 地址是否能对应上?
    netsh interface ipv6 set privacy state=disable
    flyingfz
        5
    flyingfz  
    OP
       1 天前
    @titanium98118 好。 我找台 win 试试。
    ranaanna
        6
    ranaanna  
       1 天前
    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
    ranaanna
        7
    ranaanna  
       1 天前
    所以,所有楼上说的有关隐私扩展的都不对。Windows 可以用 ipconfig/all 查看 DUID 和 IAID 。可以看看它们的和 C9-4B-54-E5-6F-2A 的关系。注意显示的 IAID 是十进制,可以转成十六进制看看其和 MAC 地址的关系
    flyingfz
        8
    flyingfz  
    OP
       1 天前
    @ranaanna 非常感谢。 下午搜到了类似的内容,但没有你回复的清晰。 谢谢,
    我试试看能否解析出出来。
    ilanting
        9
    ilanting  
       1 天前
    如果是 macOS 或 iOS 有没有可能是因为开启了 Wi-Fi 的 私有网络 导致的呢.
    flynaj
        10
    flynaj  
       1 天前 via Android
    是你哪个破路由器的问题,要完整 ipv6 还是上 openwrt, dhcp v6 使用 duid 来标识,你看到的那个应该是 duid 的一部分。有 ip neigh 命令可以看所有存活的 Mac 地址关联。
    flyingfz
        11
    flyingfz  
    OP
       1 天前
    @ilanting 我也认为是 TP-link 路由器的问题。
    按照 IPv6 的规范,MAC 地址 这一列应该是 DUID 才对。
    对 IPv6 相关协议不熟悉,看到这里的 MAC 地址,还以为和 IPv4 、DHCP v4 一样,也是用 MAC 标志每个客户端。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   6044 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 02:36 · PVG 10:36 · LAX 18:36 · JFK 21:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.