VPN以及GRE和MGRE

VPN

VPN — 是虚拟专用网络
通俗地说,就是通过虚拟的手段,将两个独立的网络,穿越一个公共网络进行连接,实现点到点专线的效果(可以理解为:一个分公司通过公网和总公司建立点到点的专线连接)

现实中,不通过VPN技术也可以实现点到点专线连接的效果,最简单直接的就是接个网线,将两家公司的网络直接连接起来。

那么,既然可以通过连线实现网络的连接,为什么要大费周章地搞个VPN技术,既然有VPN,就有其出现的意义,最大的意义就是 ------ 省钱
试想一下,两个公司用线连,那么线要多长,成本更是高,而VPN是通过公网作为一个虚拟的线,来实现连接,成本远远降低。

介绍完VPN,那么就来说说VPN技术

VPN技术包括了两个技术 ———— GREMGRE

GRE

GRE ------ 通用路由封装
这是一个标准的VPN技术,从一个私网访问另一个私网时,可以通过这个技术创建一个虚拟的tunnel接口,对方私网对应的也要创建一个虚拟的tunnel接口,当你访问对方私网时会从该tunnel接口出,此时它会在ipv4报头前再封装一个三层报头(该报头表明源目IP地址,如下图显示,表示源IP source 12.1.1.1/24 到目标IP destination 23.1.1.2/24),使该包能够顺利发送到对方的私网,对方私网收到包后,拆开报头,会发现里面还有一个三层报头,这个才是真正的三层报头,用来访问对方私网 ------ 这就达到了私网的虚拟点对点的连接

在这里插入图片描述
注意:tunnel接口是虚拟的,实际上出的口还是实际的口如g0/0/0或e0/0/0等实际的接口,只不过当路由器检测到该IP要走tunnel接口时,会在其前面再加一个封装再从实际口出,而检测到其他口则不会加三层报头,直接从实际接口出

看上图,配置GRE的步骤如下:

1、创建隧道接口 --- interface Tunnel 0/0/0
2、配置IP ---ip address 192.168.3.1 24
3、用GRE封装该接口 --- tunnel-protocol gre
4、表明源目IP --- source 12.1.1.1​				destination 23.1.1.2
5、给R2写路由 --- ip route-static 192.168.2.0 24 192.168.3.2​				告知R2去访问私网R3走192.168.3.2过
6、给R3写回来的路由,与R2写法一样,也可以用出接口表示 --- ip route-static 192.168.1.0 24 Tunnel 0/0/0

注意:上图中12.1.1.1和23.1.1.2都是固定的,要用到企业级宽带
也就是说每有一个公司加入连接,那么每个公司都要给加入的那个公司发一条直连,这样的话,直连的线会成指数增加,而且每条线都是企业级的宽带
企业级宽带就是接口固定
家庭版宽带就是接口不固定,会不断变动

那么既然说到直连会成指数增加,就说明费用会很高
为了解决费用高这个问题,也就有了MGRE

MGRE

MGRE — 多点GRE — 是GRE的一种扩展配置;归类于虚拟的NBMA网络
NBMA–非广播型多路访问
BMA — 广播型多路访问 – 在一个网段内可以放置多个物理节点,同时该范围内可以实施广播洪泛机制;以太网技术典型的BMA网络
相较于GRE:

​ MGRE不需要两两间的IP都固定,只需要一个中心站点的IP固定即可,而其他IP不用固定,也就是说,只要一条企业级宽带,其他用家庭版宽带也行,费用大大降低,但是这个得用到NHRP协议

NHRP — 下一跳发现协议

​ 对MGRE的作用 — 由于只有中心站点是固定的,那么其他的站点每天都会变,而NHRP协议就是让其他站点每天开机后,就向中心站点发送自己今天的IP,即使中心站点实时了解并记录其他站点的IP,并绘成一个表,以便能够正常通讯

​ 而其他站点可以到中心站点下载IP表,使其他站点可以不通过中心站点也能自行访问其他站点,例如下图:
假设AR1是中心站点,那么正常来说,AR3访问AR4要通过中心站点,因为AR3不知道AR4的路由,但是AR3到AR1那下载IP表后,就可以直接访问AR4,不用经过AR1
在这里插入图片描述
具体的配置可以看我的另外一个博客:

