GRE MGRE原理与配置

news2024/11/19 5:52:43
  • IPSec VPN用于在两个端点之间提供安全的IP通信,但只能加密并传播单播数据无法加密和传输语音、视频、动态路由协议信息等组播数据流量。
  • 通用路由封装协议GRE( Generic Routing Encapsulation )提供了将一种协议的报文封装在另一种协议报文中的机制,是一种隧道封装技术。GRE可以封装组播数据,并可以和IPSec结合使用,从而保证语音、视频等组播业务的安全。

GER应用场景

在这里插入图片描述

  • GRE支持将一种协议的报文封装在另一种协议报文中
  • GRE可以解决异种网络的传输问题
  • GRE用来对某些网络层协议如IPX(Internet Packet Exchange)的报文进行封装,使这些
    被封装的报文能够在另一网络层协议(如IP)中传输。GRE可以解决异种网络的传输问题。
  • IPSec VPN技术可以创建一条跨越共享公网的隧道,从而实现私网互联。IPSec VPN能够
    安全传输IP报文,但是无法在隧道的两个端点之间运行RIP和OSPF等路由协议。GRE可以
    将路由协议信息封装在另一种协议报文(例如IP)中进行传输

在这里插入图片描述
GRE隧道扩展了受跳数限制的路由协议的工作范围,支持企业灵活设计网络拓扑

  • 使用GRE可以克服IGP协议的一些局限性。例如,RIP路由协议是一种距离矢量路由协议,
    最大跳数为15。如果网络直径超过15,设备将无法通信。这种情况下,可以使用GRE技术
    在两个网络节点之间搭建隧道隐藏它们之间的跳数扩大网络的工作范围

在这里插入图片描述
首先通过GRE对报文进行封装,然后再由IPSec对封装后的报文进行加密和传输
在这里插入图片描述
GRE封装报文时,封装前的报文称为净荷,封装前的报文协议称为乘客协议,然后GRE会
封装GRE头部,GRE成为封装协议,也叫运载协议,最后负责对封装后的报文进行转发的
协议称为传输协议。

  • GRE封装和解封装报文的过程如下:
  1. 设备从连接私网的接口接收到报文后,检查报文头中的目的IP地址字段,在路由表查找出
    接口,如果发现出接口是隧道接口,则将报文发送给隧道模块进行处理。

  2. 隧道模块接收到报文后首先根据乘客协议的类型和当前GRE隧道配置的校验和参数,对报
    文进行GRE封装,即添加GRE报文头。

  3. 然后,设备给报文添加传输协议报文头,即IP报文头。该IP报文头的源地址就是隧道源地
    址,目的地址就是隧道目的地址。

  4. 最后,设备根据新添加的IP报文头目的地址,在路由表中查找相应的出接口,并发送报文。
    之后,封装后的报文将在公网中传输。

  5. 接收端设备从连接公网的接口收到报文后,首先分析IP报文头,如果发现协议类型字段的
    值为47,表示协议为GRE,于是出接口将报文交给GRE模块处理。GRE模块去掉IP报文头
    和GRE报文头,并根据GRE报文头的协议类型字段,发现此报文的乘客协议为私网中运行
    的协议,于是将报文交给该协议处理。

在这里插入图片描述
隧道两端设备通过关键字字段(Key)来验证对端是否合法

  • 关键字(Key)验证是指对隧道接口进行校验,这种安全机制可以防止错误接收到来自其他设备的报文。关键字字段是一个四字节长的数值,若GRE报文头中的K位为1,则在GRE报文头中会插入关键字字段。只有隧道两端设置的关键字完全一致时才能通过验证,否则报文将被丢弃

在这里插入图片描述
Keepalive检测功能用于检测隧道对端是否可达

  • Keepalive检测功能用于在任意时刻检测隧道链路是否处于Keepalive状态,即检测隧道对
    端是否可达。如果对端不可达,隧道连接就会及时关闭,避免形成数据空洞。使能
    Keepalive检测功能后,GRE隧道本端会定期向对端发送Keepalive探测报文。若对端可达,
    则本端会收到对端的回应报文;若对端不可达,则收不到对端的回应报文。如果在隧道一
    端配置了Keepalive功能,无论对端是否配置Keepalive,配置的Keepalive功能在该端都生
    效。隧道对端收到Keepalive探测报文,无论是否配置Keepalive,都会给源端发送一个回
    应报文。

  • 使能Keepalive检测功能后,GRE隧道的源端会创建一个计数器,并周期性地发送
    Keepalive探测报文,同时进行不可达计数。每发送一个探测报文,不可达计数加1。

  • 如果源端在计数器值达到预先设置的值之前收到回应报文,则表明对端可达。如果计数器
    值达到预先设置的重试次数,源端还是没有收到回应报文,则认为对端不可达。此时,源
    端将关闭隧道连接。

