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

网络类型之GRE和MGRE和NHRP

GRE-通用路由封装

是一种简单的三层VPN封装技术,属于虚拟的点到点网络类型

优点:支持IP 网络作为承载网络、支持多种协议、支持IP 组播,配置简单,容易布署。

缺点:缺少保护功能,不能执行如认证、加密、以及数据完整性检查这些任务。

VPN---虚拟专用网络两个网络穿越中间网络直接通讯

GRE报文格式

乘客协议:报文封装之前所属的协议称为乘客协议

封装协议: 用来封装乘客协议的协议称为封装协议,这里的GRE便是一个封装协议

传输协议:负责对封装后的报文进行转发的协议称为传输协议 不同于传输层协议

GRE封装和解封装过程

  • 设备从私网接口收到数据包后,先检查报文头部的ip地址,查找路由表,如果是隧道接口,则将该报文转发给隧道模块处理
  • 隧道模块根据乘客协议和当前GRE隧道配置,对报文进行GRE封装
  • 隧道模块给报文添加新的传输协议,该协议的源为隧道源,目为隧道目
  • 最后,设备根据新的ip头部查表进行转发
  • 接收端收到报文后,先分析最外层的ip头部,如果协议字段类型值为47(GRE协议号),会将该数据部分交给GRE模块处理,GRE模块去除最外层的ip头部,根据GRE报文头部的乘客协议内容,交给对应模块处理

实验:

配置接口ip(这里省略)

配置默认路由

[r1]ip route-static 0.0.0.0 0 12.1.1.2

[r3]ip route-static 0.0.0.0 0 23.1.1.1

测试公网之间的通信

私网之间不能ping通,因为运营商R2路由表没有私网

在R1和R3之间做隧道接口

配置GRE后,还要在本地路由补充去私网的路由

测试私网连通性,并抓包

MGRE---多点GRE属于NBMA网路类型

NBMA网络,仅有伪广播

Hub-spoke架构--中心到节点架构

NHRP---下一跳解析协议

在所有的tunnel接口上运行NHRP,并且手动配置NHRP-Sever

spoke分支点通信:分支点向NHRP-Sever进行查询,NHRP-Sever给出应答,分支通过NHRP-Sever给的tunnel地址和物理地址通信,所有的设备最终都要学习到达MGRE网络中所有的用户的tunnel地址和物理地址的映射关系

MGRE实验:

实验背景:A公司扩建到拥有两个子公司,要搭三个VPN,若是n个公式,则要搭建[n(n-1)]/2个VPN,不符合实际情况-----引出点对多点(实质也是点对点)

配置接口ip和配缺省(此处省略)

Hub中心节点配置和spoke节点配置

Hub中心节点:R1

spoke节点配置:R3,R4

注意:source后面必须写接口

[r1]display nhrp peer all----查看nhrp映射表

在本地补充路由

[r1]ip route-static 192.168.3.0 24 10.1.1.2
[r1]ip route-static 192.168.3.0 24 10.1.1.3

[r3]ip route-static 192.168.1.0 24 10.1.1.1
[r3]ip route-static 192.168.3.0 24 10.1.1.3

[r4]ip route-static 192.168.1.0 24 10.1.1.1
[r4]ip route-static 192.168.2.0 24 10.1.1.2

测试tunnel连通性

MGRE环境下的RIP网络搭建

基于上一个实验相同,但是不在本地配静态

[r1-rip-100]ver 2
[r1-rip-100]net 192.168.1.0
[r1-rip-100]net 10.0.0.0

[r3-rip-100]ver 2
[r3-rip-100]net 192.168.2.0
[r3-rip-100]net 10.0.0.0

[r4-rip-100]ver 2
[r4-rip-100]net 192.168.3.0
[r4-rip-100]net 10.0.0.0

MGRE环境下是点到点通讯,不支持组播(广播),R1无法通过发广播让分支学习路由,所有要开启伪广播

