当前位置: 首页 > news >正文

HCIP—OSPF虚链路实验

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,说明虚链路建立成功。

相关文章:

HCIP—OSPF虚链路实验

OSPF虚链路—Vlink 作用:专门解决OSPF不规则区域所诞生的技术,是一种虚拟的,逻辑的链路。实现非骨干区域和骨干区域在逻辑上直接连接。注意虚链路条件:只能穿越一个区域,通常对虚链路进行认证功能的配置。虚链路认证也…...

RAxML-NG安装与使用-raxml-ng-v1.2.0(bioinfomatics tools-013)

01 背景 1.1 ML树 ML树,或最大似然树,是一种在进化生物学中用来推断物种之间进化关系的方法。最大似然(Maximum Likelihood, ML)是一种统计框架,用于估计模型参数,使得观察到的数据在该模型参数下的概率最…...

Tomcat内存马

Tomcat内存马 前言 描述Servlet3.0后允许动态注册组件 这一技术的实现有赖于官方对Servlet3.0的升级,Servlet在3.0版本之后能够支持动态注册组件。 而Tomcat直到7.x才支持Servlet3.0,因此通过动态添加恶意组件注入内存马的方式适合Tomcat7.x及以上。…...

pytorch之诗词生成3--utils

先上代码: import numpy as np import settingsdef generate_random_poetry(tokenizer, model, s):"""随机生成一首诗:param tokenizer: 分词器:param model: 用于生成古诗的模型:param s: 用于生成古诗的起始字符串,默认为空串:return: …...

OpenAI的ChatGPT企业版专注于安全性、可扩展性和定制化。

OpenAI的ChatGPT企业版:安全、可扩展性和定制化的重点 OpenAI的ChatGPT在商业世界引起了巨大反响,而最近推出的ChatGPT企业版更是证明了其在企业界的日益重要地位。企业版ChatGPT拥有企业级安全、无限GPT-4访问、更长的上下文窗口以及一系列定制选项等增…...

JS06-class对象

class对象 className 修改样式 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content&quo…...

深度学习1650ti在win10安装pytorch复盘

深度学习1650ti在win10安装pytorch复盘 前言1. 安装anaconda2. 检查更新显卡驱动3. 根据pytorch选择CUDA版本4. 安装CUDA5. 安装cuDNN6. conda安装pytorch结语 前言 建议有条件的&#xff0c;可以在安装过程中&#xff0c;开启梯子。例如cuDNN安装时登录 or 注册&#xff0c;会…...

Node.js与webpack(三)

上一节&#xff1a;Node.js与Webpack笔记&#xff08;二&#xff09;-CSDN博客 从0来一遍&#xff08;webpack项目&#xff09; 将之前的webpack 的纯开发配置&#xff0c;重新创建空白项目&#xff0c;重新做一遍&#xff0c;捋一遍思路防止加入生产模式时候弄混 1.创建文件夹…...

测试覆盖率那些事

在测试过程中&#xff0c;会出现测试覆盖不全的情况&#xff0c;特别是工期紧张的情况下&#xff0c;测试的时间被项目的周期一压再压&#xff0c;测试覆盖概率不全就会伴随而来。 网上冲浪&#xff0c;了解一下覆盖率的文章&#xff0c;其中一篇感觉写的很不错&#xff0c;将…...

Etcd 介绍与使用(入门篇)

etcd 介绍 etcd 简介 etc &#xff08;基于 Go 语言实现&#xff09;在 Linux 系统中是配置文件目录名&#xff1b;etcd 就是配置服务&#xff1b; etcd 诞生于 CoreOS 公司&#xff0c;最初用于解决集群管理系统中 os 升级时的分布式并发控制、配置文件的存储与分发等问题。基…...

Docker 安装 LogStash

关于LogStash Logstash&#xff0c;作为Elastic Stack家族中的核心成员之一&#xff0c;是一个功能强大的开源数据收集引擎。它专长于从各种来源动态地获取、解析、转换和丰富数据&#xff0c;并将这些结构化或非结构化的数据高效地传输到诸如Elasticsearch等存储系统中进行集…...

Selenium笔记

Selenium笔记 Selenium笔记 Selenium笔记element not interactable页面刷新 element not interactable "element not interactable"是Selenium在执行与网页元素交互操作&#xff08;如点击、输入等&#xff09;时抛出的一个常见错误。这个错误意味着虽然找到了对应的…...

ChatGPT :确定性AI源自于确定性数据

ChatGPT 幻觉 大模型实际应用落地过程中&#xff0c;会遇到幻觉&#xff08;Hallucination&#xff09;问题。对于语言模型而言&#xff0c;当生成的文本语法正确流畅&#xff0c;但不遵循原文&#xff08;Faithfulness&#xff09;&#xff0c;或不符合事实&#xff08;Factua…...

linux驱动开发面试题

1.linux中内核空间及用户空间的区别&#xff1f; 记住“22”&#xff0c;两级分段两级权限。 例如是32位的机器&#xff0c;从内存空间看&#xff1a;顶层1G是内核的&#xff0c;底3G是应用的&#xff1b;从权限看&#xff1a;内核是0级特权&#xff0c;应用是3级特权。 2.用…...

【AI】Ubuntu系统深度学习框架的神经网络图绘制

一、Graphviz 在Ubuntu上安装Graphviz&#xff0c;可以使用命令行工具apt进行安装。 安装Graphviz的步骤相对简单。打开终端&#xff0c;输入以下命令更新软件包列表&#xff1a;sudo apt update。之后&#xff0c;使用命令sudo apt install graphviz来安装Graphviz软件包。为…...

AI推介-大语言模型LLMs论文速览(arXiv方向):2024.03.05-2024.03.10—(2)

论文目录~ 1.Debiasing Large Visual Language Models2.Harnessing Multi-Role Capabilities of Large Language Models for Open-Domain Question Answering3.Towards a Psychology of Machines: Large Language Models Predict Human Memory4.Can we obtain significant succ…...

AI解答——DNS、DHCP、SNMP、TFTP、IKE、RIP协议

使用豆包帮助我解答计算机网络通讯问题—— 1、DHCP 服务器是什么&#xff1f; DHCP 服务器可是网络世界中的“慷慨房东”哦&#x1f923; 它的全称是 Dynamic Host Configuration Protocol&#xff08;动态主机配置协议&#xff09;服务器。 DHCP 服务器的主要任务是为网络中的…...

【TypeScript系列】声明合并

声明合并 介绍 TypeScript中有些独特的概念可以在类型层面上描述JavaScript对象的模型。 这其中尤其独特的一个例子是“声明合并”的概念。 理解了这个概念,将有助于操作现有的JavaScript代码。 同时,也会有助于理解更多高级抽象的概念。 对本文件来讲,“声明合并”是指编…...

zookeeper基础学习之六: zookeeper java客户端curator

简介 Curator是Netflix公司开源的一套zookeeper客户端框架&#xff0c;解决了很多Zookeeper客户端非常底层的细节开发工作&#xff0c;包括连接重连、反复注册Watcher和NodeExistsException异常等等。Patrixck Hunt&#xff08;Zookeeper&#xff09;以一句“Guava is to Java…...

MySQL数据库操作学习(2)表查询

文章目录 一、表查询1.表字段的操作①查看表结构②字段的增加③字段长度/数据类型的修改④字段名的修改⑤删除字符段⑥清空表数据⑦修改表名⑧删除表 2、表数据查询3、where 字段4、聚合函数 一、表查询 1.表字段的操作 ①查看表结构 desc 表名; # 查看表中的字段类型&#…...

Java学习

目录 treeSet StringBuilder treeSet TreeSet 是 Java 中实现了 Set 接口的一种集合类&#xff0c;它使用红黑树数据结构来存储元素&#xff0c;放到TreeSet集合中的元素: 无序不可重复&#xff0c;但是可以按照元素的大小顺序自动排序。 TreeSet一般会和Iterator迭代器一起使…...

C#八皇后算法:回溯法 vs 列优先法 vs 行优先法 vs 对角线优先法

目录 1.八皇后算法&#xff08;Eight Queens Puzzle&#xff09; 2.常见的八皇后算法解决方案 &#xff08;1&#xff09;列优先法&#xff08;Column-First Method&#xff09;&#xff1a; &#xff08;2&#xff09;行优先法&#xff08;Row-First Method&#xff09;&a…...

springboot整合swagger,postman,接口规范

一、postman介绍 1.1概述 工具下载 Postman&#xff08;发送 http 请求的工具&#xff09; 官网&#xff08;下载速度比较慢&#xff09;&#xff1a;Download Postman | Get Started for Free 网盘下载&#xff1a;百度网盘 请输入提取码 1.2Http 请求格式 请求地址请求方法状…...

029—pandas 遍历行非向量化修改数据

前言 在 pandas 中&#xff0c;向量化计算是指利用 pandas 对象的内置方法和函数&#xff0c;将操作应用到整个数据结构的每个元素&#xff0c;从而在单个操作中完成大量的计算。 但在一些需求中&#xff0c;我们无法使用向量化计算&#xff0c;就需要迭代操作&#xff0c;本例…...

相机安装位置固定后开始调试设备供电公司推荐使用方法

摄像头安装位置固定后开始调试 设备供电&#xff1a;无电源设备需要连接12V/2A电源并连接到摄像机的DC端口&#xff0c;而有电源的摄像机可以直接连接到220V电源。 连接设备&#xff1a;如果是有线连接&#xff0c;请使用网线将设备连接到电脑&#xff08;建议直接连接&#…...

AI视频批量混剪系统|罐头鱼AI视频矩阵获客

AI视频批量混剪系统助您轻松管理和编辑视频素材 如今&#xff0c;视频营销已成为企业推广的重要方式。为了满足用户对视频管理、发布和编辑的需求&#xff0c;《罐头鱼AI视频批量混剪系统》应运而生。这款智能化系统集成了多种功能&#xff0c;助您轻松管理和发布精彩视频内容…...

线程池学习-了解,自定义线程池

什么是线程池&#xff0c;这个池字是什么 线程池&#xff0c;主要利用池化思想&#xff0c;线程池&#xff0c;字符串常量池等 为什么要有一个线程池&#xff1f; 正常线程的创建&#xff1a;1&#xff0c;手动创建一个线程 2.给该线程分配任务&#xff0c;线程执行任务 3…...

CentOS7.9 安装SIPp3.6

epel里面的SIPp版本比较旧&#xff0c;先不要epel yum remove -y epel-release okay有很多CentOS软件&#xff0c;可以这样安装&#xff1a; 编辑 /etc/yum.repos.d/okay.repo&#xff0c;内容为&#xff1a; [okay] nameExtra OKay Packages for Enterprise Linux - $basearc…...

Java零基础入门-LinkedHashMap集合

一、本期教学目标 学习LinkedHashMap集合的概念及特点。学习LinkedHashMap存储结构。学习LinkedHashMap集合常用方法及示例代码演示。 二、正文 1、概述 我们学习了map接口之HashMap集合&#xff0c;今天我们要来学习map接口的另一个实现类-LinkedHashMap&#xff0c;不知道…...

LRC转SRT

最近看到一首很好的英文MTV原版&#xff0c;没又字幕&#xff0c;自己找字幕&#xff0c;只找到LRC&#xff0c;ffmpeg不支持LRC&#xff0c;网上在线转了SRT。 Subtitle Converter | Free tool | GoTranscript 然后用 ffmpeg 加字幕 ffmpeg -i LoveMeLikeYouDo.mp4 -vf sub…...