GRE配置

  • 详细配置参考 HCIP-MGRE实验

在这里插入图片描述

配置

[r1]interface Tunnel 0/0/0 ----创建隧道接口
[r1-Tunnel0/0/0]ip address 192.168.3.1 24 ---该IP地址必须为私网IP
[r1-Tunnel0/0/0]tunnel-protocol gre ----定义封装方式
[r1-Tunnel0/0/0]source 12.0.0.1 ----定义封装内容,该IP必须为真实的公网出口IP
[r1-Tunnel0/0/0]destination 23.0.0.3

配置完成后,需要在本地补上通往目的私网网段的路由信息。

  • Keepalive检测机制
[r1-Tunnel0/0/0]keepalive period 2 retry-times 5 

设置发送周期为2S;设置重传次数为5次

MGRE配置

NHRP协议

  • NHRP,全称 “Next Hop Resolution Protocol”,是一种网络协议,通常用于帮助在虚拟专用网络(VPN)或广域网(WAN)中建立动态的点对点连接。NHRP 旨在解决动态点对点连接的地址解析问题,允许网络设备在需要时动态地确定下一跳路由器的地址。

hub-spoke架构----中心到节点架构;NHS----下一跳服务器
中心节点的IP地址必须固定。

1. 地址解析:NHRP 用于解决动态点对点连接中的地址解析问题。当一个网络设备需要与远程设备建立连接时,它可以向 NHRP 服务器查询远程设备的 IP 地址,从而确定下一跳路由器的位置。
  1. 点对点连接:NHRP 主要用于建立点对点连接,其中两个网络设备需要直接通信,而不经过中间路由器。这在虚拟专用网络(VPN)中非常有用,因为它允许不同地理位置的设备直接连接到VPN,而不需要流量经过 VPN 集线器。

  2. 动态路由:NHRP 可以与动态路由协议(如 EIGRP、OSPF)结合使用,以实现动态路由信息的更新。这意味着当网络拓扑发生变化时,NHRP 可以帮助网络设备动态地更新路由信息,以确保数据包能够有效传递。

  3. 效率:NHRP 旨在提高网络效率,尤其是在需要点对点连接的情况下。它可以减少数据包的冗余路由,直接将它们传送到目的地,减少了网络拥塞和传输延迟。

  4. 安全性:NHRP 也可以提供一定程度的安全性,通过身份验证和授权来限制谁可以查询 NHRP 服务器以获取地址解析信息。这有助于保护网络免受未经授权的访问。

MGRE的shortcut配置

在这里插入图片描述

# Hub节点配置
[r1]interface Tunnel 0/0/0
[r1-Tunnel0/0/0]ip address 192.168.5.1 24
[r1-Tunnel0/0/0]tunnel-protocol gre p2mp ----修改接口封装协议为GRE,且为点到多点模式
[r1-Tunnel0/0/0]source 15.0.0.1
Spoke节点配置
[r2]interface Tunnel 0/0/0
[r2-Tunnel0/0/0]ip address 192.168.5.2 24
[r2-Tunnel0/0/0]tunnel-protocol gre p2mp
[r2-Tunnel0/0/0]source GigabitEthernet 0/0/0
[r2-Tunnel0/0/0]nhrp entry 192.168.5.1 15.0.0.1 register
                        hub的虚拟接口IP hub的物理接口IP 注册
[r1]display nhrp peer all ----查看nhrp映射表

DSVPN—动态智能VPN

传统的MGRE技术存在的问题。-----分部之间无法直接通讯(源分支无法获取目的分支的公网地址,也
就无法建立VPN隧道),导致所有的分支之间的通讯数据只能通过总部HUB设备进行中转

NHRP映射表

  • 静态表项
    由网络管理员手工配置
    spoke与hub建立静态的mgre隧道
  • 动态表项
    是由NHRP协议动态生成
    hub节点被动获取到spoke节点发送来的注册信息。
    各个spoke节点通过NHRP协议获取到对端的spoke节点的映射关系。
    7200S

