拓扑
::: hljs-left
:::
配置思路
::: hljs-left
:::
基本配置
R1
#
interface Serial1/0/0
link-protocol ppp
ip address 10.0.12.1 255.255.255.0
#
interface Serial1/0/1
link-protocol ppp
ip address 10.0.14.1 255.255.255.0
#
interface LoopBack0
ip address 10.0.1.1 255.255.255.255
#
interface LoopBack1
ip address 192.168.1.1 255.255.255.0
#
interface LoopBack2
ip address 192.168.2.1 255.255.255.0
#
interface LoopBack3
ip address 192.168.3.1 255.255.255.0
#
interface LoopBack4
ip address 192.168.4.1 255.255.255.0
#
R2
#
interface Serial1/0/0
link-protocol ppp
ip address 10.0.12.2 255.255.255.0
#
interface Serial1/0/1
link-protocol ppp
ip address 10.0.23.1 255.255.255.0
#
R3
#
interface Serial1/0/0
link-protocol ppp
ip address 10.0.34.2 255.255.255.0
#
interface Serial1/0/1
link-protocol ppp
ip address 10.0.23.2 255.255.255.0
#
R4
interface Serial1/0/0
link-protocol ppp
ip address 10.0.14.2 255.255.255.0
#
interface Serial1/0/1
link-protocol ppp
ip address 10.0.34.1 255.255.255.0
#
测试直连连通性
::: hljs-left
:::
搭建ospf和rip网络
summary命令用来使能RIP有类聚合,聚合后的路由以使用自然掩码的路由形式发布。
undo summary命令用来取消有类聚合以便在子网之间进行路由,此时,子网的路由信息就会被发布出去。路由聚合降低了路由表中路由信息量。
缺省情况下,RIP-2启用有类聚合功能。
R1-R1和R1-R4之间运行运行RIPv2,R2-R3-R4运行OSPF,在R2和R4上将rip路由引入到OSPF中。
R1
#
rip 1
undo summary
version 2
network 10.0.0.0
network 192.168.1.0
network 192.168.2.0
network 192.168.3.0
network 192.168.4.0
#
R2
#
rip 1
undo summary
version 2
network 10.0.0.0
#
ospf 1 router-id 2.2.2.2
import-route rip 1
area 0.0.0.0
network 10.0.23.1 0.0.0.0
#
R4
#
rip 1
undo summary
version 2
network 10.0.0.0
#
ospf 1 router-id 4.4.4.4
import-route rip 1
area 0.0.0.0
network 10.0.34.1 0.0.0.0
#
R3
#
ospf 1 router-id 3.3.3.3
area 0.0.0.0
network 10.0.23.2 0.0.0.0
network 10.0.34.2 0.0.0.0
#
查看R3上的路由表
::: hljs-left
:::
可以看到R3已经学到了RIP中的路由,默认情况下被引入到ospf中的路由Cost值为1,Cost Type为Type-2,协议优先级为150,R3-R1方向出现了冗余。
利用route-policy对引入到ospf的路由进行过滤修改
- 规定R3-R1的192.168.1.0和192.168.3.0走R3-R2-1,这两个网段引入到ospf时cost值为20,cost tyoe为Type-1。为了实现主备,要求R3-R4-R1为备用链路,192.168.1.0和192.168.3.0引入到ospf时cost值为30,cost type为Type-1,这样当第一条链路不通时,会切换到备用链路。
- 规定R3-R1的192.168.2.0和192.168.4.0走R3-R4-R1,这两个网段引入到OSPF时cost值为20,cost type为Type-2。为了实现主备,要求R3-R2-R1为备用链路,192.168.2.0和192.168.4.0引入到ospf时cost值为30.cost type为Type-2,这样当第一条链路不通时,会切换到备用链路。
R2
#
acl number 2000
rule 10 permit source 192.168.1.0 0.0.0.255
rule 20 permit source 192.168.3.0 0.0.0.255
acl number 2001
rule 10 permit source 192.168.2.0 0.0.0.255
rule 20 permit source 192.168.4.0 0.0.0.255
#
route-policy import-route permit node 5
if-match acl 2000
apply cost 20
apply cost-type type-1
#
route-policy import-route permit node 10
if-match acl 2001
apply cost 30
apply cost-type type-2
#
ospf 1 route-id 2.2.2.2
import-route rip 1 route-policy import-route
area 0.0.0.0
network 10.0.23.1 0.0.0.0
#R4
#
acl number 2000
rule 10 permit source 192.168.1.0 0.0.0.255
rule 20 permit source 192.168.3.0 0.0.0.255
acl number 2001
rule 10 permit source 192.168.2.0 0.0.0.255
rule 20 permit source 192.168.4.0 0.0.0.255
#
route-policy import-route permit node 5
if-match acl 2000
apply cost 30
apply cost-type type-1
#
route-policy import-route permit node 10
if-match acl 2001
apply cost 20
apply cost-type type-2
#
ospf 1 router-id 4.4.4.4
import-route rip 1 route-policy import-route
area 0.0.0.0
network 10.0.34.1 0.0.0.0
#测试路由主备切换
::: hljs-left
:::
通过路由表可以看出
- 到192.168.1.0和192.168.3.0的主路由为R3-R2-R1
- 到192.168.2.0和192.168.4.0的主路由为R3-R4-R1
- 当R3的Serial1/0/1接口故障,再次查看路由表
::: hljs-left
- 当R3的Serial1/0/1接口故障,再次查看路由表
:::
- 到192.168.1.0和192.168.3.0的切换为备用路由为R3-R4-R1
- 到192.168.2.0和192.168.4.0没有影响
- 当R3的Serial1/0/0接口故障,再次查看路由表
::: hljs-left
- 当R3的Serial1/0/0接口故障,再次查看路由表
:::
- 到192.168.1.0和192.168.3.0的主路由为R3-R2-R1
- 到192.168.2.0和192.168.4.0的切换备用路由R3-R2-R1
- 查看过几遍的路由表后发现在R1路由骑上的10.0.1.1/32这个地址没有出现,也就意味这不可达,这是因为路由策略的默认规则是如果一条路由没有通过任何一个node,那么不会被引入,所以要想叫10.0.1.1引入还得在最后加一条大的节点,允许任何路由通过。
::: hljs-left
- 查看过几遍的路由表后发现在R1路由骑上的10.0.1.1/32这个地址没有出现,也就意味这不可达,这是因为路由策略的默认规则是如果一条路由没有通过任何一个node,那么不会被引入,所以要想叫10.0.1.1引入还得在最后加一条大的节点,允许任何路由通过。
:::
- 此时可以看到R3-R1的10.0.1.1有两条路可以选
- R3-R2-R1
- R3-R4-R1
IP-Prefix的应用
R2
#
ip ip-prefix filter-IP index 5 permit 10.0.12.0 24
ip ip-prefix filter-IP index 10 permit 10.0.14.0 24
#
route-policy import-route deny node 15
if-match ip-prefix filter-IP
#R4
#
ip ip-prefix filter-IP index 5 permit 10.0.12.0 24
ip ip-prefix filter-IP index 10 permit 10.0.14.0 24
#
route-policy import-route deny node 15
if-match ip-prefix filter-IP
#::: hljs-left
:::
- 从路由表上可以看到此时10.0.12.0和10.0.14.0两个段已经被过滤