[r1-Tunnel0/0/0]nhrp entry multicast dynamic 

学习成功!再查看分支的路由表

只学习到R1的路由,原因:水平分割-->从tunnel口学到路由不能从该口转发

关闭水平分割

[r1-Tunnel0/0/0]undo rip split-horizon 

再次查看分支路由表

学习成功!

测试连通性

综合实验

实验要求:

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为中心站点,R1、R4间为点到点的GRE。

4.整个私有网络基于RIP全网可达。

5.所有Pc设置私有IP为源IP,可以访问R5环回。
 

配置接口ip和pc(此处省略)

配置缺省

[r1]ip route-static 0.0.0.0 0 12.1.1.2

[r2]ip route-static 0.0.0.0 0 24.1.1.2

[r3]ip route-static 0.0.0.0 0 23.1.1.2

[r4]ip route-static 0.0.0.0 0 14.1.1.2

测试公网之间连通性

R1和R5间使用PPP的PAP认证,R5为主认证方

[r5-Serial4/0/0]ppp authentication-mode pap 

[r5-Serial4/0/0]aaa

[r5-aaa]local-user hcie password cipher huawei

[r5-aaa]local-user hcie service-type ppp 

[r1-Serial4/0/0]ppp pap local-user hcie password cipher huawei

R2于R5之间使用ppp的chap认证,R5为主认证方

[r5-aaa]int s4/0/1
[r5-Serial4/0/1]ppp authentication-mode chap
[r5-Serial4/0/1]ppp chap user hcia
[r5-Serial4/0/1]aaa
[r5-aaa]local-user hcia password cipher huawei
Info: Add a new user.
[r5-aaa]local-user hcia service-type ppp

[r2]int s4/0/0
[r2-Serial4/0/0]ppp chap user hcia
[r2-Serial4/0/0]aaa
[r2-aaa]local-user hcia password cipher huawei
Info: Add a new user. 
[r2-aaa]local-user hcia service-type ppp

R3于R5之间使用HDLC封装

[r3-Serial4/0/0]link-protocol hdlc 
Warning: The encapsulation protocol of the link will be changed. Continue? [Y/N]
:y

[r5-Serial3/0/0]link-protocol hdlc 
Warning: The encapsulation protocol of the link will be changed. Continue? [Y/N]
:y

R1、R4间为点到点的GRE

R1/R2/R3构建一个MGRE环境,R1为中心站点

整个私有网络基于RIP全网可达

[r1-rip-100]dis this
[V200R003C00]
#
rip 100
 version 2
 network 192.168.1.0
 network 10.0.0.0
 network 11.0.0.0
#
return

[r2-rip-100]dis this
[V200R003C00]
#
rip 100
 version 2
 network 192.168.4.0
 network 11.0.0.0
#
return

[r3-rip-100]dis this
[V200R003C00]
#
rip 100
 version 2
 network 192.168.3.0
 network 11.0.0.0
#
return
 

[r4-rip-100]dis this
[V200R003C00]
#
rip 100
 version 2
 network 192.168.2.0
 network 10.0.0.0
#
return
 

测试连通性

所有Pc设置私有IP为源IP,可以访问R5环回

[r3-acl-basic-2000]dis this
[V200R003C00]
#
acl number 2000  
 rule 5 permit source 192.168.3.0 0.0.0.255 
#
return

[r3-Serial4/0/0]nat outbound 2000

其余相同做法

测试连通性

相关文章:

网络类型之GRE和MGRE和NHRP

GRE-通用路由封装 是一种简单的三层VPN封装技术,属于虚拟的点到点网络类型 优点:支持IP 网络作为承载网络、支持多种协议、支持IP 组播,配置简单,容易布署。 缺点:缺少保护功能,不能执行如认证、加密、以…...

uniapp获取日期

