热门搜索 :
考研考公
您的当前位置:首页正文

ICMPv6路由器重定向实验

来源:伴沃教育


ICMPv6路由器重定向实验

路由器使用ICMPv6重定向消息(ICMP TYPE 137)通知链路上的节点,在链路上存在一个更好的前转数据包的路由器。接收到这个ICMPv6重定向消息的节点可以根据重定向消息中新的路由器地址修改它的本地路由选择表。基本上从机制上来将跟IPv4的ICMP重定向没啥两样。

在IPv6规范中,不推荐使用可聚合全球单播或本地站点地址作为下一跳地址,如果这样做,ICMPv6重定向消息就不会工作。因此使用Linklocal地址作为下一跳,在某些场合可能更为推荐,毕竟linklocal地址稳定且长久不变。在配置linklocal地址作为下一跳IP时,必须关联路由器上相应的接口。

接下去做一个简单的测试:

实验环境如上,配置如下:

R3的关键配置:

ipv6 route 2222::/64 FastEthernet0/0 FE80::CE00:1AFF:FEE4:0

R1的关键配置:

ipv6 route 2222::/64 FastEthernet0/0 FE80::CE01:1AFF:FEE4:0

接下去,我们在R3上去ping 2222::2,这个动作将使得R3发送一个ICMPv6报文,源为2000:123::3,目的为2222::2,报文将被发送到R1,当R1接收后,他发现,这个数据包将从自己收到该报文的接口再转发出去,而下一跳IP与该接口在同一个网段,证明这个下一跳比自己更优(距离目的地更近)。

因此,R1将发送一个ICMPv6 Type=137的重定向报文给R3(见上图),以便告知R3,要去往目的地2222::3,有人比我更优,而这个ICMPv6消息中,包含的关键信息,就是R2的Linklocal address。报文如下:

上面就是R1发送给R3的ICMPv6的type137报文,我们关键看target address,这个就是R2的linklocal address,也就是R1想告知给R3的、距离目标2222::1比自己更近的下一跳。

R3收到这个ICMPv6重定向消息后,后续的数据包将直接发给R2,就不用再绕过R1了。

因篇幅问题不能全部显示,请点此查看更多更全内容

Top