IPv6实验NDP地址解析和DAD

1

R1的IP和MAC

2

R2的IP和MAC

3

1      NDP地址解析

1.        所有路由器接入交换机后,手动配置接口IPv6,

配置举例:

#

ipv6

#

interface GigabitEthernet0/0/0

 ipv6 enable

 ipv6 address 2003::1/64

#

2.        接入网络后每台设备都发送NS(Neighbor Solicition)报文做DAD(Neighbor Unreachability Detection);源MAC为接口MAC,目的MAC为目的IP的组播MAC,源IP为未指定IP(::),目的IP为被请求节点的组播IP(即配置的IPv6或自动生成的link-local地址转换后的被请求节点组播地址),ICMPv6的的target address 为配置的IPv6或自动生成的link-local地址。总共3台设备6个包(每台设备的link-local和global)

4

3.        R1访问R2之前需要先得知R2的MAC地址,即发送NS(Neighbor Solicition)请求R2的MAC地址,源MAC为接口MAC,目的MAC为目的IP的组播MAC,源IP为接口global IP,目的IP为被请求节点的组播IP(R2的IP转换所得),ICMPv6的Type=135(NS),target address为目的IP(R2的IP),option携带自己的源MAC

5

4.        R2收到NS后,发现目的MAC是自己的组播MAC,目的IP是自己的组播IP,检查target address是自己的接口IP,单播回复NA(Neighbor Advertisement),因此源MAC是自己的MAC,目的MAC是R1的MAC(R2收到R1的NS后已经知道R1的IPv6和MAC映射关系,R1的NS携带了自己的MAC),源IP为接口IP,目的IP为NS的R2的IP,ICMP Type=136(NA),Flags的R位=1表示该节点为路由器S位=1表示收到NS后回应的NAO位=1表示更新当前缓存的链路层地址,因为这个包是收到NS后回复的NA,因此该NA的target address为NS的报文的target address,Option携带的是此NA消息发送者的链路层地址,回应组播NS的NA必须包含此选项。

6

5.        R1查看IP6的邻居,分别为global IP和link-local IP

8

6.        R2查看IPv6邻居

9

2      NDP DAD

R3配置与R1相同的IPv6地址,接入网络

interface GigabitEthernet0/0/0

 ipv6 enable

 ipv6 address 2003::1/64

#

1.        后发送NS接入网络后每台设备都发送NS(Neighbor Solicition)报文做DAD(Neighbor Unreachability Detection); 发出NS确定是否其他设备在使用该IP,IPv6报文的目的IP是2003::1的请求节点组播地址FF02::1:FF00:1,ICMPv6的Target Address是2003::1

11

2.        R1收到NS后发现与自己的IP冲突,回应NA,源地址是自己的IP,目的是所有节点组播地址FF02::1,相当于IPv4的免费ARP,Flags的R位=1表示该节点为路由器,S位=0(S位在邻居不可达检测中用作可达性确认,在组播的NADAD)和主动发送的 NA 中,比特一定不能置 1),O位=1表示更新当前缓存的链路层地址,option携带的target链路层MAC是自己的MAC,通告自己的IPv6和MAC对应关系。

12

3.        R3收到后提示冲突。

7

 

1      总结

1.        设备访问同网段的未知链路层地址的目的IP时,会先发送NS(Neighbor Solicition)消息请求 对方的链路层地址,类似IPv4的ARP请求,源MAC为接口MAC,目的MAC为目的IP的组播MAC,源IP为接口global IP,目的IP为被请求节点的组播IP(目的的IP转换所得),ICMPv6的Type=135(NS),target address为目的IP(,option为source link-layer address携带自己的源MAC

2.        被请求设备收到NS后单播回复NA(Neighbor Advertisement),源MAC是自己的MAC,目的MAC是NS的源MAC(被请求设备收到NS后已经知道NS源设备的IPv6和MAC映射关系,NS携带了自己的MAC),源IP为接口IP,目的IP为NS的源IP,ICMP Type=136(NA),Flags的R位=1表示该节点为路由器,S位=1表示收到NS后回应的NA,O位=1表示更新当前缓存的链路层地址,因为这个包是收到NS后回复的NA,因此该NA的target address为NS的报文的target address,Option为target link-layer address携带的是此NA消息发送者的链路层地址,回应组播NS的NA必须包含此选项。

3.        DAD(Duplicate Address Detect)通过NS消息实现,发起方发送NS消息,源IP是未指定IP(::),目的IP为自己配置IP的节点请求组播地址,ICMPv6的target address为自己配置的IP

4.        如果没有冲突就没有设备回复消息,有冲突冲突设备回复NA消息,NA消息相当于IPv4的免费ARP,发送给所有设备,源地址是自己的,IP目的是所有节点组播地址FF02::1, Flags的R位=1表示该节点为路由器,S位=0(S位在邻居不可达检测中用作可达性确认,在组播的NADAD)和主动发送的 NA 中,比特一定不能置 1),O位=1表示更新当前缓存的链路层地址,option携带的target链路层MAC是自己的MAC,通告自己的IPv6和MAC对应关系。

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值