OSPF虚链路—Vlink
作用:专门解决OSPF不规则区域所诞生的技术,是一种虚拟的,逻辑的链路。实现非骨干区域和骨干区域在逻辑上直接连接。注意虚链路条件:只能穿越一个区域,通常对虚链路进行认证功能的配置。虚链路认证也是OSPF接口认证的一种,支持MD5,明文等特性。
由于虚链路只能配置邻居的RID,但是无法获取其他的RID,无法建立邻居。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路径作为冗余备份。另外,为了提高安全性,对于所使用的虚链路应进行认证功能的配置。
一:对接口进行基础IP配置,保证各个自连网段的连通性。
二:搭建OSPF网络
每台路由器上配置OSPF协议,其中R1和R2之间的链路位于区域0,R3和R1,R3和R2之间的链路位于区域2,R3和R4之间的链路位于区域2。
[R1]ospf 1 router-id 10.0.1.1
[R1-ospf-1]a 0
[R1-ospf-1-area-0.0.0.0]network 10.0.12.0 0.0.0.255
[R1-ospf-1-area-0.0.0.0]network 10.0.1.1 0.0.0.0
[R1-ospf-1-area-0.0.0.0]a 1
[R1-ospf-1-area-0.0.0.1]network 10.0.13.0 0.0.0.255
[R2]ospf 1 router-id 10.0.2.2
[R2-ospf-1]a 0
[R2-ospf-1-area-0.0.0.0]network 10.0.12.0 0.0.0.255
[R2-ospf-1-area-0.0.0.0]network 10.0.2.2 0.0.0.0
[R2-ospf-1-area-0.0.0.0]a 1
[R2-ospf-1-area-0.0.0.1]network 10.0.23.0 0.0.0.255
[R3]ospf 1 router-id 10.0.3.3
[R3-ospf-1]a 1
[R3-ospf-1-area-0.0.0.1]network 10.0.13.0 0.0.0.255
[R3-ospf-1-area-0.0.0.1]network 10.0.23.0 0.0.0.255
[R3-ospf-1-area-0.0.0.1]network 10.0.3.3 0.0.0.0
[R3-ospf-1-area-0.0.0.1]a 2
[R3-ospf-1-area-0.0.0.2]network 10.0.34.0 0.0.0.255
[R4]ospf 1 router-id 10.0.4.4
[R4-ospf-1]a 2
[R4-ospf-1-area-0.0.0.2]network 10.0.34.0 0.0.0.255
[R4-ospf-1-area-0.0.0.2]network 10.0.4.4 0.0.0.0
R3上使用命令查看OSPF邻居关系
查看R4LSDB
从中可以看出R4的LSDB中没有区域0中关于10.0.1.1/32和10.0.2.2/32的LSA, 只有本区域的LSA,没有其他区域是LSA。即说明区域2与区域0并没有相连。
三:使用虚链路使区域2与区域0逻辑相连
使用虚链路使区域2与区域0逻辑相连起来,将区域1作为区域2和区域0之间的传输区域。在R3和R1上配置VLINK。
[R3]ospf 1
[R3-ospf-1]a 1
[R3-ospf-1-area-0.0.0.1]vlink-peer 10.0.1.1#10.0.1.1为对方的RID
[R1]ospf 1
[R1-ospf-1]a 1
[R1-ospf-1-area-0.0.0.1]vlink-peer 10.0.3.3
R1使用命令查看虚链路信息
状态为FULL表示成功建立虚链路
R4查看LSDB
可以看出,区域0 和区域1的LSA已经存在,区域0和区域2已经连通。
R4测试与R1,R2的连通性
通过R1和R3之间的虚链路,实现了区域2和区域0的逻辑相连。还需要配置R2与R3之间的虚链路
[R2]ospf 1
[R2-ospf-1]a 1
[R2-ospf-1-area-0.0.0.1]vlink-peer 10.0.3.3
[R3]ospf 1
[R3-ospf-1]a 1
[R3-ospf-1-area-0.0.0.1]vlink-peer 10.0.2.2
四:修改虚链路开销值
R3查看虚链路信息
R3与R1(10.0.1.1)之间,R3与R2(10.0.2.2)之间各存在一条虚链路,开销值Cost都为1。R4访问区域0时,出现负载均衡的情况。实验需求是R4与区域0通信时优先选择R1的路(R4→R3→R1),选择R2的路径进行备份(R4→R3→R2)实现实验需求通过更改虚链路的开销值。
虚链路的开销值是OSPF协议在传输区域内所选用的物理路径的开销值。修改虚链路开销值就是修改物理路径接口两端的开销值。
备份选择路径R4→R3→R2,就是修改R3→R2物理路径两端接口的开销值为10
[R3]int g 0/0/2
[R3-GigabitEthernet0/0/2]ospf cost 10
[R3-GigabitEthernet0/0/2]
[R2]int g 0/0/2
[R2-GigabitEthernet0/0/2]ospf cost 10
[R2-GigabitEthernet0/0/2]
R3上查看虚链路信息
可以看出,R3与R2之间虚链路开销值Cost为10,R3和R1之间虚链路开销值Cost为1。,开销值越大则优先级越低。保证了R4和R3访问区域0时,优先选择R1,备份选择R2。
五:使用虚链路作为区域0链路的冗余备份
由于R1和R2之间只有单条链路连接,如果链路出现故障,就会导致区域0被分割。R1和R2之间属于区域0,区域0为骨干区域不可以被分割。为了保证网络的可靠性,可以将区域1作为传输区域,在R1和R2之间建立一条虚链路作为冗余备份。
[R1]ospf 1
[R1-ospf-1]a 1
[R1-ospf-1-area-0.0.0.1]vlink-peer 10.0.2.2
[R2]ospf 1
[R2-ospf-1]a 1
[R2-ospf-1-area-0.0.0.1]vlink-peer 10.0.1.1
R1查看虚链路信息
可以看出R1到R2的开销值Cost为11,R1使用tracert命令测试访问10.0.2.2/32路径
可以看出10.0.12.2为R2的入接口,即访问路径为直连路径R1→R2。关闭R1的GE 0/0/0接口,模拟R1和R2直连链路出现故障。再次使用tracert命令测试访问10.0.2.2/32路径
[R1]interface GigabitEthernet 0/0/0
[R1-GigabitEthernet0/0/0]shutdown
[R1]tracert 10.0.2.2
可以看出10.0.13.3为R3的入接口,10.0.23.2 为R2的入接口。即访问路径通过区域1到达区域0,及R1→R3→R2。
然后出重新打开R1的GE0/0/0接口
[R1]int g 0/0/0
[R1-GigabitEthernet0/0/0]undo shutdown
六:配置虚链路的认证功能
当我们使用虚链路配置信息时,通常配置认证功能来增强安全性。R1和R2之间虚链路为例子,使用命令hmac-md5 1 plain huawei,hmac-md5表示使用的认证加密方式,1为Key ID,plain huawei表示明文方式显示口令。
[R1]ospf 1
[R1-ospf-1]a 1
[R1-ospf-1-area-0.0.0.1]vlink-peer 10.0.2.2 hmac-md5 1 plain huawei
R1上观察虚链路信息
R1和R2之间的虚链路状态为Down,说明虚链路建立失败。原因在于R2没有进行相应的认证功能
R2上配置认证功能
[R2]ospf 1
[R2-ospf-1]a 1
[R2-ospf-1-area-0.0.0.1]vlink-peer 10.0.1.1 hmac-md5 1 plain huawei
R1再次观察虚链路信息
R1和R2之间的虚链路状态为Full,说明虚链路建立成功。