1.使用new Date()方法获取系统今天的日期&#xff0c;显示格式为&#xff1a;2023-10-28 <template><view class"content">{{date}}</view> </template> <script>export default {data() {return {date: new Date().toISOString().sl…...

编码和解码的未来之路

hello&#xff0c;我是小索奇。在计算机科学的世界中&#xff0c;编码和解码是无处不在的神奇力量&#xff0c;而现代技术的巅峰之一就是 ChatGPT。让我们一起探讨编码和解码如何与 ChatGPT 这一人工智能的杰作相互结合&#xff0c;打开了无限可能的数字世界之门。 ChatGPT的魔…...

Prometheus实战篇:Prometheus监控redis

准备环境 docker-compose安装redis docker-compose.yaml version: 3 services:redis:image:redis:5container_name: rediscommand: redis-server --requirepass 123456 --maxmemory 512mbrestart: alwaysvolumes:- /data/redis/data: /dataport:- "6379:6379"dock…...

Vue2.Hello World

步骤&#xff1a; 准备容器引包&#xff08;开发版本/生产版本&#xff09;创建实例new Vue()添加配置项 el指定挂载点data提供数据 准备容器 就是新建一个div标签 引包 vue2版本中文文档&#xff1a;https://v2.cn.vuejs.org/v2/guide/ 尝试 Vue.js 最简单的方法是使用 …...

【单片机项目实战】温度控制系统

本项目的主要作用是实现温度调控&#xff0c;通过设定一个预定的温度值&#xff0c;实现实时检测外界温度&#xff0c;当外界温度小于预定值时&#xff0c;电机正转&#xff0c;实现降温效果&#xff1b;当外界温度大于预定值时&#xff0c;电机反转&#xff0c;实现升温效果&a…...

SpringMVC-视图

SpringMVC中的视图实现了View接口&#xff0c;作用是渲染数据&#xff0c;将Model中的数据展示给用户。render是渲染方法&#xff0c;可以看到渲染的视图是一个View类型的对象。 SpringMVC视图的种类有很多&#xff0c;默认有转发视图和重定向视图。 如果配置了Thymeleaf视图解…...

【React系列】Hook(一)基本使用

本文来自#React系列教程&#xff1a;https://mp.weixin.qq.com/mp/appmsgalbum?__bizMzg5MDAzNzkwNA&actiongetalbum&album_id1566025152667107329) 一. 认识hook 1.1. 为什么需要hook Hook 是 React 16.8 的新增特性&#xff0c;它可以让我们在不编写class的情况下…...

算法训练营Day28

#Java #贪心 开源学习资料 Feeling and experiences&#xff1a; 这周来到了贪心算法&#xff0c;简要概述&#xff1a; 贪心算法是一种在每个步骤中都采取最优解&#xff08;即&#xff0c;在当前看来最好的解&#xff09;的算法设计策略。它通常用于求解优化问题。这种方…...

鸿蒙OS应用开发之日期选择

前面学习了时间选择组件,实现了时间的选择,这样非常方便用户进行时间的输入,通过手动就可以输入时间,比直接文本输入要省不少时间,特别对于手机这样单手操作的设备,更加重要了。因此,日期的输入工作也不能落后,本文将要学习日期选择组件,这样就可以实现日期通过手上下…...

Mysql 查看表注释或字段注释

查看所有表的注释 SELECT table_name 表名, table_comment 表说明 FROM information_schema.TABLES WHERE table_schema ‘数据库名’ ORDER BY table_name 查询所有表及字段的注释 SELECT a.table_name 表名, a.table_comment 表说明, b.COLUMN_NAME 字段名, b.column_commen…...

MySQL InnoDB引擎

1、逻辑存储结构 2、架构 a. 内存结构 Change Buffer的意义是什么? 与聚集索引不同&#xff0c;二级索引通常是非唯一的&#xff0c;并且以相对随机的顺序插入二级索引。同样&#xff0c;删除和更新可能会影响索引树中不相邻的二级索引页&#xff0c;如果每一次都操作磁盘&am…...

