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之间的虚链路的开销值变成了10R3与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表示所选用的认证加密方式1key 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之间的虚链路已经得到恢复。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/10075.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[muduo网络库]——muduo库三大核心组件之 Poller/EpollPoller类(剖析muduo网络库核心部分、设计思想)

接着上文,[muduo网络库]——muduo库三大核心组件之Channel类(剖析muduo网络库核心部分、设计思想),本章我们来学习muduo网络库中第二大核心组件Poller/EpollPoller类。 先回顾一下三大核心组件之间的关系。 接着我们进入正题。 P…

解决VScode -正在本地下载 VS Code 服务器

不知道怎么回事再次连接服务器的时候一直卡在这里了,查看输出信息发现一直卡在下载处,报错信息如图1,输出信息如图2。 1.报错信息 图1 报错信息 图2 输出信息 2.尝试 【已解决】设置SSH主机:VS Code-正在本地下载 VS Code 服务器…

代码随想录算法训练营第二十五天 | 669. 修剪二叉搜索树、108.将有序数组转换为二叉搜索树、538.把二叉搜索树转换为累加树

669. 修剪二叉搜索树 题目链接/文章讲解: 代码随想录 视频讲解: 你修剪的方式不对,我来给你纠正一下!| LeetCode:669. 修剪二叉搜索树_哔哩哔哩_bilibili 解题思路 在上一题的删除二叉树节点中,我们通过在…

无线收发模块家电控制实验

zkhengyang可申请加入数字音频系统研究开发交流答疑群(课题组) 当然可以先用固定电平发送,可以实现,0/1数据发送,接收。 可以使用51单片机来编码码,解码,或者任何MCU或者SOC,DSP,FPGA。 注意G…

初识指针(4)<C语言>

前言 前面的文章,已经对指针的基础概念以及运用有了初步了解,我们可以进一步探究指针比较深入的知识,下文将主要介绍:使用指针数组模拟二维数组、字符指针变量、数组指针、二维数组传参的本质、函数指针、typedef关键字等。 目录…

F. Circle Perimeter

思路&#xff1a;线性时间复杂度就可以解决&#xff0c;不用二分&#xff0c;我们枚举横坐标&#xff0c;然后看当前横坐标情况下多少个纵坐标满足条件。 代码&#xff1a; void solve(){int r;cin >> r;int y r, ans 0;for(int x 0;x < r;x ){ //枚举横坐标x&am…

只需3步,使用Stable Diffusion无限生成AI数字人视频(附安装包)

基本方法 搞一张照片&#xff0c;搞一段语音&#xff0c;合成照片和语音&#xff0c;同时让照片中的人物动起来&#xff0c;特别是头、眼睛和嘴。 语音合成 语音合成的方法很多&#xff0c;也比较成熟了&#xff0c;大家可以选择自己方便的&#xff0c;直接录音也可以&#…

Codeforces Round 944 (Div. 4) A - G

div.4只写部分题解了&#xff0c;都比较基础&#xff0c;数学偏多一点&#xff0c;几乎没有算法&#xff0c;有不懂的欢迎评论区提问&#xff01; A. My First Sorting Problem #include<bits/stdc.h> using namespace std ; typedef long long ll ; const int maxn 2…

org.hsqldb.jdbcDriver 类,导致 ClassNotFoundException 异常如何解决?

确保JDBC驱动包存在&#xff1a;检查系统是否已经安装了HSQLDB JDBC驱动。如果没有安装或驱动没有正确放置在类路径中&#xff0c;需要下载并添加它。你可以从 HSQLDB官网 下载JDBC驱动包。 添加JDBC驱动到类路径&#xff1a;将下载的HSQLDB JDBC驱动&#xff08;通常是一个JA…

2024年,Web开发新趋势!

随着我们迈入新的一年&#xff0c;现在正是审视2024年网页开发领域开始流行哪些趋势的绝佳时机。回顾2023年的一系列更新&#xff0c;以下是来年一些热门话题的概览。 自主托管有回归的趋势 近些年&#xff0c;自主托管一直是网页开发者和公司托管其应用程序的默认方式。开发…