NHRP映射表的建立过程
建立spoke到hub之间的mgre隧道

  1. spoke向hub注册请求
  2. hub向spoke注册应答
  • 分支间路由学习
    DSVPN支持两种分支间路由学习方式:
    分支间互相学习路由----非shortcut方式(每个分支需要学习到所有对端的路由数据,且下一跳为分支本身)
    分支路由汇聚到总部----shortcut方式(下一跳为hub设备)

建立spoke与spoke之间的mgre隧道

  • 在shortcut方式下需要添加的配置
中心:
[r1-Tunnel0/0/0]nhrp redirect ----开启重定向功能。默认情况为未启动
分支:
[r4-Tunnel0/0/0]nhrp shortcut ----使能shortcut功能

MGRE环境下的RIP网络搭建—非shortcut

在这里插入图片描述

分支没有获取到中心的路由信息
因为RIP是以组播的方式在发送报文,而MGRE环境下是点到点通讯,不支持组播行为。
解决思路:开启伪广播功能。

[r1-Tunnel0/0/0]nhrp entry multicast dynamic ----在中心节点配置

分支之间无法获取对方路由信息
主要因为华为设备默认开启水平分割机制,导致中心无法从接口将分支的路由发送出去。

[r1-Tunnel0/0/0]undo rip split-horizon ----关闭水平分割机制

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

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

相关文章

华为云全新上线Serverless应用中心,支持一键构建文生图应用

近日,华为云全新上线Serverless应用中心,提供了大量应用模板,让用户能够一键部署函数和周边依赖资源,节省部署时间,快速上手将应用部署到华为云函数计算FunctionGraph,并一键开通周边依赖资源。 本次Serve…

微信小程序ios页面没有滚动下拉也会出现黑色背景

问题截图: 查了一下资料说有用一下方法解决的: 整体overflow: hidden,页面的内容将无法滚动(试了一下没用);设置 -webkit-overflow-scrolling 和 touch-action 样式属性来禁用页面的拖动和拉拽操作&…

底层驱动day4作业

分布注册设备,实现文件和设备的绑定 代码: //head.h #ifndef __HEAD_H__ #define __HEAD_H__ #define PHY_RCC 0x50000A28 #define PHY_GPIOE_MODER 0x50006000 #define PHY_GPIOF_MODER 0x50007000 #define PHY_GPIOE_ODR 0x50006014 #define PHY_GPI…

VR虚拟现实技术在法院技能培训中的应用

开展法治宣传教育,是全面贯彻落实科学发展观的重要决策,也是保障和促进经济设备会发展和实施“十一五”规划的内在要求。为了让全民法治文化宣传深入人们群众中,突破性地采用VR虚拟现实、web3d开发和三维仿真技术,开发线上法治文化…

Git的标签管理

Git标签管理 创建标签操作标签小结 创建标签 在Git中打标签非常简单,首先,切换到需要打标签的分支上: $ git branch $ git checkout master 然后,敲命令git tag 就可以打一个新标签: $ git tag v1.0 可以用命令git …

大一新生必备电脑软件插件有哪些?

毕业老学姐倾情分享珍藏必备软件和浏览器插件!拥有后生活明朗,学习效率UPUP! 纯干货分享建议【点赞收藏】后观看 速览 Office全家桶-Word、Excel、Powerpoint大学生必备 火绒安全-计算机防病毒软件 AI助手-AI对话写作阅读助手,…

HCIP-MGRE实验

实验拓扑图 需求 1 R5为ISP ,只能进行IP地址配置;其所有地址均配为公有IP地址 2 R1和R5间使用PPP的PAP认证,R5为主认证方; R2于R5之间使用ppp的chap认证,R5为主认证方; R3于R5之间使用HDLC封装。 3 R1/R2/R3构建一个MGRE环境,R1为…

创新驱动|RFID技术在智能半导体行业的应用

半导体产业是我国重要的战略性新兴产业,是一个需要高度协同的领域,需要各个环节的紧密配合。RFID技术,作为一种自动识别和数据采集技术,在半导体生产线上具有独特的优势。通过应用RFID技术,半导体制造企业可以实现生产…

基于Python+Selenium+Unittest+PO设计模式

