GRE 协议

简介: GRE(通用路由封装)是一种三层隧道技术,可将IPX、IPv6、AppleTalk等协议报文封装于IPv4中透明传输,解决异构网络互通问题;支持组播报文封装,常用于GRE over IPSec、突破RIP跳数限制等场景。

简介

通用路由封装协议GRE(Generic Routing Encapsulation)可以对某些网络层协议(如IPX、ATM、IPv6、AppleTalk等)的数据报文进行封装,使这些被封装的数据报文能够在另一个网络层协议(如IPv4)中传输。GRE提供了将一种协议的报文封装在另一种协议报文中的机制,是一种三层隧道封装技术,使报文可以通过GRE隧道透明的传输,解决异种网络的传输问题。如下图所示,通过在IPv4网络上建立GRE隧道,解决了两个IPv6网络的通信问题。

GRE除了可以封装网络层协议报文以外,它还具备封装组播报文的能力。由于动态路由协议中会使用组播报文,因此更多时候GRE会在需要传递组播路由数据的场景中被用到,这也是GRE被称为通用路由封装协议的原因。以下几个场景就是GRE在路由封装方面的应用。

GRE over IPSec

如下图所示,IPSec隧道两端的IP网络需要通信,彼此就要获取到对端网络的私网路由信息。假设隧道两端的IP网络部署的是动态路由协议,那么IPSec隧道中就需要传递路由协议的组播报文。由于IPSec本身并不具备封装组播报文的能力,因此该场景下就需要寻求GRE的协助。GRE首先将组播报文封装成单播报文,封装后的单播报文就可以经过IPSec隧道发送到对端网络。此时,建立在两个IP网络中的隧道被称为GRE over IPSec隧道。

扩大跳数受限的网络工作范围

如下图所示,网络中运行RIP协议,如果两台电脑之间的跳数超过15,它们将无法通信。通过在网络中使用GRE隧道可以隐藏一部分跳数,从而扩大网络的工作范围。

例如,在FW_A和FW_B之间建立GRE隧道后,FW_A和FW_B就相当于相邻的路由器,距离为一跳。这就隐藏了FW_A和FW_B之间的跳数,使网络得到了扩展。

GRE基本原理

报文格式

GRE封装后的报文格式如下图所示。

  • 乘客协议(Passenger Protocol):封装前的报文称为净荷,封装前的报文协议称为乘客协议。
  • 封装协议(Encapsulation Protocol):GRE Header是由封装协议完成并填充的,封装协议也称为运载协议(Carrier Protocol)。
  • 传输协议(Transport Protocol或者Delivery Protocol):负责对封装后的报文进行转发的协议称为传输协议。

GRE报文转发流程(实现过程)

下面结合FW的流量处理过程,介绍GRE报文转发流程,如下图所示。

PC_A通过GRE隧道访问PC_B时,FW_A和FW_B上的报文转发过程如下:

  1. PC_A访问PC_B的原始报文进入FW_A后,首先匹配路由表。
  2. 根据路由查找结果,FW_A将报文送到Tunnel接口进行GRE封装,增加GRE头,外层加新IP头。
  3. FW_A根据GRE报文的新IP头的目的地址(2.2.2.2),再次查找路由表。
  4. FW_A根据路由查找结果转发报文。
  5. FW_B收到GRE报文后,首先判断这个报文是不是GRE报文。

在上图中可以看到封装后的GRE报文会有个新的IP头,这个新的IP头中有个Protocol字段,字段中标识了内层协议类型,如果这个Protocol字段值是47,就表示这个报文是GRE报文。如果是GRE报文,FW_B则将该报文送到Tunnel接口解封装,去掉新的IP头、GRE头,恢复为原始报文;如果不是,则报文按照普通报文进行处理。

  1. FW_B根据原始报文的目的地址再次查找路由表,然后根据路由匹配结果转发报文。
