OSPF虚链路

原理概述

通常情况下,一个OSPF网络的每个非骨干区域都必须与骨干区域通过ABR路由器直接连接,非骨干区域之间的通信都需要通过骨干区域进行中转。但在现实中,可能会因为各种条件限制,导致非骨干区域和骨干区域无法直接连接,在这种情况下,可以使用OSPF虚链路(Virtual Link)来实现非骨干区域与骨干区域在逻辑上直接相连。

OSPF协议必须要求骨干区域必须是唯一且连续的,然而,由于发生故障等原因,骨干区域有可能出现被分割的情况。此时,同样可以使用虚链路来实现物理上被分割的骨干区域能够逻辑相连。

虚链路在网络中会穿越其它区域,因此可能会带来安全隐患,所以通常都会对虚链路进行认证功能的配置。虚链路认证其实是OSPF接口认证的一种,支持MD5、HMAC-MD5、明文及Keychain等特性。

实验目的

理解OSPF虚链路的应用场景

掌握OSPF虚链路的配置方法

掌握OSPF虚链路认证功能的配置方法

实验内容

实验拓扑如图所示。本实验模拟了一个企业网络场景,全网运行OSPF,路由器R1、R2为公司总部路由器,R3为新建公司的接入路由器,R4为分公司下面的分支机构的接入路由器。由于网络升级尚未完成,所以目前的区域划分是:R1与R2之间的链路位于区域0,R3与R1,R3与R2之间的链路位于区域1,R3与R4之间的链路位于区域2.网络需求是:使用虚链路技术,使得分支机构所属的区域2能够访问总部网络,且优先使用路径R4-R3-R1,并以R4-R3-R2路径作为备份。同时,总部路由器R1和R2之间的通信需要采用R1-R3-R2路径作为冗余备份。另外,为了提高安全性,对于所使用的虚链路应进行认证功能的配置。

实验拓扑

1.基本配置

根据拓扑图进行相应的基本配置,并使用ping命令检测R1与R3之间的连通性。

其余直连网段的连通性测试在此省略。

2.搭建OSPF网络

在每台路由器上配置OSPF协议,其中R1与R2之间的链路位于区域0,R3与R1,R3与R2之间的链路位于区域1,R3与R4之间的链路位于区域2。

r1\]ospf 10 router-id 10.0.1.1 \[r1-ospf-10\]area 0 \[r1-ospf-10-area-0.0.0.0\]net 10.0.12.0 0.0.0.255 \[r1-ospf-10-area-0.0.0.0\]net 10.0.1.1 0.0.0.0 \[r1-ospf-10-area-0.0.0.0\]area 1 \[r1-ospf-10-area-0.0.0.1\]net 10.0.13.0 0.0.0.255 \[r2\]ospf 10 router-id 10.0.2.2 \[r2-ospf-10\]area 0 \[r2-ospf-10-area-0.0.0.0\]net 10.0.12.0 0.0.0.255 \[r2-ospf-10-area-0.0.0.0\]net 10.0.2.2 0.0.0.0 \[r2-ospf-10-area-0.0.0.0\]area 1 \[r2-ospf-10-area-0.0.0.1\]net 10.0.23.0 0.0.0.255 \[r3\]ospf 10 router-id 10.0.3.3 \[r3-ospf-10\]area 1 \[r3-ospf-10-area-0.0.0.1\]net 10.0.13.0 0.0.0.255 \[r3-ospf-10-area-0.0.0.1\]net 10.0.23.0 0.0.0.255 \[r3-ospf-10-area-0.0.0.1\]net 10.0.3.3 0.0.0.0 \[r3-ospf-10-area-0.0.0.1\]area 2 \[r3-ospf-10-area-0.0.0.2\]net 10.0.34.0 0.0.0.255 \[r4\]ospf 10 router-id 10.0.4.4 \[r4-ospf-10\]area 2 \[r4-ospf-10-area-0.0.0.2\]net 10.0.34.0 0.0.0.255 \[r4-ospf-10-area-0.0.0.2\]net 10.0.4.4 0.0.0.0

配置完成后,查看R3的OSPF邻居关系。

可以看到,R3的邻居关系都处于Full状态,表明各路由器之间已经成功建立了邻居关系。

查看R4的LSDB。

可以看到,R4的LSDB中没有区域0中关于10.0.1.1/32和10.0.2.2/32的LSA,也没有任何其他区域的LSA,仅仅只有本区域的Type-1 LSA和Type-2 LSA,这说明区域2中并没有ABR存在,即区域2并未与区域0相连,也无法与其他区域进行正常通信。

3.使用虚链路使区域2与区域0逻辑相连

接下来将使用虚链路使区域2与区域0在逻辑上相互连接起来,此时的区域1将作为区域2与区域0之间的传输区域。虚链路配置操作将在连接区域2与区域1的R3上,以及连接区域1与区域0的ABR路由器R1上进行。

在R3的区域1视图下,使用vlink-peer命令建立与R1的虚链路。

r3\]ospf 10 \[r3-ospf-10\]area 1 \[r3-ospf-10-area-0.0.0.1\]vlink-peer 10.0.1.1

同样,在R1的区域1视图下,使用vlink-peer命令建立与R3的虚链路。

r1\]ospf 10 \[r1-ospf-10\]area 1 \[r1-ospf-10-area-0.0.0.1\]vlink-peer 10.0.3.3

配置完成后,在R1上使用命令display ospf vlink查看虚链路信息。

可以看到,R1与R3已经成功建立了虚链路,虚链路的状态为FULL。

查看R4的LSDB。

