Spring中的aware接口详情
793
2022-09-16
默认路由造成路由环路(路由环路问题会引起)
如图1所示,网络中的路由器A、B、C、D、E、F连成一个环,要想让整个网络畅通,只需要在每个路由器中添加一条默认路由以指向下一个路由器的地址即可,配置方法如图1所示。
图1 环形网络使用默认路由
通过这种方式配置路由,网络中的数据包就沿着环路顺时针传递。下面就以网络中的计算机A和B通信为例,计算机A到B的数据包途经路由器F→A→B→C→D→E,计算机B到A的数据包途经路由器E→F。如图2所示,可以看到数据包到达目标地址的路径和返回的路径不一定是同一条路径,数据包走哪条路径,完全由路由表决定。
图2 数据包往返路径
该环状网络没有40.0.0.0/8这个网段,如果计算机A ping 40.0.0.2这个地址,会出现什么情况呢?分析一下。
如果A计算机ping 40.0.0.2这个地址,所有的路由器都会使用默认路由将数据包转发到下一个路由器。数据包会在这个环状网络中一直顺时针转发,永远也不能到达目标网络,一直消耗网络带宽,这就形成一个路由环路。幸好数据包的网络层首部有一个字段用来指定数据包的生存时间,生存时间(TTL,time to live)是一个数值,TTL的作用是限制IP数据包在计算机网络中存在的时间。TTL的最大值是255,推荐值是64。
虽然TTL从字面上翻译,是指可以存活的时间,但实际上,TTL是IP数据包在计算机网络中可以经过的路由器的数量。TTL字段由IP数据包的发送者设置,在IP数据包从源地址到目标地址的整条转发路径上,每经过一个路由器,路由器都会修改TTL字段的值,具体的做法是把TTL的值减1,然后将IP数据包转发出去。如果在IP数据包到达目标地址之前,TTL减少为0,路由器将会丢弃收到的TTL=0的IP数据包,并向IP数据包的发送者发送 ICMP time exceeded消息。
上面讲到环状网络使用默认路由,造成数据包在环状网络中一直顺时针转发的情况。即便不是环状网络,使用默认路由也可能造成数据包在链路上往复转发,直到数据包的TTL耗尽。
如图3所示,网络中有3个网段、两个路由器。在RA路由器中添加默认路由,下一跳指向RB路由器;在RB路由器中也添加默认路由,下一跳指向RA路由器,从而实现这3个网段间网络的畅通。
图3 默认路由产生的问题
该网络中没有40.0.0.0/8网段,如果计算机A ping 40.0.0.2这个地址,该数据包会转发给RA,RA根据默认路由将该数据包转发给RB,RB使用默认路由,转发给RA,RA再转发给RB,直到该数据包的TTL减为0,路由器丢弃该数据包,向发送者发送 ICMP time exceeded消息。
此文章来自于《华为认证(2021新版HCIA教材)》
京东购买本书
华三网络工程师课程中有问题联系韩老师
华为认证(2021新版HCIA教材)课程链接 https://edu./course/28956.html
韩老师招收正式学生、门徒级套餐
https://edu./topic/819.html
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~