【Linux系统编程】第十六弹---冯诺依曼体系结构与操作系统

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】【C详解】【Linux系统编程】 目录 1、冯诺依曼体系结构 2、操作系统原理 2.1、什么是操作系统&#xff1f; 2.2、用图解释操作系统 2.3、理解操作系统 总结 …

centos7.9系统rabbitmq3.8.5升级为3.8.35版本

说明 本文仅适用rabbitmq为RPM安装方式。 升级准备 查看环境当前版本&#xff1a; # cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core) # rabbitmqctl status Status of node rabbitmq01 ... RuntimeOS PID: 19333 OS: Linux Uptime (seconds): 58 Is under …

在Tiled中制作动画瓦片图

什么是瓦片图&#xff1f;瓦片图是指用图块把游戏场景评出来 工具安装链接&#xff1a;Tiled | Flexible level editor 资源下载教程 资源下载&#xff1a;Mystic Woods - 16x16 Pixel Art Asset Pack by Game Endeavor 解压后得到一些资源 新建图块集合 Tiled的安装就不介绍…

【MySQL】——课程平台的创建设计

&#x1f4bb;博主现有专栏&#xff1a; C51单片机&#xff08;STC89C516&#xff09;&#xff0c;c语言&#xff0c;c&#xff0c;离散数学&#xff0c;算法设计与分析&#xff0c;数据结构&#xff0c;Python&#xff0c;Java基础&#xff0c;MySQL&#xff0c;linux&#xf…

element-plus表单上传,唯一替换文件校验,封装方法统一管理

<el-formref"ruleFormRef":model"ruleForm":rules"rules"label-width"110px" ><el-form-item label"语言成绩材料" prop"languageList"><div class"dis-flex w100"><el-uploadref…

什么是Meme币?——区块链技术的加密货币

Meme代币是一种基于区块链技术的加密货币&#xff0c;旨在为用户提供一种简单、有趣且易于传播的方式来进行数字资产交易和投资。Meme代币通常与特定的主题或故事相关联&#xff0c;通过社交媒体等渠道进行传播和推广&#xff0c;吸引更多的用户参与并增加其价值。 Meme代币的…

英语学习笔记4——Is this your ...?

Is this your …? 词汇 Vocabulary suit /sut/ n. 西装&#xff0c;正装 suit 的配套&#xff1a; shirt n. 衬衫tie n. 领带&#xff0c;领结belt n. 腰带trousers n. 裤子shoes n. 鞋子 school /skuːl/ n. 学校 所有学校 搭配&#xff1a;middle school 初中    hig…

浅谈现代消息队列与云存储

一、前言 1970 年代末&#xff0c;消息系统用于管理多主机的打印作业&#xff0c;这种削峰解耦的能力逐渐被标准化为“点对点模型”和稍复杂的“发布订阅模型”&#xff0c;实现了数据处理的分布式协同。随着时代的发展&#xff0c;Kafka&#xff0c;Amazon SQS&#xff0c;Ro…

C++牛客小白月赛题目分享(1)生不逢七,交换数字,幻兽帕鲁

目录 1.前言 2.三道题目 1.生不逢七 1.题目描述 2.输入描述: 3.输出描述: 4.示例&#xff1a; 5.题解&#xff1a; 2.交换数字 1.题目描述&#xff1a; 2.输入描述&#xff1a; ​编辑 3.输出描述&#xff1a; 4.示例&#xff1a; 5.题解&#xff1a; 3.幻兽帕…

探索震坤行API:一键解锁高效工业用品采购新纪元!

震坤行是一家专注于工业用品的B2B电商平台&#xff0c;为企业客户提供一站式的工业用品采购服务。虽然震坤行没有直接公开通用的API接口供开发者调用&#xff0c;但通常大型企业或合作伙伴之间可以通过API进行系统集成和数据交互。以下是一个假设性的震坤行API接口调用示例与代…