相关文章
|
22小时前
|
安全 网络安全 数据安全/隐私保护
配置基于静态路由的GRE隧道
本文介绍通过GRE隧道实现两个私有网络(网络1与网络2)跨Internet互联的完整方案:FW1与FW2公网可达,分别配置Tunnel接口、GRE封装参数(源/目的IP、密钥)、静态路由及双向安全策略,最终实现PC1与PC2互通,并通过Wireshark验证GRE封装效果。
配置基于静态路由的GRE隧道
|
22小时前
|
网络协议 安全 网络安全
配置基于OSPF的GRE隧道
本文介绍通过GRE隧道实现跨Internet的OSPF路由互通:FW1与FW2建立GRE隧道,封装OSPF及ICMP报文,配置Tunnel接口、OSPF进程、静态路由及双向安全策略,最终使网络1(172.16.1.0/24)与网络2(172.16.2.0/24)私网互通。
配置基于OSPF的GRE隧道
|
1月前
|
人工智能 架构师
Qoder Together 郑州站来啦!解锁企业级 AI Coding 落地玩法
4月22日14:00-17:00,郑州阿里中心举办AI Coding实战沙龙!聚焦Qoder产品解析、企业级方案及UU跑腿落地实践,架构师现场带练。名额有限,速报名→ https://huodongxing.com/event/4855877137411
156 4
|
11月前
|
负载均衡 网络协议
配置本地策略路由示例—详解版
本文介绍了一种基于报文长度的策略路由配置方案,实现RouterA与RouterB间不同长度报文通过不同下一跳地址转发。具体规则为:64-1400字节强制下一跳为192.168.1.2,1401-1500字节强制下一跳为192.168.2.2,其他长度按目的地址路由。实验中通过ping命令测试多种报文长度,并对比RouterB接口统计信息验证配置效果。结果表明,策略路由优先级高于常规路由,超MTU报文会触发分片导致统计翻倍,未匹配策略时由静态路由实现负载均衡。此方案展示了策略路由在流量工程中的灵活应用。
366 131
|
1天前
|
人工智能 搜索推荐 JavaScript
别再手动刷热搜了——我让Hermes每天自动分析热点和产品的结合点,还帮我出好了选题
Hermes Agent是Nous Research开源的自进化AI智能体(MIT协议),支持私有部署、持久记忆与闭环学习。本文介绍如何用它自动抓取微博、抖音等多平台热点,结合你的产品信息每日生成精准选题与大纲——三步配置,省去手动刷榜筛热的低效劳动。
50 2
|
8月前
|
Oracle 关系型数据库 虚拟化
在VMware的Win10虚拟机中安装使用ENSP
本文介绍了在Windows 10虚拟机上安装ENSP及相关软件的全过程,包括VirtualBox、WinPcap、Wireshark、VLC和ENSP的安装步骤,并提供图文演示,帮助用户顺利完成配置与测试。
2202 134
|
23小时前
|
人工智能 弹性计算 安全
2026年阿里云入门级云服务器特惠价格:2核2G38元1年、99元1年,2核4G9.9元1个月、199元1年
阿里云2026年推出四款特惠云服务器,覆盖从个人到企业的多元需求。轻量应用服务器2核2G抢购价仅38元/年,内置WordPress、OpenClaw等镜像,开箱即用,适合个人开发者与学生;2核4G版本9.9元/月起,可一键部署AI助理。经济型e实例99元/年、通用算力型u1实例199元/年,均享"新购续费同价"政策,有效解决后续涨价顾虑。其中e实例不限新老用户,u1实例面向企业用户,活动持续至2027年3月31日。此外还有u2a实例2.5折、九代实例6.4折及百炼Token Plan、JVS Claw等AI产品优惠。
|
23小时前
|
人工智能 程序员 API
Claude Code 的 Agent View,让我看到 AI 编程真正麻烦的地方
这两天 Claude Code 又更新了一个东西,叫 Agent View。 一开始我以为这就是个小功能,后来仔细看完官方文档,感觉这事儿有点东西。 它解决的不是模型会不会写代码的问题。 它解决的是当你同时让几个 AI 去干活时,人到底怎么盯、怎么插手、怎么拍板。 官方变更记录里,Agent View 被放在 Claude Code v2.1.139 里,还是 Research Pre
|
23小时前
|
机器学习/深度学习 负载均衡 专有云
性能翻倍!Qwen3.5与阿里云APG服务器完成深度优化
近日,Qwen3.5系列模型正式发布,正式迈向原生多模态智能体,并推出多款模型。阿里云专有云联合通义实验室等团队,基于APG服务器深度优化了Qwen3.5-397B-A17B模型,对比Qwen3-235B性能提升1.5倍以上。
|
23小时前
|
存储 人工智能 安全
安心无忧养“虾”,阿里云飞天企业版为你保驾护航
近期,因具备“主动进化”能力,开源AI智能体小龙虾OpenClaw在全球范围内迅速走红。作为一款可本地部署的执行型AI代理,它不仅能自主处理邮件、预订服务、操作浏览器,还拥有持久记忆和复杂任务调度能力,被誉为“数字员工”的雏形。然而,火热背后也暗藏风险。相关部门已发布预警:OpenClaw默认配置存在较高安全风险,极易被利用进行网络攻击与信息泄露。其赋予的文件读写、程序执行等系统级权限,一旦失控,可能让攻击者获得“上帝模式”,完全掌控企业终端。