GRE-Tunnel环境说明书

1.     引言

1.1. GRE简介

GRE(Generic Routing Encapsulation,通用路由封装)协议用来对某种协议(如IP、MPLS、以太网)的数据报文进行封装,使这些被封装的数据报文能够在另一个网络(如IP)中传输。封装前后数据报文的网络层协议可以相同,也可以不同。封装后的数据报文在网络中传输的路径,称为GRE 隧道。GRE 隧道是一个虚拟的点到点的连接,其两端的设备分别对数据报文进行封装及解封装。

1.1.1    GRE封装后的报文格式

图1-1 GRE封装后的格式

如图1-1所示,GRE封装后的报文包括如下几个部分:

净荷数据(Payload packet):需要封装和传输的数据报文。净荷数据的协议类型,称为乘客协议(Passenger Protocol)。乘客协议可以是任意的网络层协议。

GRE 头(GRE header):采用GRE 协议对净荷数据进行封装所添加的报文头,包括封装层数、版本、乘客协议类型等内容。添加GRE 头后的报文称为GRE 报文。对净荷数据进行封装的GRE 协议,称为封装协议(Encapsulation Protocol)。

传输协议的报文头(Delivery header):在GRE 报文上添加的报文头,以便传输协议对GRE报文进行转发处理。传输协议(Delivery Protocol 或者Transport Protocol)是指负责转发GRE报文的网络层协议。设备支持IPv4 和IPv6 两种传输协议:当传输协议为IPv4 时,GRE 隧道称为GRE over IPv4 隧道;当传输协议为IPv6 时,GRE 隧道称为GRE over IPv6 隧道。

Tips: GRE 收发双方的加封装、解封装处理,以及由于封装造成的数据量增加,会导致使用GRE 后设备的数据转发效率有一定程度的下降。

1.2.概述

该文档主要描述GRE Tunnel的建立和检测,

适用读者

链路优化开发和业务运维人员

1.3.工具

SecureCRT,Xshell

2.     初始基础环境

安装初始化准备工作:

1  确定交换机的版本

2  操作前需要先备份配置文件和启动文件,防止误操作

3  测试版本要求:

H3C交换机:不低于1807P02

华为CE-5800 系列:

参考原因官方文档。

2.1 环境拓扑

2.2 安全配置

2.2.1       SSH Telnet连接限制IP

2.2.2     设置特权密码,密码规则遵从复杂和安全性规则

2.2.3       AAA 验证加密

3.2 命令行配置