C++完成Query执行sql语句的接口封装和测试

1、在LXMysql.h 创建Query执行函数 //封装 执行sql语句 if sqllen 0 strlen获取字符长度bool Query(const char*sql,unsigned long sqllen0); 2、在LXMysql.cpp编写函数 bool LXMysql::Query(const char* sql, unsigned long sqllen){if (!mysql)//如果mysql没有初始化好{c…...

C:宏:编程风格:井号与define之间的空格

在这一篇中有提到&#xff0c;井号与define之间空格&#xff0c;可能导致搜索上的一些问题。 https://mzhan017.blog.csdn.net/article/details/135289451 今天看到有专门做这个空格的修改&#xff1a; https://sourceware.org/git/?pglibc.git;acommitdiff;hfcf70d4114db9ff…...

django websocket

目录 核心代码 consumers.py from channels.generic.websocket import WebsocketConsumer from channels.exceptions import StopConsumer import datetime import time from asgiref.sync import async_to_sync class ChatConsumer(WebsocketConsumer):def websocket_conne…...

HackTheBox - Medium - Linux - Bagel

Bagel 今天我开始了《Red Team Development and Operations A Practical Guide》的学习&#xff0c;保持学习&#xff0c;后面差不多到时机后就学CRTOⅡ Bagel 是一款中等难度的 Linux 机器&#xff0c;其特点是电子商店容易受到路径遍历攻击&#xff0c;通过该攻击可以获取应…...

Capsolver:解决Web爬虫中CAPTCHA挑战的最优解决方案

Web爬虫已经成为从各种在线来源提取和分析数据的不可或缺的技术。然而&#xff0c;在Web爬取过程中&#xff0c;经常会遇到的一个共同挑战是CAPTCHA。CAPTCHA&#xff08;完全自动化的公共图灵测试&#xff0c;用于区分计算机和人类&#xff09;是一种安全措施&#xff0c;旨在…...

大数据系列之:读取parquet文件统计数据量

大数据系列之&#xff1a;读取parquet文件统计数据量 一、Spark读取parquet文件统计数据量二、parquet-tools统计parquet文件数据量三、实际应用案例 一、Spark读取parquet文件统计数据量 首先&#xff0c;创建一个 SparkSession 对象&#xff1a; val spark SparkSession.b…...

力扣题:字符串变换-1.5

力扣题-1.5 [力扣刷题攻略] Re&#xff1a;从零开始的力扣刷题生活 力扣题1&#xff1a;482. 密钥格式化 解题思想&#xff1a;首先先将破折号去除,并将所有字母转换为大写,然后计算第一组的长度,进行结果字符串的拼接,如果第一组的长度为0,则需要删除开头的’-符号 class S…...

el-autocomplete远程搜索使用及el-upload上传多个文件流给后端,详情接口返回的是文件地址,前端将文件地址转成文件流,回传文件流给后端

最近遇到一个项目,里面有2个需求我觉得挺常见的,第一个需求是一个表单里,当用户在输入名称后,前端调接口发请求获取到关联名称的企业名称,并展示,然后当用户选中企业后,前端调接口获取选中企业的具体信息,并填充到表单里;第二个需求是,表单里有个上传图片的功能,前端…...

OpenClaw:AI 权限治理的核心问题

子玥酱 &#xff08;掘金 / 知乎 / CSDN / 简书 同名&#xff09; 大家好&#xff0c;我是 子玥酱&#xff0c;一名长期深耕在一线的前端程序媛 &#x1f469;‍&#x1f4bb;。曾就职于多家知名互联网大厂&#xff0c;目前在某国企负责前端软件研发相关工作&#xff0c;主要聚…...

探索前沿技术趋势:2024年最值得关注的创新应用场景

