我们知道路由选路的原则是
这就造成了我们在进行双电双向引入不同的路由协议,由于路由协议优先级的差别可能会产生环路。本实验将通过以下拓扑详细分析环路的产生原因及其解决办法。主要用到的方法是路由策略
实验需求如下:
某公司内部网络环境部署规划如图所示,公司网络中有两部分路由区域,一部分运行OSPF,另外一部分运行RIP。你作为公司的网络管理员,请根据需求完成项目部署。
1.为了方便管理员管理设备,请按图示修改设备名称;
2.根据各网段IP地址规划、配置相应接口IP(例如:R1接口设置为192.168.12.1,R2则为192.168.12.2),并测试直连网段的连通性。R1、R7上分别存在三条外部条目用环回口表示(用Loopback 1,2,3写三个环回口);
3.在R1,R2上运行OSPF,且属于区域1,在R2,R3,R4,R5上运行OSPF,且属于区域0,并通告相应网段,实现OSPF区域网络互联(配置OSPF时注意手动指定RID,如R1为1.1.1.1)。在R4,R5,R6,R7上运行RIPv2,并通告相应网段,实现RIP区域网络互联;
前三部分为基础配置,具体的配置方法会附在后面的基础配置文档里,在配置的时候可以直接导入。
4.根据业务需求、现需要将外部条目引入并进行相关的属性调整,具体需求如下:
1.在R1上将外部条目导入到对应的OSPF条目中,但是只导入/24掩码的条目同时将导入的条目cost修改为5(限定方法:只写一条ip ip-prefix且route-policy只能写一个节点,然后通过import-route修改cost);
配置思路:由于方法限定,所以在写路由策略的时候不需要写apply,只需要先写前缀列表锁定目标,在策略里抓取,然后在引入路由的时候应用即可。
配置命令:
ip ip-prefix L-R1 permit 192.168.0.0 16 greater-equal 24 less-equal 25
route-policy L-R1 permit node 10
if match ip-prefix L-R1
q
ospf 1
import-route direct cost 5 route-policy L-R1
在R2上查看实验现象:
从上图中我们可以看到引入的外部路由优先级为150,开销为5。
2.在R7上将外部条目导入到对应的RIP条目中,在R6上查看导入的三条外部路由条目度量值分别为3、4、5(限定方法:通过ACL抓取目标路由信息、route-policy修改度量值);
配置命令:(本实验所有的配置命令,脚本会附在文末)
配置ACL
Basic ACL 2000, 1 rule
Acl's step is 5
rule 5 permit source 10.1.1.0 0.0.0.255 (8 matches)
Basic ACL 2001, 1 rule
Acl's step is 5
rule 5 permit source 10.1.2.0 0.0.0.255 (5 matches)
Basic ACL 2002, 1 rule
Acl's step is 5
rule 5 permit source 10.1.3.0 0.0.0.255 (2 matches)
配置策略
Route-policy : L-R7
permit : 10 (matched counts: 8)
Match clauses :
if-match acl 2000
Apply clauses :
apply cost 2
permit : 20 (matched counts: 7)
Match clauses :
if-match acl 2001
Apply clauses :
apply cost 3
permit : 30 (matched counts: 3)
Match clauses :
if-match acl 2002
Apply clauses :
apply cost 4
引入时调用
import-route direct route-policy L-R7
实验现象:(eNSP上可能会出现开销值没改变的情况,保存配置后重启路由器即可,要对自己的配置有自信。)
实验现象对比说明:
在R1和R7的两次引入中,我们用了两种不同的方法,在R1的引入中,我们直接在引入的时候更改为5。但是在R7的路由引入时为了让R6上的开销为3,4,5。我们在做策略的时候做了cost减一操作,这是因为不同路由协议间路由引入时度量值不同造成的。
3.在R6上通过Filter-policy和ACL进行过滤,让R5和R4不学习到10.1.3.0的条目;
实验配置
ACL抓取目标
Basic ACL 2000, 2 rules
Acl's step is 5
rule 5 deny source 10.1.3.0 0.0.0.255 (2 matches)
rule 10 permit (17 matches)
在RIP里进行filter-policy过滤
filter-policy 2000 export(只能做出方向过滤)
实验现象
可以看到10.1.3.0已经被过滤
4.在R5上将OSPF的路由直接引入到RIP中,同时在R4上将RIP的条目直接引入到OSPF中,在R7上tracert 192.168.1.1和在R1上tracert 10.1.1.1,分析网络中产生的环路及原因;
实验现象
我们可以看到R7在tracert192.168.1.1时产生了环路
R1tracert10.1.1.1时没有,这是为什么呢?
通过对拓扑进行分析,结合前面所说的路由选路原则可知。
在R4,R5上做引入之后;在R4上,因为同时从OSPF的外部路由和RIP出获得192.168.1.0的路由,优先级分别为150,100,所以R4选择rip获得的路由。即R4去往192.168.1.0的路径为R6-R5-R3。即次优路径;
然后R3上,因为从OSPF外部路由获得的192.168.1.0的开销为5,而从R4处获得的外部路由条目192.168.1.0的路由开销为1,所以R3去往192.168.1.0的路由是R3-R4;因此环路产生了
那么如何解决这个问题呢?主要思路如下:
1.在R4上更改RIP的优先级,使其大于150
2.使用路由过滤,过滤掉来自R6发给R4关于192.168.0.0/24网段的更新
5.使用Route-policy(只写一个节点)和使用最少条目的ACL在R4上过滤相关的路由信息避免路由环路。环路解决后,在R4上通过Tracert访问R1环回口条目,查看路径会产生次优路径,并进行分析;
实验配置
配置ACL,锁定目标
Basic ACL 2000, 2 rules
Acl's step is 5
rule 5 deny source 192.168.0.0 0.0.255.255 (2 matches)
rule 10 permit (88 matches)
配置路由策略抓取目标
Route-policy : R6-R4
permit : 10 (matched counts: 88)
Match clauses :
if-match acl 2000
应用
import-route rip 1 route-policy R6-R4
实验现象:
次优路径产生的原因:在R4,R5上做引入之后;在R4上,因为同时从OSPF的外部路由和RIP出获得192.168.1.0的路由,优先级分别为150,100,所以R4选择RIP获得的路由。即R4去往192.168.1.0的路径为R6-R5-R3。即次优路径;
我们在上一步过滤掉来自192.168.0.0/16网段的更新只在引入的时候阻隔,实际上仍然有将更新发送给R4。所以R4在访问192.168.1.1时仍然存在次优路径
6.在R4上修改路由优先级避免次优路径,之后测试R4通过Tracert访问R1环回口条目没有次优路径;
实验配置:
配置ACL
acl number 2000
rule 5 deny source 192.168.0.0 0.0.255.255
rule 10 permit
配置路由策略
Route-policy : R4-R3
permit : 10 (matched counts: 36)
Match clauses :
if-match acl 2001
Apply clauses :
apply preference 160
应用
preference route-policy R4-R3
实验现象:
7.通过Traffic-policy实现以下需求:
R1使用192.168.1.1去访问R7的10.1.1.1的时候,通过R4去访问;
R1使用192.168.2.1去访问R7的10.1.2.1的时候,通过R5去访问。
配置命令
[AR3]acl 3000
[AR3-acl-adv-3000]rule permit ip source 192.168.1.1 0 destination 10.1.1.1 0
[AR3]acl 3001
[AR3-acl-adv-3000]rule permit ip source 192.168.2.1 0 destination 10.1.2.1 0
创建流分类:
Traffic classifier R3-R4
If-match acl 3000
Traffic classifier R3-R5
If-match acl 3001
创建流行为:
Traffic behavior R3-R4
Redirect ip-nexthop 192.168.34.4
Traffic behavior R3-R5
Redirect ip-nexthop 192.168.35.5
策略路由关联流分类,流行为:
Traffic policy R3R4
Traffic R3-R4 behavior R3-R4
Traffic R4-R5 behavior R4-R5
接口调用:
Int g0/0/0
Traffic-policy R3R4 inbound
实验现象:
附加思考题:
先在R7上将物理接口G0/0/0关闭再打开,再测试第八步需求,分析现象。
现象:会产生环路
产生环路的原因:断掉R7的物理口,R6并不知道这一情况,仍然向R4和R5发送更新报文。更新报文中的路由信息仍然又R7的条目。这些路由信息会被发送给ospf,最后转发给R6,但是下一跳不可达,此时会产生环路。
解决方法:先不要将ospf引入到rip中,等待rip收敛完成再进行引入
实验配置脚本链接如下:
https://pan.baidu.com/s/1lv3bD6GvB4ZXMA9jxeOFdw 提取码:1hay