设为首页收藏本站language 语言切换
查看: 882|回复: 0
收起左侧

HCIE面试题之三大协议如何撤销路由的

[复制链接]
发表于 2021-6-16 13:30:13 | 显示全部楼层 |阅读模式
本文是解释 OSPF和ISIS以及BGP是如何撤销路由的。
所谓路由撤销,就是路由通告的反操作, 就是告诉邻居,一个目的地不可达,请把对应的路由删除掉。

OSPF 路由撤销
OSPF和ISIS都是链路状态协议,其中撤销路由部分相似

OSPF的路由是以LSA来承载的,OSPF中撤销路由实则是撤销LSA或更新LSA的一个操作,

根据OSPF对LSA的操作情况可以将其分为:
1、一类、二类LSA的撤销路由
2、三类、五类、七类LSA撤销路由

LSA1 撤销
在OSPF中LSA-1-2是来描述拓扑的,所以一般用更新LSA来撤销
也就是seq+1撤销。

                               
登录/注册后可看大图

如图, 在R1 上创建loopback 0 1.1.1.1 宣告进OSPF1 area 0, 其他所有设备都宣告进OSPF 1 area 0
我们在R2/3 之间抓包, 在R1 的OSPF 进程下反复的network 宣告和undo network 1.1.1.1 0.0.0.0
查看抓包结果:

                               
登录/注册后可看大图


                               
登录/注册后可看大图


                               
登录/注册后可看大图

实验现象描述:
当network一个路由之后,该路由器会产生一条一类LSA,其中就有刚添加的那个接口的信息。
该LSA里面包含着link-ID和link-DATA,序列号是:0x80000009

备注:
loopback接口为stub网络类型,所以它的一类LSA的link-ID是接口的地址,link-data是接口地址的掩码,
普通传输网络的link-ID则是DR的接口IP,link-data则是本设备的接口IP

当撤销一条路由后,该路由器仍然会产生一条LSA,只不过不再包含loopback0接口的信息了,
变化的是序列号,变成了:0x8000000a

物理口的路由撤销
如图, 在这个场景下模拟交换机这个接口故障,看下这种场景下的路由撤销

                               
登录/注册后可看大图

首先看到, R2-3 之间OSPF 邻居是好好的, 这样, R2-3之间就是传输路径TransNet


                               
登录/注册后可看大图


                               
登录/注册后可看大图

而当关闭这个接口时, R2 会经历一个hello dead 时间, , 从邻居R3 收不到hello, 然后就认为邻居失效,

                               
登录/注册后可看大图

这个时候, R2 给处于同一个区域, 但是不同广播域的R4 发送更新, 更新的内容, 就是说这个区域现在
连接的是一个stub网络, 因为我们这里这个交换机所在的网络只有两个路由器

                               
登录/注册后可看大图

我们在这里再加一个设备, 可以看到现在

                               
登录/注册后可看大图


                               
登录/注册后可看大图

关于这个交换机所在的网络的2类LSA 更新中, 会携带这个广播域内的成员信息
由于这个交换机所在的广播域内还有其他成员,所以这个transit 信息并没有更改,图略
但是,失联的这个成员RID 就会从2类LSA中消失,


                               
登录/注册后可看大图

总结:
每个广播与都会产生一条2类LSA 泛洪到本区域的其他广播域
物理口撤销路由,
LSA 2 路由撤销就是把这个失联的路由器RID 从本广播域的2类LSA中的成员列表删除
LSA 1, 如果这个网络只有2个成员, 其中一个失联, 就把这个网络使用更新的方式, 告诉其他广播域路由器
这里连接 的是一个STUB网络, 本广播域没有这个更新。
如果这个广播域还有不止一个邻居, 那么就不发1类LSA更新去改这个STUB, 只是发LSA 2 去减少成员RID
LSA2撤销
2类LSA是DR产生的, 用于描述这个网络内掩码的长度和这个网络内的成员RID
环境如下:

                               
登录/注册后可看大图


                               
登录/注册后可看大图