3.2.1配置H3C-s5800-1 Tunnel

    1. Interface Tunnel 10
    2. mtu 1500
    3. ip address 10.0.0.1 255.255.255.0
    4. source 1.1.1.1
    5. destionation 4.4.4.4
    6. service-loopback-group 1
    7. tunnel-protocol gre
    8. undo shut

    3.2.2 配置CE-5800

        1. Interface Tunnel 10
        2. mtu 1500
        3. ip address 10.0.0.2 255.255.255.0    #Tunnel 互联地址,Tunnel最终通信地址
        4. source 4.4.4.4                 #源地址
        5. destionation 1.1.1.1             #目的地址,相对互为源和目的
        6. service-loopback-group 1          # Tunnel 加入回环组 1
        7. tunnel-protocol gre              #隧道协议:gre
        8. undo shut
        9. 备注:H3C-S5800 配置解释同理,和华为不通的是,H3C需要先把一个普通的端口加入到回环组,这里把普通的g1/0/3加入到回还组1

    4.1测试标准:两端的Tunnel建立需要2个up状态,

    解释:1个是物理链路,一个是链路协议状态,2边都是up的状态才可以Tunnel建立成功

    4.1.1 在H3C-S5800-1上的状态如下:

    4.1.2 在CE-5810 上的配置如下:

    4.1.3 测试隧道互联地址能否通信:

    4.2 QuidWay-CE5800 和 H3C-S5800 的三层交换机,建立Tunnel的限制:

    4.2.1 设备限制了建立max Tunnel的最大数目即0-255个

    4.2.2  H3C设备出厂默认支持128个Tunnel,CE5800默认出厂不支持GRE特性,需要升级版本,故可以要求厂家或者代理商直接升级最新或者指定版本,升级后支持256个Tunnel。

    以下为常用操作命令:

    4.2.3交换机登陆:

    • 登陆使用telnet命令:

      • telnet xxx.xxx.xxx.xxx
      • 现在节点上使用的都需要输入用户名和密码进行验证:
      • 当看到提示Username:      输入用户名 回车
      • 然后会提示输入密码,      Password: 输入密码 回车
      • 如果用户名和密码匹配就会进入交换机
      • 注意:我们的交换机设置了不同权限,初始化登陆的权限是最低的,几乎不支持任何操作,此时需要键入命令;super
      • 提示输入密码后,键入正确密码即可得到超级管理员权限

    4.2.4交换机基本操作:

    • 查询命令:

      • display ip routing-table 查询交换机路由表
      • display current-configuration 查询交换机当前的配置
      • display interface Tunnel X 查询隧道信息,X为某条隧道的编号,比如查询tunnel20       X处就应该是20
      • display acl X 查询ACL配置,x为Acl编号,一般等于 3000 + 当前隧道编号
      • display snmp-agent community 查询当前交换机snmp的团体名有哪些, community处还可以是其他字段,当不知道是可以在snmp-agent的空格后,输入?来查询
      • display traffic X 查询当前流量相关的配置,X处可以behavior 或者 classifier, 比如查询流量行为:display traffic behavior user-defined tunnel
      • 交换机查询一般使用      display命令, 交换机大部分命令都可以缩写,比如dis 就可以
      • 配置交换机时首先得进入系统模式,键入system-view 即可
      • 路由配置:
      • 新建隧道:
      • 删除隧道:
      • 新建ACL:
      • 删除ACl:
      • 建立classifier:
      • 新建路由: ip       route-static D M H 其中D代表目的地址,M代表下一跳掩码,H代表下一跳地址
      • 删除路由:       undo ip route-static D M H 其中D代表目的地址,M代表下一跳掩码,H代表下一跳地址
      • interface tunnel X 其中X代表隧道编号
      • mtu N 设置隧道Mtu值,N为值的大小,一般为       1500 或 1480
      • ip address A 255.255.255.252 设置本端隧道的IP地址,A代表隧道IP地址
      • tunnel-protocol ipv4-ipv4 设置隧道模式
      • source S 设置隧道源地址,S为本端交换机loopBack地址
      • destination D 设置隧道目的地址,D为对端交换机loopBack地址
      • service-loopback-group 1 设置隧道工作组
      • undo interface tunnel N 删除比设置隧道容易, N为要删除的隧道编号
      • acl number N 设置Acl N, N为此条Acl的编号,一般是一个大于3000的数字
      • rule N permit ip source S 0       destination D 0 设置规则,N为规则编号, S为本端交换机loopBack地址,D为对端交换机loopBack地址
      • undo acl number N 同样N为要删除的ACL编号
      • traffic classifier C operator and 建立calssifier,其中C为要建立classifier名称
      • if-match acl N 给classifier匹配一条Acl N为Acl编号
      • interface       Ten-GigabitEthernet1/0/N 同上
      • qos apply policy tunnel       outbound
      • interface       Ten-GigabitEthernet1/0/N 进入流量引入端口配置,N为端口号,我们节点一般是52
      • undo qos apply policy tunnel       outbound
      • 在新建或者删除隧道时,一般需要先关闭,删除其流量统计行为
      • port link-mode bridge
      • flow-interval 5
      • stp disable
      • undo lldp enable
      • port service-loopback group 1
      • service-loopback group N type       tunnel 其中N为组编号
      • traffic behavior N 其中N为自定义的行为名称
      • accounting byte 设置流量统计模式,byte为字节,package为包
      • undo traffic classifier C 其中C为要删除的classifier名字
      • 删除classifier:
      • 流量统计行为设置:
      • loopBack组设置:
      • 流量统计端口设置:
      • 关闭Qos:
      • 打开Qos:
      • 一般交换机中删除或者取消某项操作,都用undo命令当然这里说的是华桑的交换机
      • 要统计隧道流量,需要在acl,tunnel,classifier,behavior 建立好之后,关闭qos 接着执行classifier      C behavior B 其中C为classifier的名字,B为behavior的名字,要统计几条就加入几条, 最后打开Qos
      • display interface tunnel brief 可以查询交换机隧道的联通状况,如果是up 则代表通,down则代表断
      • 注:交换机内的大部分信息都可以通过查询配置信息得到
      • 配置命令:
    时间: 2025-01-01 21:05:30

    GRE-Tunnel环境说明书的相关文章

    [转]在openvswitch上配置GRE tunnel

    Posted in Linux Application at November 13th, 2012 如果你是用 openvswitch 内置的 GRE tunnel,那么配置很简单,基本上就一条命令: ovs-vsctl add-port br0 gre0 -- set interface gre0 type=gre options:remote_ip=192.168.1.10 本文想谈的显然不是这个.因为 upstream 内核(指 Linus tree)中的 openvswitch 是不支

    [转]深入理解GRE tunnel

    Posted in Linux Kernel at November 8th, 2012 / 1 Comment ? 我以前写过一篇介绍 tunnel 的文章,只是做了大体的介绍.里面多数 tunnel 是很容易理解的,因为它们多是一对一的,换句话说,是直接从一端到另一端.比如 IPv6 over IPv4 的 tunnel,也就是 SIT,它的原理如下图所示: 显然,除了端点的 host A 和 host B之外,中间经过的任何设备都是看不到里面的 IPv6 的头,对于它们来说,经过 sit

    【Cisco】 GRE Tunnel隧道

    说明:A公司的PC1所在网段192.168.1.0/24要和B公司PC2所在网段172.16.2.0/24建立GRE tunnel通信 配置思路:1.R1与R2要能通信--R1和R2分别配置默认路由到ISP2.新建tunnel端口,设置IP,双方要在同一网段:配置source即公网出口IP和destination即对方公网出口ip3.此时双方tunnel已经建立起来了,需要建立路由,PC1网段到PC2网段,PC2网段到PC1网段,下一跳地址为对端ip:此时配置结束. 拓扑图如下: 配置信息: R

    gre tunnel

    http://searchenterprisewan.techtarget.com/tip/GRE-tunnel-vs-IPsec-tunnel-What-is-the-difference Encapsulating a packet for secure transportation on the network can be done using either GRE or IPsec protocols. This tip explains under what circumstance

    [转]深入理解 GRE tunnel

    我以前写过一篇介绍 tunnel 的文章,只是做了大体的介绍.里面多数 tunnel 是很容易理解的,因为它们多是一对一的,换句话说,是直接从一端到另一端.比如 IPv6 over IPv4 的 tunnel,也就是 SIT,它的原理如下图所示: 显然,除了端点的 host A 和 host B之外,中间经过的任何设备都是看不到里面的 IPv6 的头,对于它们来说,经过 sit 发出的包和其它的 IPv4 的包没有任何区别. GRE tunnel 却不一样了,它的原理从根本上和 sit,ipip

    Linux GRE tunnel的构建原理

    Generic Enapsulation Tunnel是一种网络隧道技术,之所以称为通用隧道技术,是它可以用来将Ethernet.IP.MPLS等多种报文封装在IP报文中予以转发,在网络中存在较为大规模的应用. Linux系统原生支持了GRE接口,其配置命令如下: ip tunnel add gret1 mode gre remote 45.42.104.183 local 189.245.246.51 ttl 128  # 配置一条以189.245.246.51为源地址,45.42.104.1

    linux cent os 6.4 建立GRE tunnel

    加载GRE模块 modprobe ip_gre 创建Tunnel 名为office ip tunnel add office  mode gre  remote 111.206.164.122  local 111.206.0.88 ttl 255 ip link set office up 为tunnel 增加IP地址 ip add add 10.100.100.1/30  dev office 创建一个路由表,表名为136 ip route add default via 103.246.1

    Centos7 GRE Tunnel

    一.关闭防火墙及selinux 二.CentOS7默认不加载gre内核模块,加载gre内核模块 # modprobe ip_gre   临时加载gre模块(重启后失效) # lsmod |grep gre 进行确认 三.两端添加gre1网卡 主机一: [[email protected] ~]# cat /etc/sysconfig/network-scripts/ifcfg-gre1 # DEVICE=gre1 TYPE=GRE ONBOOT=yes BOOTPROTO=static MY_O

    [转]Creating an IP Tunnel using GRE on Linux

    Creating an IP Tunnel using GRE on Linux Contents[hide] · 1 IP Tunelling · 2 Starting Configuration · 3 Tunnelling Objective o 3.1 Create Tunnels o 3.2 Additional Routes o 3.3 Delete Tunnels · 4 Network Diagram o 4.1 Debian Configuration · 5 Referenc