HCIP的mgre实验这个是上图实验的具体配置解析

这个是简单的MGRE配置信息:

1、interface Tunnel 0/0/0 创建隧道接口
2、ip address 192.168.4.1 24 隧道接口ip地址
3、tunnel-protocol gre p2mp  定义该隧道为多点gre隧道
4、source 14.1.1.1 该隧道加封装的报头源ip地址通过NHRP协议来获取加封装的目标ip地址
5、nhrp entry multicast dynamic  本地成为NHRP服务端
6、nhrp network-id 100 NHRP的工作编号,该网段所有设备必须在同一id

分支站点:

1、interface Tunnel 0/0/0
2、ip address 192.168.4.2 24
3、tunnel-protocol gre p2mp加封装的源ip地址,为本地的隧道实际通过接口的ip地址,填写接口编号,而不是接口ip,原因在于该接口ip地址可变
4、source GigabitEthernet 0/0/0加封装的目标ip地址,需要到NHRP中心站点获取
5、nhrp entry 192.168.4.1 14.1.1.1 register
6、nhrp network-id 100 将各站点包括中心站点分配到100组中

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

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

相关文章

【MQTT(3)】开发一个客户端,QT-Android安卓手机版本

手机版本更加方便 生成安卓库 参考了这个代码 在编译Mosquitto以支持安卓平台时,主要涉及到使用Android NDK(Native Development Kit)进行交叉编译。环境的准备参考之前的博客【QT开发(17)】2023-QT 5.14.2实现Andr…

单链表算法 - 链表的回文结构

链表的回文结构_牛客题霸_牛客网对于一个链表,请设计一个时间复杂度为O(n),额外空间复杂度为O(1)的算法,判断其是否为。题目来自【牛客题霸】https://www.nowcoder.com/practice/d281619e4b3e4a60a2cc66ea32855bfa思路1: /* struct ListNode {int val;st…

字节面试:如何让单机下Netty支持百万长连接?

最近有同学在面试遇到了一道非常有深度的面试题: 如何让单机下Netty支持百万长连接? 当时在群里问小北,我发现我也没有系统化的梳理过这个问题,所以一时也没有回答的特别好。 痛定思痛的我赶紧去各种搜集资料,系统化的…

unity渲染人物模型透明度问题

问题1:有独立的手和衣服的模型,但最终只渲染出来半透明衣服 问题2:透明度贴图是正确的但显示却不正确 这上面两个模型的问题都是因为人物模型是一个完整的,为啥有些地方可以正常显示,有些地方透明度却有问题。 其中…

数据结构小测试:排序算法

目录 1、请简述数据结构八大排序算法的思路。 2、常用排序算法手写 冒泡排序: 选择排序: 快速排序: 归并排序: 堆排序: 3、额外再加一个二分查找吧 1、请简述数据结构八大排序算法的思路。 冒泡排序&#xff…

亚信安全发布2024年第24期《勒索家族和勒索事件监控报告》

本周态势快速感知 本周,勒索软件LockBit涉嫌对美国一家生产乙烯基产品的公司(Homeland Vinyl)进行攻击。LockBit声称他们已窃取了销售、库存、财务交易数据及其他公司记录,并声明将于2024年7月19日公开这些被盗信息。本周全球共监…

【iOS】OC类与对象的本质分析

目录 前言clang常用命令对象本质探索属性的本质对象的内存大小isa 指针探究 前言 OC 代码的底层实现都是 C/C代码,OC 的对象都是基于 C/C 的数据结构实现的,实际 OC 对象的本质就是结构体,那到底是一个怎样的结构体呢? clang常用…

AI算法17-贝叶斯岭回归算法Bayesian Ridge Regression | BRR

贝叶斯岭回归算法简介 贝叶斯岭回归(Bayesian Ridge Regression)是一种回归分析方法,它结合了岭回归(Ridge Regression)的正则化特性和贝叶斯统计的推断能力。这种方法在处理具有大量特征的数据集时特别有用&#xff…

安全入门day01

