使用eNSP模拟 路由引入综合实验
次优路由 路由回环的解决办法
实验配套拓扑:
Route Import Comprehensive.topo
目录
拓扑预览
要求:
1 配置基本地址信息和路由协议
2 R2把OSPF引入到RIP
3 R4把RIP引入到OSPF
4 R5把直连引入到OSPF
5 R3把直连和静态引入到RIP 不引入/25路由
6 避免次优路由和路由环路
蓝色-OSPF区域
黄色-RIP区域
一、基础配置 及 次优路由 路由回环 的构造
1.基础配置
1.1 配置R5
在R5中键入以下命令:
sys
sys R5
int s4/0/0
ip add 15.0.0.5 24
int lo 5
ip add 5.5.5.5 32
ospf 1 router-id 5.5.5.5
area 0
net 15.0.0.5 0.0.0.255
1.2 配置R1
在R1中键入以下命令:
sys
sys R1
int g0/0/0
ip add 12.0.0.1 24
int g0/0/1
ip add 14.0.0.1 24
int s4/0/0
ip add 15.0.0.1 24
ospf 1 router-id 1.1.1.1
area 0
net 12.0.0.1 0.0.0.255
net 14.0.0.1 0.0.0.255
net 15.0.0.1 0.0.0.255
1.3 配置R4
在R4中键入以下命令:
sys
sys R4
int g0/0/0
ip add 14.0.0.4 24
int g0/0/1
ip add 34.0.0.4 24
rip 1
ver 2
net 34.0.0.0
ospf 1 router-id 4.4.4.4
area 0
net 14.0.0.4 0.0.0.255
1.4 配置R2
在R2中键入以下命令:
sys
sys R2
int g0/0/0
ip add 12.0.0.2 24
int g0/0/1
ip add 23.0.0.2 24
rip 1
ver 2
net 23.0.0.0
ospf 1 router-id 2.2.2.2
area 0
net 12.0.0.2 0.0.0.255
1.5 配置R3
在R3中键入以下命令:
sys
sys R3
int g0/0/0
ip add 23.0.0.3 24
int g0/0/1
ip add 34.0.0.3 24
int lo 3
ip add 3.3.3.3 32
rip 1
ver 2
net 34.0.0.0
net 23.0.0.0
1.6 验证OSPF区域
在R1中键入以下命令:
dis ospf peer brief
查看R1邻居
1.7 验证RIP区域
在R2 R4中键入以下命令:
dis ip routing-table protocol rip
验证R2 R4 学到的路由
互相学习到对方的路由
2. 次优路由 和 路由环路 的构造
将直连5.5.5.5引入进OSPF
再在R2把OSPF引入进RIP
再在R4把RIP引入进OSPF 形成路由环路
在R5中键入以下命令:
acl 2000
rule permit source 5.5.5.5 0
route-policy admin permit node 10
if-match acl 2000
q
ospf 1
import-route direct route-policy admin
在R4中键入以下命令:
sys
sys R4
ospf 1
import-route rip 1 route-policy admin
q
acl 2000
rule permit source 5.5.5.5 0
route-policy admin permit node 10
if-match acl 2000
在R2中键入以下命令:
sys
sys R2
rip 1
import-route ospf 1 route-policy admin
q
acl 2000
rule permit source 5.5.5.5 0
route-policy admin permit node 10
if-match acl 2000
在R5中键入命令并验证R5是否有Type 5的LSA
在R5中键入如下命令:
dis ospf lsdb
查看R5的LSDB
验证R3是否学到5.5.5.5
在R3中键入以下命令:
dis ip routing-table protocol rip
对R4来说 在OSPF区域和RIP区域都学到5.5.5.5
由此产生次优路由
通过OSPF区域学到的5.5.5.5的优先级为150
通过RIP区域学到的5.5.5.5的优先级为100
则R4的下一跳为R3
R4到5.5.5.5的路径为R4-R3-R2-R1-R5
这就是次优路由 即绕远路 消耗资源
查看R4路由表
在R4中键入以下命令:
dis ip routing-table 5.5.5.5
此时让R4ping 5.5.5.5 不通
从OSPF区域的接口ping 5.5.5.5可以通
查看当前R1路由表
看5.5.5.5的下一跳
在R1中键入以下命令:
dis ip routing-table protocol ospf
可以看到下一跳是R4并不是R5
由此产生路由环路
数据包会在R1 R4 R3 R2 间循环
且TTL每次会减4
直到TTL = 0
大量消耗资源且无法正常通信
所以我们需要想办法解决次优路由和路由环路等由于路由引入而出现的问题
二、次优路由 路由回环的解决及题目要求的解答过程
1. 回顾题目要求 及 路由引入的优先级介绍
要求:
1 配置基本地址信息和路由协议
2 R2把OSPF引入到RIP
3 R4把RIP引入到OSPF
4 R5把直连引入到OSPF
5 R3把直连和静态引入到RIP 不引入/25路由
6 避免次优路由和路由环路
其中第一步已实现 且次优路由 和 路由环路已经构造
现在关闭各设备
重启
重新配置 一、1 中的各路由器基础配置
路由引入的优先级
2. R2把OSPF引入到RIP
R2会把12.0.0.0/24 14.0.0.0/24 15.0.0.0/24网段的路由引入RIP R2
对于R2的左边区域 是从OSPF学习到的 优先级为10
对于R2的右边区域 是从RIP学习到的 优先级为100
则这些路由还是从优先级小的OSPF区域通过
在R2中键入以下命令:
rip 1
import-route ospf 1
验证R3是否学习到三个网段
在R3中键入以下命令:
dis ip routing-table protocol rip
进入RIP 默认种子度量值=0
R4应该可以学习到两个网段12.0.0.0/24 和 15.0.0.0/24
因为14.0.0.0/24网段是直连的 直连比OSPF RIP 更优
在R4中键入以下命令:
dis ip routing-table protocol rip
虽然都学习到 但都是未激活状态
3. R4把RIP引入到OSPF
R4会把23.0.0.0/24 34.0.0.0/24网段的路由引入OSPF
R2从OSPF区域学习到
进入OSPF的外部路由优先级为150
进入RIP的路由优先级为100
则这些路由还是从优先级小的RIP区域通过
在R4中键入以下命令:
ospf 1
import-route rip 1
验证R1 R5是否学到23.0.0.0/24 34.0.0.0/24网段
在R1中键入以下命令:
dis ospf routing
在R1中键入以下命令:
dis ospf lsdb
R1如此 R5也同理
此时已经全网通
R5可以ping通R3
在R5中键入以下命令:
ping 34.0.0.3
虽然已经全网通
但还是存在一些问题
如次优路由
R3到达14.0.0.0/24网段还是经过R2
明显直接通过R4最优
R1到达23.0.0.0/24网段还是经过R4
明显直接通过R2最优
产生这些情况的原因是单点引入
后续会讲解多点引入
4. R5将直连引入到OSPF
R5引入直连 优先级均为150
然后又经过R2 R4的引入
最后又会回到R1 优先级全为150
则此时要比较开销 如果开销一致则负载均衡
同时也会出现环路
调用前缀列表
在R5中键入以下命令:
ip ip-prefix admin permit 5.5.5.5 32
route-policy admin permit node 10
if-match ip-prefix admin
q
ospf 1
import-route direct route-policy admin
验证R5数据库
在R5中键入以下命令:
dis ospf lsdb
由此发现问题
5.5.5.5这条路由 有两个路由器进行宣告
应该只有R5宣告才正确
R4宣告是因为路由的引入
从OSPF区域发送出去的路由又回到OSPF区域
查看R1路由表
在R1中键入以下命令:
dis ip routing-table protocol ospf
可见
下一跳为R4
R4下一跳肯定为R3
R3下一跳肯定为R2
R2下一跳肯定选为R1
由此产生环路
下面使用tracert命令查看环路
在R1中键入以下命令:
tracert 5.5.5.5
出现典型的环路现象
数据包转至TTL=0才停止发送
环路问题是因为路由被回馈
解决方法就是将一些路由过滤掉
在R4中键入以下命令:
ip ip-prefix admin deny 5.5.5.5 32
ospf 1
filter-policy ip-prefix admin export
q
ip ip-prefix admin permit 0.0.0.0 0 less 32
或
ip ip-prefix admin permit 5.5.5.5 32
route-policy admin deny node 10
if-match ip-prefix admin
route-policy admin permit node 20
ospf 1
import-route rip route-policy admin
验证R5数据库中 重叠宣告的5.5.5.5是否只剩下一条
在R5中键入以下命令:
dis ospf lsdb
测试5.5.5.5能否ping通
在R3中键入以下命令:
ping 5.5.5.5
再次验证R3路由表
在R3中键入以下命令:
dis ip routing-table protocol rip
下一跳被修改为R2
5. R3把直连和静态引入到RIP 且不引入/25路由
配置静态与直连 并引入
在R3中键入以下命令:
sys
sys R3
ip route-static 172.16.0.0 24 NULL 0
ip route-static 172.16.0.0 25 NULL 0
rip 1
import-route static
q
ip ip-prefix admin permit 172.16.0.0 24
ip ip-prefix admin permit 3.3.3.3 32
route-policy admin permit node 10
if-match ip-prefix admin
rip 1
import-route static route-policy admin
import-route direct route-policy admin
查看R5的LSDB
在R5中键入以下命令:
dis ip routing-table protocol ospf
查看是否学习到两个不同掩码的静态路由
引入直连后再次验证
在R5中键入以下命令:
dis ip routing-table protocol ospf
已经去除/25网段
在R5中键入以下命令:
ping -a 5.5.5.5 3.3.3.3
再来看一下ping时所经过的路径
在R5中键入以下命令:
tracert 3.3.3.3
发包时走的是R5-R1-R4-R3
在R3中键入以下命令:
tracert 5.5.5.5
回包时走的是R3-R2-R1-R5
配置完成 复盘拓扑