美文网首页
gre-通用路由封装协议

gre-通用路由封装协议

作者: 今夜秋风和 | 来源:发表于2023-05-24 21:49 被阅读0次

gre 协议介绍

通用路由封装协议gre(Generic Routing Encapsulation)可以对某些网络层协议(如ipx、ipv6、appleTalk等)的数据报文进行封装,使这些被封装的数据报文能够在另一个网络层协议(如ipv4)中传输。
gre提供了将一种协议的报文封装在另一种协议报文中的机制,是一种三层隧道封装技术,使报文可以通过gre隧道透明的传输,本质上解决异种网络的传输问题。

gre 实现过程

51.jpg
  • AR1 接口0 处收到pc1 发来的报文,由自己的ipv6 协议栈处理;
  • AR1 根据收到的报文头中的目的地址,查找路由表,确定如何到达对端,如果发现出接口是tunnel 接口,那么协议栈需要对报文进行gre 头的封装;
  • 根据网络中传输协议为ip,给报文加上ip头。ip头的源地址就是隧道源物理接口地址,目的地址就是隧道物理接口的目的地址。
  • 报文封装完毕后,沿着公网物理线路传输,到达对端tunnel 接口后,于是去掉里面ip 头的封装交给gre 协议处理,gre 协议去掉之前封装的gre 头,获取原始报文中的ipv6协议,然后交由自己的ipv6 协议进行后续报文处理;
  • AR2发现目的地址就在自己的右手边,直接将数据包从接口0发出去;

gre 报文格式及gre 头字段含义

报文格式

49.jpg
  • 乘客协议:封装前的原始报文;
  • 封装协议:gre 协议封装的header;
  • 传输协议:对封装后的报文进行转发的协议;

gre 头字段含义

  • C:校验和验证位, 1:gre头插入了校验和(Checksum)字段 2:gre 头不包含校验和字段;
  • K:关键字位, 1:gre头插入了关键字(Key)字段,0:gre 头不包含关键字字段;
  • Recursion:表示报文gre被封装的层数,完成一次gre封装后将该字段加1,如果封装层数大于3,则丢弃该报文;
  • Flags:预留字段,当前必须置为0;
  • Version:版本字段,必须置为0;
  • Protocol Type:标识乘客协议的协议类型;
  • Checksum:对gre头及其负载的校验和字段;
  • Key:关键字字段,隧道接收端用于对收到的报文进行验证;

隧道接口

  • gre隧道是通过隧道两端的tunnel接口建立的,所以需要在隧道两端的设备上分别配置tunnel接口。对于gre的tunnel接口,需要指定其协议类型为gre、源地址或源接口、目的地址和tunnel接口ip地址;
  • tunnel
    1.tunnel 接口:逻辑的虚拟接口;
    2.tunnel接口源地址: 依赖的源物理接口地址;
    3.tunnel接口目的地址:依赖的目的物理接口地址;

gre实验

ipv4 之间隧道

实验拓扑

46.jpg

实验配置

[AR1]:
[Huawei]interface Tunnel 0/0/1(创建tunnel端口)
[Huawei-Tunnel0/0/1]tunnel-protocol gre(设置tunnel 端口支持协议)
[Huawei-Tunnel0/0/1]source GigabitEthernet 0/0/1(tunnel 端口依赖的源端口)
[Huawei-Tunnel0/0/1]destination 192.168.200.2 (tunnel 端口目的地址)
[Huawei-Tunnel0/0/1]ip address 192.168.210.1 24 (tunnel 端口配置ip)
[Huawei-Tunnel0/0/1]keepalive period 1 retry-times 3 (配置隧道两端链路探测)
[Huawei]ip route-static 10.10.10.0 24 192.168.210.2 (路由配置)
[AR2]:
[Huawei]interface Tunnel 0/0/0(创建tunnel端口)
[Huawei-Tunnel0/0/0]tunnel-protocol gre(设置tunnel 端口支持协议)
[Huawei-Tunnel0/0/0]source GigabitEthernet 0/0/0(tunnel 端口依赖的源端口)
[Huawei-Tunnel0/0/0]destination 192.168.200.1 (tunnel 端口目的地址)
[Huawei-Tunnel0/0/0]ip address 192.168.210.2 24 (tunnel 端口配置ip)
[Huawei-Tunnel0/0/0]keepalive period 1 retry-times 3 (配置隧道两端链路探测)
[Huawei]ip route-static 192.168.100.0 24 192.168.200.1 (路由配置)