1. 生成式AI的爆发式应用 2024年最让人兴奋的技术趋势&#xff0c;莫过于生成式AI从实验室走向千家万户。我最近测试了十几个主流AI创作工具&#xff0c;发现它们已经能完成许多过去认为"只有人类能做到"的任务。比如用Midjourney生成产品设计图&#xff0c;只需要简…...

GF-1遥感影像水体提取实战:Unet++、Deeplabv3+、MANet模型对比与避坑指南

GF-1遥感影像水体提取实战&#xff1a;三大模型对比与避坑全攻略 当国产高分一号&#xff08;GF-1&#xff09;卫星数据遇上深度学习语义分割技术&#xff0c;水体提取这项传统遥感任务正在经历革命性变革。本文将带您深入Unet、Deeplabv3和MANet三大主流模型在GF-1影像上的实战…...

保姆级教程:手把手教你安装并激活DevExpress 20.1.3(附资源与注册机使用避坑指南)

深度指南&#xff1a;DevExpress 20.1.3开发环境高效配置与资源管理 在.NET生态系统中&#xff0c;DevExpress始终以其强大的控件库和高效的开发工具占据重要地位。对于刚接触这个工具集的开发者来说&#xff0c;如何快速搭建一个稳定的开发环境往往成为项目启动的第一道门槛。…...

智能部署copaw:借助快马ai生成能理解自然语言的下载助手

最近在折腾一个叫copaw的工具时&#xff0c;发现手动下载部署特别麻烦&#xff0c;尤其是遇到网络波动和依赖冲突的时候。于是尝试用AI辅助开发的方式&#xff0c;通过自然语言描述需求&#xff0c;让InsCode(快马)平台的AI模型帮我生成一个智能化的下载部署助手。整个过程意外…...

罚到肉疼!2026“两个细则”大考:你的风电场还在用“注定不准”的方法做预测吗?

当95%置信概率成为国家标准&#xff0c;单点预测的时代彻底终结2026年的春天&#xff0c;对于新能源发电企业而言&#xff0c;比以往任何时候都要“寒冷”。山东、四川等地新版“两个细则”正式施行&#xff0c;国家发改委“136号文”深入落地&#xff0c;新能源全面进入电力市…...

FPGA调试避坑指南:Vivado ILA采样深度和探针位宽怎么设?资源占用与调试效果的平衡术

FPGA调试实战&#xff1a;ILA采样深度与探针位宽的黄金平衡法则 当你在Artix-7芯片上调试一个包含32位计数器和多状态机的设计时&#xff0c;突然发现ILA吃掉了一半的Block RAM资源&#xff0c;而采样深度却只够捕获5个时钟周期的数据——这种场景是否似曾相识&#xff1f;本文…...

Anthropic 经济指数报告:学习曲线

引言 Anthropic 经济指数利用隐私保护数据分析系统,追踪 Claude 在整个经济领域中的应用情况。这是Anthropic 努力的一部分,旨在尽早理解 AI 对经济的影响,以便研究人员和政策制定者有充足的时间做好准备。 在最新一期的报告中,首先观察到了与先前报告相比使用情况的变化…...

计算机毕业设计:汽车数据可视化与后台管理平台 Django框架 requests爬虫 可视化 车辆 数据分析 大数据 机器学习(建议收藏)✅

博主介绍&#xff1a;✌全网粉丝10W&#xff0c;前互联网大厂软件研发、集结硕博英豪成立软件开发工作室&#xff0c;专注于计算机相关专业项目实战6年之久&#xff0c;累计开发项目作品上万套。凭借丰富的经验与专业实力&#xff0c;已帮助成千上万的学生顺利毕业&#xff0c;…...

如何高效使用AsrTools:快速上手指南与实用功能详解

如何高效使用AsrTools&#xff1a;快速上手指南与实用功能详解 【免费下载链接】AsrTools ✨ AsrTools: Smart Voice-to-Text Tool | Efficient Batch Processing | User-Friendly Interface | No GPU Required | Supports SRT/TXT Output | Turn your audio into accurate tex…...