一、常用名词 1、前后端 (1)前端 前端主要负责用户界面的展示和交互。它通常包括HTML、CSS和JavaScript等技术的使用,也可能使用各种前端框架和库,如React、Vue.js、Angular等,来构建更加复杂和动态的用户界面。前端…

校验el-table中表单项

需求: 表格中每一行都有几个必填项,如用户提交时有未填的选项,将该选项标红且给出提示,类似el-form 的那种校验 el-table本身并没有校验的方法,而且每一行的输入框也是通过插槽来实现的,因此我们要自己跟…

log4js node日志插件

最近不是特别忙在用express搭建后台项目,在开发过程中遇到了需要输入日志的问 本来想直接用node自带的console来实现,后来发现console输出的日志达不到自己希望的 日志格式,后来各种百度发现了log4js插件,本文来记录log4js插件使用…

一文-深入了解Ansible常见模块、安装和部署

1 Ansible 介绍 Ansible是一个配置管理系统configuration management system, python 语言是运维人员必须会的语言, ansible 是一个基于python 开发的(集合了众多运维工具 puppet、cfengine、chef、func、fabric的优点)自动化运维工具, 其功能实现基于ss…

django实现用户的注册、登录、注销功能

创建django项目的步骤:Django项目的创建步骤-CSDN博客 一、前置工作 配置数据库,设置数据库引擎为mysql 1、在settings文件中找到DATABASES, 配置以下内容 DATABASES {"default": {ENGINE: django.db.backends.mysql, # 数据库引擎NAME: dja…

基于springboot和mybatis的RealWorld后端项目实战二之实现tag接口

修改pom.xml 新增tag数据表 SET FOREIGN_KEY_CHECKS0;-- ---------------------------- -- Table structure for tags -- ---------------------------- DROP TABLE IF EXISTS tags; CREATE TABLE tags (id bigint(20) NOT NULL AUTO_INCREMENT,name varchar(255) NOT NULL,PR…

【hadoop大数据集群 2】

【hadoop大数据集群 2】 文章目录 【hadoop大数据集群 2】1. 虚拟机克隆2. 时间同步3. 环境变量配置、启动集群、关闭集群 1. 虚拟机克隆 克隆之后一定要重新生成新虚拟机唯一的MAC地址和UUID等,确保新虚拟机与源虚拟机在网络拓扑中不发生冲突。 注意1.生成新的MA…

IDEA关联数据库

《IDEA破解、配置、使用技巧与实战教程》系列文章目录 第一章 IDEA破解与HelloWorld的实战编写 第二章 IDEA的详细设置 第三章 IDEA的工程与模块管理 第四章 IDEA的常见代码模板的使用 第五章 IDEA中常用的快捷键 第六章 IDEA的断点调试(Debug) 第七章 …

Spring Boot2(Spring Boot 的Web开发 springMVC 请求处理 参数绑定 常用注解 数据传递)

目录 一、Spring Boot 的Web开发 1. 静态资源映射规则 2. enjoy模板引擎 二、springMVC 1. springMVC-请求处理 测试: 以post方式请求 限制请求携带的参数 GetMapping 查询 PostMapping 新增 DeleteMapping删除 PutMapping 修改 2. springMVC-参…

电子画册制作攻略:如何让你的作品吸引眼球

随着数字化时代的到来,电子画册作为一种新兴的传播媒介,已经越来越受到人们的青睐。它不仅能够以生动的形式展现内容,还可以轻松地实现互动和分享。然而,如何让你的电子画册作品在众多竞争中脱颖而出,吸引更多眼球呢&a…

景联文科技构建高质量心理学系知识图谱,助力大模型成为心理学科专家

心理大模型正处于快速发展阶段,在临床应用、教育、研究等多个领域展现出巨大潜力。 心理学系知识图谱能够丰富心理大模型的认知能力,使其在处理心理学相关问题时更加精确、可靠和有洞察力。这对于提高心理健康服务的质量和效率、促进科学研究以及优化教育…

【MySQL进阶篇】SQL优化

1、插入数据 insert优化 批量插入: insert into tb_user values(1,tom),(2,cat),(3,jerry); 如果插入数据过大,可以将业务分割为多条insert语句进行插入。 手动提交事务: start transaction; insert into tb_user values(1,tom),(2,cat),(3…