在这个环境下,DR是R4, BDR是R2
当把DR所在的接口关闭时, 由BDR首先发送LSU更新, 发送给224.0.0.5 , 告诉网络内的其他设备,
R2 设备上最新的1类LSA 内容, 以及现在这个网络的2类LSA, 这个2类LSA包含的内容是掩码的长度和这个网络内的成员RID,其他路由器收到这个更新之后, 向224.0.0.6发送确认, 
然后依据这个新的BR的1类和2类LSA来计算自己目前针对这个网络的信息, 然后将自己计算之后的结果也发送到224.0.0.5 。


                               
登录/注册后可看大图


                               
登录/注册后可看大图


                               
登录/注册后可看大图

可以看到R4接口被关闭之后, R1 收到R2 发送的LSA之后计算的到的更新发出来了,用的还是之前R4 的2类LSA计算的, 得到的结果还是R4是DR,把更新发出来了。
 后来发现不对, 新的DR应该是R2,后来又使用R2 的2类LSA计算了一遍,

现象描述:由于 DR不支持抢占, 所以我们是采用直接关闭DR所对应的接口,
当关闭这个DR接口时, 这个网络内的BDR路由器首先会发一个更新报文, 报文中会携带BDR的1类LSA和这个网络内的2类LSA, 来告诉其他路由器, BDR成为DR路由器

 总结:
OSPF的一类、二类LSA在撤销路由的时候会产生一条新的一类、二类LSA,新产出的LSA中不再包含撤销的那条路由信息,新LSA的序列号会在旧的LSA序列号上加1,发送给区域中所有的路由器,当其它路由器收到该新的LSA后会覆盖旧的LSA,路由器重新计算路由,以达到撤销路由的目的。

而且根据这现象可以发现,当拓扑发生改变之后(一类LSA)路由器就会重新发送一次LSA,
信息也会跟着计算一次,由于二类LSA携带的是掩码等信息,所有路由也会跟着计算一遍,简而言之:拓扑变化会引起路由变化。这也是OSPFv2中的一个缺点,在OSPFv3(IPv6)中对其进行了改进(一类、二类LSA不在描述路由信息,仅描述拓扑信息,实现路由与拓扑计算分离),否则拓扑的重复变化也会导致路由频繁的计算,不仅对链路带宽造成影响也会增加路由器的计算压力。

LSA3撤销
而3LSA是描述路由信息,一条路由信息对应一条LSA-3。所以通过3600s来撤销
包括LSA5也是通过3600S撤销。

                               
登录/注册后可看大图

场景一、AR1上1.1.1.1这条路由撤销的时候,直接undo loopback接口


                               
登录/注册后可看大图

通过seq+1来更新LSA, 撤销的时候, 更新中 LSA 老化时间 3600,

LSA4 撤销
4类LSA的通告是伴随路由引入,和5类LSA一起通告给其他邻居的。
4类LSA是通告ASBR的路径信息的,告诉其他区域的路由器, 本ABR去往本ASBR的开销是多少,
以及ASBR 的router ID是多少
什么时候发LSA4:当一台路由器对本OSPF做了路由引入操作,
什么时候撤销LSA4:当一台ASBR不再继续做ASBR, 即把对应引入的路由undo
这个时候也会出发本ASBR产生 1类LSA 通告这个操作。
LSA5 撤销
这是通告更新

                               
登录/注册后可看大图




LSA 4类5类撤销都是 LSA的产生者路由器通告 老化时间3600 秒的LSA,序列号+1 

LSA7 撤销
第一次做路由引入的操作:
通告的时候, ASBR先产生LSA1申明自己是一个ASBR



ASBR 身份已经确认, 现在单独引入一条外部路由



总结:
当LSA描述多条路由信息的时候,只能通过seq+1更新来重新计算, 而这里序列号没有改变, 是模拟器问题, 按照理论, 重新产生的LSA, 序列号是要+1的
LSA一对一的时候可以通过3600s来老化。
路由通告, 4类LSA和5类LSA是使用同一个LSU来发布的, 而路由撤销, LSA4 是单独发的, LSA5 可以放一起发

ISIS 路由撤销
分通告和路由引入两种情况

通告路由
我们分两种情况来通告路由, 图都是一样的。
都是L1以L1 形式通告
都是L2以L2 形式通告



现在改都是L2 , 以L2 形式通告

通告路由:


