前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >网络中超好玩的路由环路(4)——双点重分发环路A(收敛引发)

网络中超好玩的路由环路(4)——双点重分发环路A(收敛引发)

作者头像
释然
发布2022-10-27 18:32:39
4660
发布2022-10-27 18:32:39
举报
文章被收录于专栏:释然IT杂谈释然IT杂谈

一、前提知识:

双点双向重分发是一个非常危险的操作,如果配置不当可能会引发环路,具体说来有两种情况:

1、在路由收敛的过程中计算路由错误引起环路

2、配置参数不当环路直接引起的稳定环路

这个实验讲的是收敛环路,为了简化讲解,我这里配置的是双点单向重分发(华为说法也为称“双点单向路由引入”),如果配置成双点双向重分发,一样可以看到类似的效果。

二、实验拓扑:

三、基础配置:

R1的配置:

代码语言:javascript
复制
<Huawei>sys
[Huawei]sysname R1
[R1]interface GigabitEthernet0/0/0
[R1-GigabitEthernet0/0/0]ip address 12.1.1.1 255.255.255.0
[R1-GigabitEthernet0/0/0]interface GigabitEthernet0/0/1
[R1-GigabitEthernet0/0/1]ip address 14.1.1.1 255.255.255.0
[R1-GigabitEthernet0/0/1]interface LoopBack0
[R1-LoopBack0]ip address 1.1.1.1 255.255.255.0
[R1-LoopBack0]ospf 1
[R1-ospf-1]area 0.0.0.0
[R1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0
[R1-ospf-1-area-0.0.0.0]network 12.1.1.1 0.0.0.0
[R1-ospf-1-area-0.0.0.0]network 14.1.1.1 0.0.0.0

R2的配置:

代码语言:javascript
复制
<Huawei>sys
[Huawei]sysname R2
[R2]interface GigabitEthernet0/0/0
[R2-GigabitEthernet0/0/0]ip address 12.1.1.2 255.255.255.0
[R2-GigabitEthernet0/0/0]interface GigabitEthernet0/0/1
[R2-GigabitEthernet0/0/1]ip address 23.1.1.1 255.255.255.0
[R2-GigabitEthernet0/0/1]ospf 1
[R2-ospf-1]area 0.0.0.0
[R2-ospf-1-area-0.0.0.0]network 12.1.1.2 0.0.0.0
[R2-ospf-1-area-0.0.0.0]ospf 2
[R2-ospf-2]import-route ospf 1
[R2-ospf-2]area 0.0.0.0
[R2-ospf-2-area-0.0.0.0]network 23.1.1.1 0.0.0.0

R3的配置:

代码语言:javascript
复制
<Huawei>sys
[Huawei]sysname R3
[R3]interface GigabitEthernet0/0/0
[R3-GigabitEthernet0/0/0]ip address 23.1.1.2 255.255.255.0
[R3-GigabitEthernet0/0/0]interface GigabitEthernet0/0/1
[R3-GigabitEthernet0/0/1]ip address 34.1.1.1 255.255.255.0
[R3-GigabitEthernet0/0/1]ospf 2
[R3-ospf-2]area 0.0.0.0
[R3-ospf-2-area-0.0.0.0]network 23.1.1.2 0.0.0.0
[R3-ospf-2-area-0.0.0.0]network 34.1.1.1 0.0.0.0

R4的配置:

代码语言:javascript
复制
<Huawei>sys
[Huawei]sysname R4
[R4]interface GigabitEthernet0/0/0
[R4-GigabitEthernet0/0/0]ip address 34.1.1.2 255.255.255.0
[R4-GigabitEthernet0/0/0]interface GigabitEthernet0/0/1
[R4-GigabitEthernet0/0/1]ip address 14.1.1.2 255.255.255.0
[R4-GigabitEthernet0/0/1]interface NULL0
[R4-NULL0]ospf 1
[R4-ospf-1]import-route ospf 2
[R4-ospf-1]area 0.0.0.0
[R4-ospf-1-area-0.0.0.0]network 14.1.1.2 0.0.0.0
[R4-ospf-1-area-0.0.0.0]ospf 2
[R4-ospf-2]area 0.0.0.0
[R4-ospf-2-area-0.0.0.0]network 34.1.1.2 0.0.0.0

四、测试环路:

在R1上把loopback 接口0的IP 取消,模拟网段故障:

稍等片刻后,在R3上tracert 路由1.1.1.1发现数据包在4台路由器之间打环(方向为2-1-4-3-2……)

五、环路原因分析:

我们先看下网络正常时四台路由器的路由表

[R1]dis ip routing-table 1.1.1.1

dis ip routing-table 1.1.1.1

[R3]dis ip routing-table 1.1.1.1

dis ip routing-table 1.1.1.1

再来看下环路发生时四台路由器的路由表(红色是变化的路由,绿色的不变)

[R1]dis ip routing-table 1.1.1.1

<R2>dis ip routing-table 1.1.1.1

[R3]dis ip routing-table 1.1.1.1

<R4>dis ip routing-table 1.1.1.1

此时R4上有去向1.1.1.1的5类LSA,由R2发出

原因分析:当R1失去自己的直连路由时,R4把自己LSDB 里的5类通告(上述红线标记的)算成一个外部路由,其下一条指向R3的34.1.1.1,另外通过我们在R4的配置的import ospf 2 把这条路由通告给R1,R1就算出来去向1.1.1.1的下一跳为R4,于是路由就算成一个环了。

六、环路的规避:

双点单向重分发(或引入)、双点双向重分发引起的环路可以通过route tag 技术来避免,整体的原则是:

路由域A 重分发到路由域B 的路由不允许再重分发回来,A 引入B 打一个特定tag ,等B 引入A 时匹配该tag 时把路由拒绝掉。该例子中配置如下可防止环路:

R2上的配置:

代码语言:javascript
复制
[R2]route-policy settag permit node 10
[R2-route-policy]apply tag 100
[R2-route-policy]ospf 2
[R2-ospf-2]import-route ospf 1 route-policy settag

R4上的配置

代码语言:javascript
复制
[R4]route-policy denytag deny node 10
[R4-route-policy]if-match tag 100
[R4-route-policy]route-policy denytag permit node 20
[R4-route-policy]ospf 1
[R4-ospf-1]import-route ospf 2 route-policy denytag

最后来测试下,发现链路故障时不会再引起环路了:

代码语言:javascript
复制
[R1]inter LoopBack 1
[R1-LoopBack1]undo ip address
ping -c 1 1.1.1.1

至此实验完成

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-05-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 释然IT杂谈 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档