实验结果-pc1 ping pc2

47.jpg
  • 1: 封装前报文协议ipv4,源ip:192.168.100.2,目的ip:10.10.10.2;
  • 2: gre header,由隧道端口设置的gre 协议进行填充,称为封装协议;
48.jpg
  • 3: 最终负责对封装后的报文进行转发的协议称为传输协议,依赖实际的两个物理口进行传输;

ipv6 to ipv4 之间隧道

实验拓扑

52.jpg

实验配置

[AR1]
[Huawei]ipv6
[Huawei-GigabitEthernet0/0/0]ipv6 enable
[Huawei-GigabitEthernet0/0/0]ipv6 address fc00:1::1 64
[Huawei-GigabitEthernet0/0/1]ip address 20.1.1.1 24
[Huawei]interface Tunnel 0/0/1
[Huawei-Tunnel0/0/1]tunnel-protocol gre
[Huawei-Tunnel0/0/1]source GigabitEthernet 0/0/1
[Huawei-Tunnel0/0/1]destination 20.1.1.2
[Huawei]ipv6 route-static fc00:2::2 64 3001::2

[AR2]
[Huawei]ipv6
[Huawei]int GigabitEthernet 0/0/1
[Huawei-GigabitEthernet0/0/1]ipv6 enable
[Huawei-GigabitEthernet0/0/1]ipv6 address fc00:2::1 64
[Huawei-GigabitEthernet0/0/0]ip address 20.1.1.2 24

[Huawei]int Tunnel 0/0/1
[Huawei-Tunnel0/0/1]tunnel-protocol gre
[Huawei-Tunnel0/0/1]source GigabitEthernet 0/0/0
[Huawei-Tunnel0/0/1]destination 20.1.1.1
[Huawei]ipv6 route-static fc00:1::2 64 3001::1

实验结果-pc1 ping pc2

  • AR1 接口1封装后报文:
53.jpg
  • AR2 接口1解封装后报文:
54.jpg

通过抓包,可以看到依赖ipv4 协议网络传输时,报文会通过实际的ipv4 传输协议进行封装, 到达对端后,会进行解封装,按照原始报文的ipv6 协议处理;

gre应用场景

  • 针对不同本地协议的网络传输,实现两边网络互相通信;
  • ip 协议有跳数的最大限制,通过设备之间建立隧道,隐藏跳数限制,扩大网络工作范围;

相关文章

  • 计算机网络(五):网络层

    IPv4 协议 网络层为每个终端设备之间通过网络交换数据的片段提供服务基本过程编址封装路由解封装协议Interne...

  • [CCNA图文笔记]-24-PPP协议实例详解

    0×1.PPP概述a.HDLC封装协议HDLC是思科路由器串行接口默认的封装协议,由于串行线路在远距离通信中的优势...

  • node学习4

    Nodejs 路由模块封装、封装仿照 express 的路由 Nodejs 路由模块封装 封装仿照 express...

  • 路由选择协议

    RIP路由信息协议 通过距离矢量协议实现:RIP报文被封装在UDP用户数据包中。 DV(distance vect...

  • 计算机网络笔记——数据链路层

    基本概念 节点:主机、路由 链路:物理通道 数据链路:逻辑通道(控制协议的硬件+软件) 帧:协议数据单元,封装数据...

  • OSPF路由协议详解

    OSPF:开放式最短路径优先协议 无类别链路状态路由协议,组播更新224.0.0.5/6;跨层封装到三层,协议号8...

  • 记录封装好的axios

    拦截封装 路由封装

  • 路由器协议

    四种类型的路由器:能量感知路由协议;基于查询的路由协议;地理位置路由协议;可靠的路由协议 1.能量节点 2.基于查...

  • 98.基础服务平台

    目标定位 封装通用功能,减少冗余开发,方便维护。 协议封装,屏蔽系统对接的复杂性,统一对外提供http接口。 架构...

  • Internet协议

    Internet采用层次路由 AS内部协议也称位内部网络协议IGP 最常见的AS内部路由协议: 路由信息协议:RI...

网友评论

      本文标题:gre-通用路由封装协议

      本文链接:https://www.haomeiwen.com/subject/mdqwsdtx.html