总结:
ISIS 以L1 或者L2 的形式更新和撤销路由, 形式是一样的, 都是以序列号+1 的形式传递的,
更新的时候, 就在LSP中携带这个路由, 撤销的时候, 就不携带这个不可达的路由
路由引入


ISIS中如果是引入的外部,当undo import命令后,会出现life=0的撤销路由

总结:
忽略这里的序列号不变, 按照所学理论, 重新产生LSP, 序列号是要+1的
由于一条LSP中携带了很多路由信息,所以撤销一条路由也是通过seq+1来撤销。通过更新LSP重新计算
当撤销L1 或者L2 的路由的时候, lifetime 不为0, 只是不携带这条不可达的路由
ISIS中如果是引入的外部,当undo import命令后,会出现life=0的撤销路由

OSPFv3
在这个环境下,R1-2-4 之间运行OSPFv3 area 0,R2-3 之间运行area 1.


                               
登录/注册后可看大图

区域内路由:使用LSA1 和LSA9

AR1上有一条loopback0的路由,我们给undo这个接口后发现AR1向FF02::6发了一个LSU来更新

                               
登录/注册后可看大图

分别是一个9-LSA和1-LSA。
因为依据1-LSA形成的LSA-9是用来描述主机路由的,所以撤销的时候猜想应该是LSA-1的seq+1
然后LSA-9为3600s
再次实验,在loopback0接口上配两个全球IPV6单播地址,宣告进入ospfv3,这次只undo 一条路由
发现9-LSA只seq+1 而不是3600s

                               
登录/注册后可看大图

并且也只有一条9-LSA了,所以猜想
刚刚undo loopback接口的时候,由于删掉了接口,相当于拓扑也有变化,并且路由也是全部删除。
所以情况是LSA-1的seq+1 LSA-9为3600s。

区域间:
使用LSA 3

                               
登录/注册后可看大图

区域间路由撤销的时候, 是使用发送老化时间为3600 的3类LSA

接下来是测试5+7

LSA4-5
LSA 4-5 通告路由 如下

                               
登录/注册后可看大图

LSA 4/5 撤销路由如下

                               
登录/注册后可看大图

LSA 4-5 撤销路由使用老化时间为 3600 的路由

LSA-7 在NSSA区域引入路由

                               
登录/注册后可看大图


                               
登录/注册后可看大图

都是使用老化时间为3600 的路由撤销的
总结:
OSPF v3 路由分区域内, 区域间和外部路由
区域内路由的发布和撤销都是基于LSA1和LSA 9 , 撤销的时候是序列号+1 , 老化时间3600
区域间路由撤销的时候, 是使用LSA 3 类撤销, 老化时间 3600, 序列号+1
外部路由撤销的时候, 是 使用LSA 5/7 来撤销的, 老化时间 3600, 序列号+1
当ASBR不做ASBR的时候, 会出现4类LSA 撤销,老化时间 3600, 序列号+1

是谁通告的, 谁就去发这个老化时间 3600 的LSA去撤销路由

BGP 路由撤销
路由通告:

                               
登录/注册后可看大图


                               
登录/注册后可看大图

总结:
BGP在通告路由更新的时候, 是放在NLRI 字段中的,会携带路由的公认必遵属性,
包括起源属性ORIGIN,AS-PATH,NEXT-HOP,

撤销AS内部路由的时候, 是放在Withdrawn Routes 字段中的,是不带这些路径属性的, 

BGP的路由撤销是不分AS内的还是AS间的, 

总结:路由撤销的方式
路由撤销是路由通告的反操作, 谁通告的, 就是谁撤销
OSPFv2/3中, 都是使用老化时间 3600秒的LSA去撤销路由, 序列号+1

OSPF撤销路由报文是LSU
ISIS撤销路由报文是LSP

BGP通过update报文的
withdrawn routes length 撤销路由长度
withdrawn routes 撤销的路由列表



最后

太阁老师的个人微信

添加太阁老师个人微信领取:太阁免费视频资料、NA综合实验配置文件拓扑图及模拟器、太阁独家实验手册、网工必读书籍等

                               
登录/注册后可看大图

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-1-31 14:59 , Processed in 0.049955 second(s), 10 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

快速回复 返回顶部 返回列表