路由双点双向重发布-终极攻略
本帖最后由 network123 于 2025-8-6 15:51 编辑<p>路由双点双向重发布是网络中一个热点话题,无论是实际项目,还是各种考试,都会遇到这一场景。这一场景涉及到非常复杂的路由知识点,可以考察一位网络工程师对路由知识的综合掌握程度。本文将系统剖析这一场景,并针对出现的问题,给出详尽的解法。</p>
<hr />
<h2><strong>1,案例背景</strong></h2>
<p>本案例的拓扑图如下,左边是ISIS路由域,采用10.1.X.X 的IP地址段,在R5,R1上引入直连路由;右边是OSPF路由域,采用10.2.X.X的IP地址段,在R4,R6上引入直连路由。</p>
<p>R2,R3是两台华为防火墙,作为路由边界设备,中间互联链路分别属于ISIS和OSPF路由域。为了实现两个路由域的互联互通,需要在R2,R3上配置路由双点双向重发布。</p>
<p><img src="data/attachment/forum/202508/06/105948btyo0f9lxo0ggjof.png" alt="1.png" title="案例拓扑" /></p>
<h2><strong>2,问题探究</strong></h2>
<p>在路由双点双向重发布场景中,会出现三个重要问题:次优路径,路由回馈,路由环路,下面将结合实际案例,详解介绍这三类问题的产生原因。</p>
<h3><strong>2.1</strong> <strong>次优路径</strong></h3>
<p>先查看R2,R3设备上没有做路由重发布之前的路由表,查看各自路由的学习情况。</p>
<p><img src="data/attachment/forum/202508/06/110302cmclmwcmp6pchcrz.png" alt="2.png" title="R2的路由表" /></p>
<p>R2的路由表</p>
<p><img src="data/attachment/forum/202508/06/110338cptfefocp7otiex6.png" alt="3.png" title="R3的路由表" /></p>
<p>R3的路由表</p>
<p>在配置路由双点双向重发布之前,两台路由边界设备的路由学习是正常的,10.1.X.X的路由从ISIS路由域获得;10.2.X.X的路由从OSPF路由域获得。</p>
<p>现在先在R2上配置ISIS重发布OSPF,再次查看R2,R3的路由表。</p>
<p>!</p>
<p>isis 100</p>
<p>is-level level-2</p>
<p>cost-style wide</p>
<p>network-entity 49.0001.2222.2222.2222.00</p>
<p>import-route ospf 100</p>
<p>!</p>
<p><img src="data/attachment/forum/202508/06/110552jpfqh99jrzbw8n5d.png" alt="34.png" title="34.png" /></p>
<p>R2的路由学习正常,没有变化。</p>
<p><img src="data/attachment/forum/202508/06/110634lmz0wppp78172280.png" alt="www.png" title="www.png" /></p>
<p>此时R3的路由学习异常,原本两条OSPF路由域的域外路由10.2.41.0/24,10.2.61.0/24现在通过ISIS路由域学习,下一跳错误的指向10.1.23.2(R2),在R3上产生次优路径,究其原因是:</p>
<p>1,R2配置ISIS重发布OSPF后,引入后的路由在ISIS路由域通告。</p>
<p>2,R3上存在两条针对10.2.61.0/24的路由信息:一条是R2通告的路由源是ISIS,另外一条是R6通告的路由源是OSPF。</p>
<p>3,针对多条相同的路由信息(路由前缀,前缀长度均相同),R3比较不同路由源的Preference,ISIS(15)优于OSPF外部路由(150),因此R2通告的ISIS路由信息优选成功,加载进全局路由表,这样R3上针对原本OSPF的域外路由产生次优路由问题。</p>
<p><img src="data/attachment/forum/202508/06/110755ycppicygkgl66p2p.png" alt="5.png" title="5.png" /></p>
<p>图示次优路由产生原因</p>
<hr />
<p>Note:在路由重发布点上,源于Preference值大的路由域的某条路由反而通过Preference值小的路由域到达,此时产生次优路由问题。</p>
<p>OSPF为域外路由分配的Preference是150,大于ISIS的15,因此在ISIS路由域,不会产生次优路径。</p>
<h3><strong>2.2</strong> <strong>路由回馈</strong></h3>
<p>然后在R3上配置OSPF重发布ISIS。</p>
<p>!</p>
<p>ospf 100 router-id 3.3.3.3</p>
<p>import-route isis 100 type 1</p>
<p>area 0.0.0.1</p>
<p>!</p>
<p>由于现在R3上,针对10.2.41.0/24,10.2.61.0/24的路由,通过ISIS路由域错误获得,因此可以再引入回OSPF路由域,在OSPF路由域内通告,产生路由回馈问题。</p>
<h3><strong>2.3</strong> <strong>路由环路</strong></h3>
<p>R3上配置OSPF重发布ISIS时,针对引入的外部路由,设置Metric Type为Type1,再次查看R2,R3,R4的路由表。</p>
<p>!</p>
<p>ospf 100 router-id 3.3.3.3</p>
<p>import-route isis 100 type 1</p>
<p>area 0.0.0.1</p>
<p>!</p>
<p><img src="data/attachment/forum/202508/06/111306tn2ln3663zwrzc6r.png" alt="6.png" title="6.png" /></p>
<p>R2的路由学习异常,原本两条OSPF路由域的域外路由10.2.41.0/24,10.2.61.0/24下一跳指向10.2.24.4(R4),现在错误地指向10.2.23.3(R3)。</p>
<p><img src="data/attachment/forum/202508/06/111346x94wqqo0767aw6oo.png" alt="777.png" title="777.png" /></p>
<p>R3的路由表没有变化,针对10.2.41.0/24,10.2.61.0/24的路由,依然通过ISIS路由域获得,下一跳指向10.1.23.2(R2)。</p>
<p><img src="data/attachment/forum/202508/06/111518h1vllgqto66hqql1.png" alt="R4.png" title="R4.png" /></p>
<p>R4的路由学习也存在异常,原本OSPF路由域的域外路由10.2.61.0/24 下一跳指向10.2.46.6(R6),现在错误地指向10.2.34.3(R3)。</p>
<p>这样针对域外路由10.2.61.0/24,在OSPF路由域内产生路由环路:</p>
<p>R4下一跳错误指向10.2.34.3 (R3);</p>
<p>R3下一跳错误指向10.1.23.2(R2);</p>
<p>R2下一跳错误指向10.2.23.3(R3)。</p>
<p><img src="data/attachment/forum/202508/06/111635k2j8lhe2hyz2ms8s.png" alt="www.png" title="www.png" /></p>
<p>我们在R4上traceroute 10.2.61.1进行验证,</p>
<p><img src="data/attachment/forum/202508/06/111716aq5kxz5zugxzixbi.png" alt="d.png" title="d.png" /></p>
<p>R4上针对10.2.61.0/24的路由产生环路</p>
<p>现在我们来分析路由环路产生的原因。</p>
<p>1,R3配置OSPF重发布ISIS时,分配Metric-Type为Type1,并将引入的外部路由在OSPF路由域通告。</p>
<p>2,R4上收到两条针对10.2.61.0/24的OSPF域外路由:一条是R6通告的Metric-Type为Type2,另外一条是R3通告的的Metric-Type为Type1。</p>
<p><img src="data/attachment/forum/202508/06/111818lmt153g5453tb51j.png" alt="1.png" title="1.png" /></p>
<p>3,OSPF在计算域外路由时,Type-1优于Type-2,因此R4把R3通告的域外路由加载进全局路由表,下一跳错误指向10.2.34.3(R3)。</p>
<p>4,R2上针对OSPF域外路由10.2.61.0/24的路由优选方式和R4一样,也把R3通告的域外路由加载进全局路由表,下一跳错误指向10.2.23.3(R3)。</p>
<p>5,这样针对路由10.2.61.0/24,在OSPF路由域内产生路由环路。</p>
<p><img src="data/attachment/forum/202508/06/111939ujjz5fbf77jzk5ff.png" alt="2.png" title="2.png" /></p>
<hr />
<p><strong>Note:<strong>源路由域的某条路由重发布到目标路由域,然后又以一个</strong>比较优的</strong>Metric值/路由类型重新发布回源路由域,此时将产生路由环路问题。</p>
<p>以上案例介绍的仅为多点单向路由重发布,双点双向重发布原理一样,下面将图示路由双点双向重发布产生上述问题的原因:</p>
<p><img src="https://www.emulatedlab.com/data/attachment/forum/202508/06/112107a77mzzr6bjdsrnop.png" alt="5.png" title="5.png" /></p>
<h2><strong>3,终极解法</strong></h2>
<p>上图所示路由多点双向重发布场景产生诸多问题的根源是,在<strong>路由重发布点</strong>上,由于路由优先级或Metric值错误优选,产生次优路径,才导致一系列问题的产生。</p>
<p>因此只要在路由重发布点上解决<strong>次优路径</strong>问题,<strong>路由回馈</strong>,<strong>路由环路</strong>问题随即解决。常用的方法有:次优路由信息过滤;基于具体路由调整Preference值;重发布静态聚合路由。</p>
<h3><strong>3.1</strong> <strong>次优路由信息过滤</strong></h3>
<p>路由重发布点上,在ISIS路由进程内使用如下命令</p>
<p>filter-policyACL/IP Prefix/ route-policyimport,将根据对端(<strong>路由重发布点</strong>)通告的外部路由信息计算出的最佳路由过滤掉,阻止其加载进全局路由表,保证在路由重发布点上通过正确的<strong>路由域</strong>获取相应的路由。</p>
<p>在多个路由重发布点上需要做<strong>对称配置</strong>,推荐方法如下:</p>
<p><img src="data/attachment/forum/202508/06/112340mnhxxehkm61xhoho.png" alt="1.png" title="1.png" /></p>
<hr />
<p>Note:路由重发布是从全局路由表中取路由,如果全局路由表中没有对应路由,重发布自然失败。在实际项目中,尽量避免在路由重发布时实施复杂的路由策略,推荐在路由进程下直接过滤掉次优路由即可,简单高效。</p>
<p>ISIS的Cost类型需修改为wide,这样引入的外部路由才可以携带Tag标记。</p>
<p>在OSPF多进程之间路由重发布时,需采用“4 Tag”方法解决上述问题。</p>
<p><img src="data/attachment/forum/202508/06/112635z9gzuzx9g39uj1vj.png" alt="333.png" title="333.png" /></p>
<hr />
<p><strong>Note</strong>:<strong>华为,H3C,锐捷的设备,在OSPF多进程场景中,忽略E1,E2的区别,优选路径Cost最小的</strong>域外路由。</p>
<h3><strong>3.2</strong> <strong>基于具体路由调整Preference值</strong></h3>
<p>路由重发布点上,在ISIS路由进程内,将对端(<strong>路由重发布点</strong>)通告的相应外部路由的Preference值调整为255即可。Preference值的修改只具有本地意义,不影响其他设备路由优选。</p>
<p>在多个路由重发布点上需要做<strong>对称配置</strong>,推荐方法如下:</p>
<p><img src="data/attachment/forum/202508/06/113021khtaoofkk3h11st1.png" alt="6666.png" title="6666.png" /></p>
<hr />
<p>**Note:**Preference值是255的路由代表路由源不可信,同时该路由不会加载进全局路由表。通过把路由Preference值设置为255,可以避免路由发生震荡时,相应的路由信息错误地加载进全局路由表,引发临时路由环路。</p>
<p>华为,H3C设备针对优先级为255的路由依然会加载进全局路由表,但不影响效果。</p>
<h3><strong>3.3重发布静态聚合路由</strong></h3>
<p>在路由重发布点上,如果出现问题的路由域的路由可以进行聚合,可以先配置指向Null 0的静态聚合路由,然后在ISIS路由进程内重发布该静态聚合路由即可。</p>
<p>在多个路由重发布点上需要做<strong>对称配置</strong>,推荐方法如下:</p>
<p><img src="data/attachment/forum/202508/06/113140ggz5fqzee2gwf5nq.png" alt="eeeeee.png" title="eeeeee.png" /></p>
<p>上述方法各有优劣,需要根据项目实际,灵活选用。实施后,域内路由器,边界路由器的路由学习均正常,数据转发也没有问题。</p>
<p><img src="data/attachment/forum/" alt="" /></p>
<p>好贴</p>
<p>赞</p>
<p>非常棒的场景把路由重发不的场景讲的</p>
本帖最后由 network123 于 2025-8-9 15:51 编辑
<p>非常棒的帖子把路由重发布的场景介绍的非常详尽</p>
:lol <p>以前学过这个拓扑····顶一个</p>
页:
[1]