首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >以太网IPv6组播地址实现与RFC的不一致性

以太网IPv6组播地址实现与RFC的不一致性
EN

Stack Overflow用户
提问于 2013-04-18 17:04:35
回答 1查看 669关注 0票数 1

RFC2464中,以太网IPv6组播地址的前缀被定义为33:33,但当我在Wireshark中捕获一些数据包时,我发现这个前缀实际上被实现为33:33:ff

例如,在发送ICMPv6邻居请求数据包时,我捕获的目标mac地址是33:33:ff:f8:67:0d,目标IP地址的最后一位是...:d3f5:31f8:670d。作为RFC2464,mac地址应该是33:33:31:f8:67:0d

那么这个RFC是否被弃用了?我应该如何在我的程序中实现它?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-18 17:44:24

您正在查看请求的节点组播地址。您正在尝试将节点的IPv6单播地址直接转换为以太网MAC地址,但在这两者之间缺少一个步骤。要获得多播IPv6地址,首先要将节点的单播IPv6地址转换为被请求节点的多播MAC地址,如section 2.7.1 of RFC2373中所述。然后,您将获得与该IPv6组播地址相对应的组播MAC地址,如section 7 of RFC2464中所述。

例如:让我们从IPv6地址2001:db8::d3f5:31f8:670d开始。对应的被请求节点IPv6组播地址是ff02:0:0:0:0:1:fff8:670d。然后应用该算法获得33:33:ff:f8:67:0d的组播MAC地址。

但是,在应用程序中,您不应该担心邻居发现。这是操作系统的工作。在应用程序中使用多播时,您只需绑定/订阅IPv6多播地址,操作系统就会将发往该多播地址的所有数据包发送到您的应用程序。如果您在不同的LAN上进行多播,这将涉及主机和多播路由器之间的其他协议,如MLDv2 (多播侦听器发现版本2),以及多播路由器之间的多播路由协议,如PIM-SM (协议独立多播-稀疏模式)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16078684

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档