【华为】GRE VPN 实验配置

【华为】GRE VPN 实验配置

  • 前言
    • 报文格式
  • 实验需求
  • 配置思路
  • 配置
    • 拓扑
    • GRE配置步骤
      • R1
        • 基础配置
        • GRE 配置
      • ISP_R2
        • 基础配置
      • R3
        • 基础配置
        • GRE 配置
      • PC
        • PC1
        • PC2
  • 抓包检查
    • OSPF建立
    • GRE隧道建立
  • 配置文档

在这里插入图片描述


前言

VPN :(Virtual Private Network),即“虚拟专用网络”。
它是一种通过公用网络(通常是互联网)建立安全加密连接的技术,可以在不安全的公共网络上建立起加密通道,将网络数据加密传输,从而实现数据传输的加密、安全和隐私保护

而GRE(Generic Routing Encapsulation),即通用路由封装协议。
提供了将一种协议的报文封装在另一种协议报文中的机制,是一种三层隧道封装技术,使报文可以通过GRE隧道透明的传输,解决异种网络的传输问题。

要注意哦,它是可以在公网上面传输,但它是没有对数据进行加密的。
在这里插入图片描述

报文格式

这个就是GRE VPN的报文,本质上面就是在原有的基础上,加上公网IP,使之能在公网上传输我两个私网的数据。
在这里插入图片描述


实验需求

R1、R2、R3实现公网互通。在私网上运行OSPF路由协议,现需要PC1和PC2通过公网实现私网互通,同时需要保证私网数据传输的可靠性。
其中PC1和PC2上分别指定R1和R3为自己的网关。
在这里插入图片描述

配置思路

要实现PC1和PC2通过公网互通。需要在R1和R3之间使用GRE隧道直连,其中Tunnel接口和与私网相连接口上使用OSPF路由,PC1和PC2就可以互相通信了。为了能够检测隧道链路状态,还可以在GRE隧道两端的Tunnel接口上使能Keepalive功能。

配置GRE通过OSPF实现IPv4协议互通的思路如下:

在设备之间运行IGP协议实现设备互通,这里使用OSPF路由协议且进程110。

与PC相连的设备之间建立GRE隧道,并使能Keepalive功能,并配置与PC相连的网段运行IGP协议,这里使用OSPF协议,使PC1和PC2之间的流量通过GRE隧道传输,实现PC1和PC2互通


配置

拓扑

在这里插入图片描述

GRE配置步骤

① 创建虚拟Tunnel接口
② 指定协议类型为GRE
③ 设置Tunnel接口的网络地址和掩码
④ 指定Tunnel的源端IP地址
⑤ 指定Tunnel的目的端IP地址
⑥ 开启Keepalive检测功能

R1