可以看到,R4的LSDB中出现了由R3通告的,关于区域0和区域1的Type-3 LSA;说明此时R4已经将R3作为连接区域2至区域0的ABR了。

测试R4与R1和R2的连通性。

可以看到,通信是正常的。

4.修改虚链路的开销值

通过R1与R3之间的虚链路,实现了区域2与区域0的逻辑相连。然而,区域1与区域0之间的ABR除了R1之外,还有R2。同样,也可以在R2与R3之间建立一条虚链路。

r2\]ospf 10 \[r2-ospf-10\]area 1 \[r2-ospf-10-area-0.0.0.1\]vlink-peer 10.0.3.3 \[r3\]ospf 10 \[r3-ospf-10\]area 1 \[r3-ospf-10-area-0.0.0.1\]vlink-peer 10.0.2.2

配置完成后,在R3上查看虚链路信息。

可以看到,现在在R3与R1之间、R3与R2之间各存在一条虚链路,开销值均为1,那么当R4访问总部网络区域0时,就会出现负载均衡的情形。新的需求是:R4与区域0通信时优先选用经由R1的路径,并以经由R2的路径作为备份,实现方法是修改虚链路的开销值。

由于虚链路实际使用的路径是在传输区域内经过SPF(Short Path First)算法计算出的最优路径,虚链路的开销值其实就是OSPF协议在传输区域内所选用的物理路径的开销值,所以修改虚链路的开销值其实就是修改物理路径的OSPF开销值。

在R3的GE0/0/2接口上修改OSPF协议开销值。

r3\]int g0/0/2 \[r3-GigabitEthernet0/0/2\]ospf cost 10

在R2的GE0/0/2接口上完成同样的配置。

r2\]int g0/0/2 \[r2-GigabitEthernet0/0/2\]ospf cost 10

配置完成后,在R3上查看虚链路信息。

可以看到,R3与R2之间的虚链路的开销值变成了10,R3与R1之间的虚链路的开销值保持为1。在这样的条件下,R4或R3都将通过经由R1的路径访问区域0,并以经由R2的路径作为备份。

5.使用虚链路作为区域0链路的冗余备份

目前,R1与R2之间只有单条链路连接,如果出现链路故障,就会导致区域0被分割的问题。为了解决这一问题,增强网络的可靠性,可以以区域1为传输区域,在R1与R2之间建立一条虚链路作为冗余备份。

r1\]ospf 10 \[r1-ospf-10\]area 1 \[r1-ospf-10-area-0.0.0.1\]vlink-peer 10.0.2.2 \[r2\]ospf 10 \[r2-ospf-10\]area 1 \[r2-ospf-10-area-0.0.0.1\]vlink-peer 10.0.1.1

配置完成后,在R1上查看虚链路信息。

可以看到,R1与R2之间的虚链路的开销为11。在R1上使用tracert命令测试访问10.0.2.2/32的路径。

可以发现,此时R1与R2之间的通信使用的仍是直连链路。关闭R1的GE0/0/0接口,模拟链路出现故障。

r1\]int g0/0/0 \[r1-GigabitEthernet0/0/0\]shutdown

然后,再次用tracert命令进行测试。

可以看到,现在R1与R2采用了虚链路进行通信。

为进行后续实验,请重新打开R1的GE0/0/0接口。

r1\]int g0/0/0 \[r1-GigabitEthernet0/0/0\]undo shutdown

6.配置虚链路的认证功能

由于虚链路使用了其它传输区域的物理链路,所以通常应配置认证功能来增强安全性。以R1与R2之间的虚链路为例,在R1上区域1的视图下,使用命令vlink-peer 10.0.2.2 hmac-md5 1 plain huawei ,其中hmac-md5表示所选用的认证加密方式,1为key ID,plain huawei表示以明文方式显示口令,口令为huawei。

r1\]ospf 10 \[r1-ospf-10\]area 1 \[r1-ospf-10-area-0.0.0.1\]vlink-peer 10.0.2.2 hmac-md5 1 plain huawei

配置完成后,在R1上查看虚链路信息。

可以看到,目前R1与R2之间的虚链路状态为Down,说明虚链路建立失败, 原因是R2还未进行相应的认证功能配置。

在R2上配置认证功能。

r2\]ospf 10 \[r2-ospf-10\]area 1 \[r2-ospf-10-area-0.0.0.1\]vlink-peer 10.0.1.1 hmac-md5 1 plain huawei

配置完成后,重新在R1上观察链路状态信息。

可以看到,R1与R2之间的虚链路已经得到恢复。

相关推荐
一只游鱼6 分钟前
webSocket快速入门
网络·websocket·网络协议
Guheyunyi1 小时前
消防管理系统如何重构现代空间防御体系
大数据·运维·人工智能·安全·信息可视化·重构
我是好小孩1 小时前
【Android】六大设计原则
android·java·运维·服务器·设计模式
孙同学要努力2 小时前
《Linux篇》进程状态——浅度、深度睡眠状态、僵尸状态、运行状态
linux·运维
jieyu11193 小时前
Linux Rootkit 详解
linux·运维·系统安全
宁檬精3 小时前
运维面试准备——综合篇(一)
linux·运维·服务器
AALoveTouch3 小时前
大麦网抢票:基于Wireshark协议分析
网络·测试工具·wireshark
weixin_456904273 小时前
工业自动化通信控制
运维·struts·自动化
爱奥尼欧4 小时前
【Linux笔记】网络部分——socket 编程 TCP实现多台虚拟机使用指令访问云服务器
linux·服务器·网络
luopandeng4 小时前
amd npt技术 对比 intel ept 技术
java·linux·网络