一、什么是PO设计模式(Page Object Model) 1、Page Object是一种设计模式,它主要体现在对界面交互细节的封装上,使测试用例更专注于业务的操作,从而提高测试用例的可维护性。 2、一般PO设计模式有三层 第一层&#x…

【鸿蒙软件开发】文本显示(Text/Span)

文章目录 前言一、Text控件1.1 创建文本string字符串引用Resource资源 1.2 添加子组件创建Span文本装饰线和样式文本装饰线设置文字一直保持大写/小写添加事件。 1.3 自定义文本样式文本对齐长文本处理设置行高通过decoration属性设置文本装饰线样式及其颜色。通过baselineOffs…

功率放大器在PZT陶瓷薄膜压电传感器研究中的应用

随着科技的进步和工业发展的需求,对于压力测量和控制的需求日益增加。压力传感器作为一种关键的传感器器件,在机械、自动化、医疗、航空等多个领域都有广泛应用。PZT陶瓷薄膜压电传感器由于其响应速度快、精度高、稳定性好等优点,成为了许多应…

OTA: Optimal Transport Assignment for Object Detection 论文和代码学习

OTA 原因步骤什么是最优传输策略标签分配的OT正标签分配负标签分配损失计算中心点距离保持稳定动态k的选取 整体流程代码使用 论文连接: 原因 1、全部按照一个策略如IOU来分配GT和Anchors不能得到全局最优,可能只能得到局部最优。 2、目前提出的ATSS和P…

做数据可视化,谨记三大要点

数据可视化报表就是“一图胜千言”的最佳例子。数据可视化,也就是将数据图形化、图表化,以良好的视觉效果呈现数据,达到发现、分析、预测、监控、决策等目的。要想做出一份优秀的数据可视化报表,那就要在做报表时谨记三大要点&…

3D模型在线格式转换工具

单模型上传格式 支持格式说明 支持RAR和ZIP压缩包上传,压缩包大小按原始文件大小计算,压缩包内只能包含一个模型文件 超过500MB的模型请联系客服 您也可以下载老子云客户端进行批量上传 不同会员级别的模型上传大小有不同的限制,详情请查询…

越来越好用的Edge浏览器,盘点Edge浏览器功能丨插件

前些年, Edge 浏览器也宣布加入 Chromium 内核;它的前身是IE浏览器, Edge之所以越来越多人用的一个原因是因为它的内核是Google Chrome的Chromium,而且不需要膜法就可以使用,这一点Chrome浏览器还不行,访问…

分拣设备运动仿真

这一次我们来分享一下如何在Solidworks 中做出传送台的分拣动作并通过分拣动作生成过程动画,以便于我们可以用于产品展示又或者验证运行程序无误的情况下结构是否会影响输送效率。 首先创建一个新的运动算例 将窗口切换至Motion分析 在设置之前我们先理清设置传送带…

税务某局 webpack 登录接口逆向分析

持续创作文章,只是为了更好的思考 这里不多介绍了,我放一张图大家就明白是什么接口了。这里只介绍整体加密逻辑,有些细的地方大家自行调整。 本次逆向的网址是 aHR0cHM6Ly90cGFzcy5qaWxpbi5jaGluYXRheC5nb3YuY246ODQ0My8jL2xvZ2luP3JlZGly…

vue3实现详情页返回列表页,返回原来列表页滚动条所在的位置

keepAlive缓存页面 组合式API 第一步第二步第三步第四步 第一步 首先在路由文件的meta里面定义 meta: {keepAlive: false, },第二步 在app.vue 根文件下定义代码 <template><keep-alive><router-view v-if"route.meta.keepAlive" /></keep-…

基于springboot实现广场舞团平台系统项目【项目源码+论文说明】

基于springboot实现广场舞团管理平台系统 摘要 随着信息技术和网络技术的飞速发展&#xff0c;人类已进入全新信息化时代&#xff0c;传统管理技术已无法高效&#xff0c;便捷地管理信息。为了迎合时代需求&#xff0c;优化管理效率&#xff0c;各种各样的管理系统应运而生&am…

软设上午题错题知识点8

软设上午题错题知识点8 1、IPv4用32位二进制表示&#xff0c;能够表示的地址空间是232&#xff0c;IPv6用128位二进制表示&#xff0c;能够表示的地址空间是2128&#xff0c;本题选择2128 /232296 。 2、在应用散列函数构造哈希表&#xff08;或散列表&#xff09;时&#xf…