基础配置
<Huawei>sys
[Huawei]sysname R1[R1]undo info-center enable         ## 可选,关闭系统消息弹窗[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]ip address 192.168.10.254 24
[R1-GigabitEthernet0/0/1]qu[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip address 202.101.12.1 24
[R1-GigabitEthernet0/0/0]qu##配置默认路由指向ISP运营商,实现公网可达
[R1]ip route-static 0.0.0.0 0.0.0.0 202.101.12.2   
GRE 配置
[R1]int Tunnel 0/0/1                        ## 创建隧道接口
[R1-Tunnel0/0/1]tunnel-protocol gre	        ## 定义隧道协议类型为GRE
[R1-Tunnel0/0/1]ip address 13.13.13.1 24	## 配置隧道IP地址
[R1-Tunnel0/0/1]source 202.101.12.1         ## 隧道源地址(封装报文头的)
[R1-Tunnel0/0/1]destination 202.101.23.3    ## 隧道目的地址(封装报文头的)
[R1-Tunnel0/0/1]keepalive                   ## Keepalive 检测机制
[R1-Tunnel0/0/1]qu[R1]ospf 110 router-id 1.1.1.1              ## 进入OSPF进程110,RID 为1.1.1.1
[R1-ospf-110]area 0                         ## 骨干区域 0
[R1-ospf-110-area-0.0.0.0]network 192.168.10.0 255.255.255.0    ## 宣告内容
[R1-ospf-110-area-0.0.0.0]network 13.13.13.0 255.255.255.0

ISP_R2

基础配置
<Huawei>sys
[Huawei]sysname ISP_R2[ISP_R2]int g0/0/1
[ISP_R2-GigabitEthernet0/0/1]ip address 202.101.23.2 24
[ISP_R2-GigabitEthernet0/0/1]qu[ISP_R2]int g0/0/0
[ISP_R2-GigabitEthernet0/0/0]ip address 202.101.12.2 24
[ISP_R2-GigabitEthernet0/0/0]qu

R3

基础配置
<Huawei>sys
[Huawei]sysname R3[R3]undo info-center enable         ## 可选,关闭系统消息弹窗[R3]int g0/0/0
[R3-GigabitEthernet0/0/0]ip address 202.101.23.3 24
[R3-GigabitEthernet0/0/0]qu[R3]int g0/0/1
[R3-GigabitEthernet0/0/1]ip address 192.168.20.254 24
[R3-GigabitEthernet0/0/1]qu##配置默认路由指向ISP运营商,实现公网可达
[R3]ip route-static 0.0.0.0 0.0.0.0 202.101.23.2  
GRE 配置
[R3]int Tunnel 0/0/1
[R3-Tunnel0/0/1]tunnel-protocol gre
[R3-Tunnel0/0/1]ip address 13.13.13.3 24
[R3-Tunnel0/0/1]source 202.101.23.3
[R3-Tunnel0/0/1]destination 202.101.12.1
[R3-Tunnel0/0/1]keepalive 
[R3-Tunnel0/0/1]qu[R3]ospf 110
[R3-ospf-110]area 0
[R3-ospf-110-area-0.0.0.0]network 13.13.13.0 255.255.255.0
[R3-ospf-110-area-0.0.0.0]network 192.168.20.0 255.255.255.0
[R3-ospf-110-area-0.0.0.0]qu

PC

PC1

在这里插入图片描述

PC2

在这里插入图片描述

抓包检查

记住这个报文格式,到后面看我抓包的内容就能够很好地理解啦~
在这里插入图片描述

OSPF建立

查看邻居的建立情况
在这里插入图片描述
在这里插入图片描述

GRE隧道建立

当GRE的网段地址(13.13.13.0)能够相互通信的时候,就表明GRE的隧道是建立成功了
如下图所示

在这里插入图片描述

但这个时候,我总部和分部的PC是不能通信的
因为路由表上面是没有这条明细路由,而我又想让它走GRE隧道通过公网到达分部,实行私网通信。
这个时候,可以用OSPF等动态路由协议或者静态路由都可以,将本部的私网接口(e0/1)和隧道接口(tunnel 13)都通告进去,然后对面的也是一样,这样子就能够得到一条明细路由通往对方私网
去往分部的流量走GRE隧道(其实就是在报文头加上GRE封装,封装里面是公网IP作为头部),就能实现通信

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

配置文档

R1

sys
sysname R1undo info-center enable int g0/0/1
ip address 192.168.10.254 24
quint g0/0/0
ip address 202.101.12.1 24
quip route-static 0.0.0.0 0.0.0.0 202.101.12.2int Tunnel 0/0/1
tunnel-protocol gre	
ip address 13.13.13.1 24	
source 202.101.12.1 
destination 202.101.23.3
keepalive 
quospf 110 router-id 1.1.1.1
area 0
network 192.168.10.0 255.255.255.0
network 13.13.13.0 255.255.255.0

ISP_R2

sys
sysn ISP_R2
int g0/0/0
ip address 202.101.12.2 24
qu
int g0/0/1
ip address 202.101.23.2 24
qu

R3


sys
sysname R3undo info-center enable int g0/0/0
ip address 202.101.23.3 24
quint g0/0/1
ip address 192.168.20.254 24
quip route-static 0.0.0.0 0.0.0.0 202.101.23.2int Tunnel 0/0/1
tunnel-protocol gre
ip address 13.13.13.3 24
source 202.101.23.3
destination 202.101.12.1
keepalive 
quospf 110
area 0
network 13.13.13.0 255.255.255.0
network 192.168.20.0 255.255.255.0
qu

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

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

相关文章

Electron实战(二):将Node.js和UI能力(app/BrowserWindow/dialog)等注入html

文章目录 设置webPreferences参数安装electron/remotemain进程中初始化html中使用dialog踩坑参考文档 上一篇&#xff1a;Electron实战(一)&#xff1a;环境搭建/Hello World/打包exe 设置webPreferences参数 为了能够在html/js中访问Node.js提供fs等模块&#xff0c;需要在n…

Django的web框架Django Rest_Framework精讲(二)

文章目录 1.自定义校验功能&#xff08;1&#xff09;validators&#xff08;2&#xff09;局部钩子&#xff1a;单字段校验&#xff08;3&#xff09;全局钩子&#xff1a;多字段校验 2.raise_exception 参数3.context参数4.反序列化校验后保存&#xff0c;新增和更新数据&…

20240131在ubuntu20.04.6下使用whisper不同模式的比对

20240131在ubuntu20.04.6下使用whisper不同模式的比对 2024/1/31 16:07 首先你要有一张NVIDIA的显卡&#xff0c;比如我用的PDD拼多多的二手GTX1080显卡。【并且极其可能是矿卡&#xff01;】 2、请正确安装好NVIDIA最新的驱动程序和CUDA。可选安装&#xff01; 3、配置whisper…

【Linux取经路】进程控制——程序替换

文章目录 一、单进程版程序替换看现象二、程序替换的基本原理三、程序替换接口学习3.1 替换自己写的可执行程序3.2 第三个参数 envp 验证四、结语一、单进程版程序替换看现象 #include <stdio.h> #

深入理解Istio服务网格(一)数据平面Envoy

一、服务网格概述(service mesh) 在传统的微服务架构中&#xff0c;服务间的调用&#xff0c;业务代码需要考虑认证、熔断、服务发现等非业务能力&#xff0c;在某种程度上&#xff0c;表现出了一定的耦合性 服务网格追求高级别的服务流量治理能力&#xff0c;认证、熔断、服…

【Spring】自定义注解 + AOP 记录用户的使用日志

目录 ​编辑 自定义注解 AOP 记录用户的使用日志 使用背景 落地实践 一&#xff1a;自定义注解 二&#xff1a;切面配置 三&#xff1a;Api层使用 使用效果 自定义注解 AOP 记录用户的使用日志 使用背景 &#xff08;1&#xff09;在学校项目中&#xff0c;安防平台…

vue2 el-table新增行内删除行内(两种写法)里面第一个是树组件,第二个是数字组件,第一个数组件只能勾选最后一个节点

第一种 <template><div class"time_table"><div style"margin-bottom: 10px"><el-button click"addRowFn">新增</el-button></div><el-form ref"costForm" :model"formData">&l…

ArcGIS Pro字段编号相关代码

字段属于SHP文件的重要组成部分&#xff0c;在某些时候需要对字段进行编号&#xff0c;这里为大家介绍一下字段编号相关的代码&#xff0c;希望能对你有所帮助。 数据来源 教程所使用的数据是从水经微图中下载的POI数据&#xff0c;除了POI数据&#xff0c;常见的GIS数据都可…

WPF布局面板

StackPanel StackPanel 是一种常用的布局控件,可以支持水平或垂直排列,但不会换行。当子元素添加到 StackPanel 中时,它们将按照添加的顺序依次排列。默认情况下,StackPanel 的排列方向是垂直的,即子元素将从上到下依次排列。可以使用 Orientation 属性更改排列方向。可以…

后端登录校验

文章目录 登录校验CookieSessionJWT生成JWT校验JWT基于JWT进行身份验证CSRF Cookie、Session、Token的区别&#xff1f;过滤器(Filter)配置过滤器过滤器链 登录校验 由于HTTP协议是无状态的&#xff0c;我们在进行登录后等一系列接口请求是无法直接区分是哪一个用户的发给服务…

SpringBoot 使用定时任务(SpringTask)

Spring3.0以后自带的task&#xff0c;可以将它看成一个轻量级的Quartz&#xff0c;而且使用起来比Quartz简单许多。 使用步骤&#xff1a; 1.导入坐标 在spring-boot-starter-web坐标中&#xff0c;就包含了SpringTask&#xff0c;所以一般的Web项目都包含了。 <depende…

UE4 C++ 静态加载类和资源

静态加载类和资源&#xff1a;指在编译时加载&#xff0c;并且只能在构造函数中编写代码 .h //增加所需组件的头文件 #include "Components/SceneComponent.h" //场景组件 #include "Components/StaticMeshComponent.h" //静态网格体组件 #include &qu…

ES6-对象的解构赋值

一、区别一下数组的解构赋值 - 对象的解构与数组有一个重要的不同。数组的元素是按次序排列的&#xff0c;变量的取值由它的位置决定&#xff1b;而对象的属性没有次序&#xff0c;变量必须与属性同名&#xff0c;才能取到正确的值二、说明 - 对象的解构赋值的内部机制&#…

共享网盘系统PHP源码

新V5.0版本&#xff0c;支持上传视频、支持视频播放、支持共享&#xff0c;也可以自己用。 可以自动生成视频外链&#xff0c;下载地址&#xff0c;播放器代码&#xff0c;html代码&#xff0c;ubb代码等等。 使用方法&#xff1a; 源码上传到服务器&#xff0c;打开网站根据…

两种方式实现文本超出指定行数显示展开收起...

需要实现这样一个功能 默认高度下文本超出隐藏&#xff0c;点击展开可查看所有内容&#xff0c;点击收起可折叠 方法一&#xff1a;通过html和css实现 代码部分 html:<div className"expand-fold"><input id"check-box" type"checkbox&qu…

云计算关键技术

目录 一、云计算关键技术概述 1.1 概述 二、关键技术内容 2.1 虚拟化技术 2.2 分布式数据存储技术 2.3 资源管理技术 2.4 云计算平台管理技术 2.5 多租户隔离技术 2.5.1 多租户技术下SaaS 特征 2.5.2 多租户技术面临的技术难题 2.5.2.1 数据隔离 2.5.2.2 客户化配置…

Mybatis基础教程及使用细节

本篇主要对Mybatis基础使用进行总结&#xff0c;包括Mybatis的基础操作&#xff0c;使用注解进行增删改查的练习&#xff1b;详细介绍xml映射文件配置过程并且使用xml映射文件进行动态sql语句进行条件查询&#xff1b;为了简化java开发提高效率&#xff0c;介绍一下依赖&#x…

前端登陆加密解决方案

项目背景 环食药烟草的数据下载模块中&#xff0c;需要判断用户在进行数据下载时是进行了登录操作&#xff0c;如果没有登录要跳转登陆页面&#xff0c;输入账号和密码进行登录。 使用场景 项目中需要前端书写登录页面&#xff0c;用户输入账号密码&#xff0c;前端获取到用…

嵌入式学习第十六天!(Linux文件查看、查找命令、标准IO)

Linux软件编程 1. Linux&#xff1a; 操作系统的内核&#xff1a; 1. 管理CPU 2. 管理内存 3. 管理硬件设备 4. 管理文件系统 5. 任务调度 2. Shell&#xff1a; 1. 保护Linux内核&#xff08;用户和Linux内核不直接操作&#xff0c;通过操作Shell&#xff0c;Shell和内核交互…

return语句

一、return语句 使用在方法时&#xff0c;表示跳出所在方法使用在main方法时&#xff0c;表示退出程序 二、break、continue、return三者的比较 break语句&#xff1a;跳出循环continue语&#xff1a;结束当次循环&#xff0c;继续下一次循环return语句&#xff1a;使用在方法时…