GRE隧道是通过隧道两端的Tunnel接口建立的,所以需要在隧道两端的设备上分别配置Tunnel接口。对于GRE的Tunnel接口,需要指定其协议类型为GRE、源地址或源接口、目的地址和Tunnel接口IP地址。

  

  如上图所示,以Route_1为例,详细解释Tunnel接口下所需配置。

  1)Tunnel的源地址或源接口

  报文传输协议中的源地址或源接口。隧道的源地址就是实际发送报文的接口IP地址,即Router_1的GE1/0/0的IP地址;隧道的源接口就是实际发送报文的接口,即Router_1的GE1/0/0。

  2)Tunnel的目的端地址

  报文传输协议中的目的地址。隧道的目的地址就是实际接收报文的接口IP地址,即Router_2的GE1/0/0的IP地址。

  3)Tunnel接口IP地址

  为了在Tunnel接口上启用动态路由协议,或使用静态路由协议发布Tunnel接口,需要为Tunnel接口分配IP地址。

  Tunnel接口的IP地址可以不是公网地址,甚至可以借用其他接口的IP地址以节约IP地址。但是当Tunnel接口借用IP地址时,由于Tunnel接口本身没有IP地址,无法在此接口上启用动态路由协议,必须配置静态路由或策略路由才能实现设备间的连通性。

具体配置如下:

  1、创建Tunnel接口,并进入Tunnel接口视图

[Huawei]interface Tunnel ?
<-> Tunnel interface slot number
[Huawei-Tunnel0//]

  2、配置Tunnel接口的隧道协议为GRE

[Huawei-Tunnel0//]tunnel-protocol ?
gre Generic Routing Encapsulation
ipsec IPSEC Encapsulation
ipv4-ipv6 IP over IPv6 encapsulation
ipv6-ipv4 IPv6 over IP encapsulation
mpls MPLS Encapsulation
none Null Encapsulation
[Huawei-Tunnel0//]tunnel-protocol gre

  3、配置Tunnel的源地址或源接口

  配置Tunnel的源接口时,有如下注意事项:

  Tunnel的源接口不能指定为自身GRE隧道的Tunnel接口,但可以提定为其他隧道的Tunnel接口。Tunnel的源地址可以配置为VRRP备份组的虚地址。Bridge-if接口不可配置为Tunnel接口。

[Huawei-Tunnel0//]source ?
GigabitEthernet GigabitEthernet interface
NULL NULL interface
Tunnel Tunnel interface
X.X.X.X IP address
[Huawei-Tunnel0//]source GigabitEthernet //

  4、配置Tunnel的目的地址

[Huawei-Tunnel0//]destination ?
X.X.X.X IP address
vpn-instance VPN Routing/Forwarding parameters on the interface [Huawei-Tunnel0//]destination 10.1.1.2

  5、提定GRE隧道的路由出接口

  GRE隧道封装后的报文将查找路由转发表进行转发,如果GRE隧道的目的地址存在等价路由且存在多条目的地址相同的GRE隧道,则这些GRE隧道封装的报文将以负载分担进行转发。此时,某些GRE隧道封装后报文的实际出接口可能是另一个隧道的源IP接口。

  如果该链路上下一跳配置了URPF(Unicast Reverse Path Forwarding,单手反向路径转发)检测,则以报文的源IP做为目的IP,在转发表中查找源IP对应的嫌口是否与入接口匹配,因此会发现报文源IP对应的接口与报文的入接口不一致,则认为报文非法并丢弃。

  为了解决这个问题,可以配置tunnel route-via命令指定GRE隧道路由出接口,使报文严格或优先从隧道的源IP地址所在的出接口转发。

[Huawei-Tunnel0//] tunnel route-via GigabitEthernet // mandatory

[Huawei-Tunnel0//] tunnel route-via GigabitEthernet // preferred

  mandatory:严格按照指定的出接口转发流量,如果GRE隧道目的地址的路由出接口不包含指定的出接口时,隧道接口状态为Down,不进行流量转发。

  preferred:严格按照指定的出接口转发流量,如果GRE隧道目的地址的路由出接口不包含指定的出接口时,则可以选择其他接口转发,隧道接口状态为Up。

  6、配置Tunnel接口的MTU

  如果改变Tunnel接口最大传输单元MTU,需要先对接口执行shutdown命令,再执行undo shutdown命令将接口重启,以保证设置的MTU生效。

[Huawei-Tunnel0//]mtu ?
<-> MTU value

  7、配置接口的描述信息

[Huawei-Tunnel0//]description ?
TEXT<"..."> Interface description (no more than characters)

  8、配置Tunnel接口地址

[Huawei-Tunnel0//]ip address ?
IP_ADDR<X.X.X.X> IP address
unnumbered Share an address with another interface
[Huawei-Tunnel0//]ip address 10.1.1.1

  9、配置Tunnel接口借用IP地址

[Huawei-Tunnel0//]ip address unnumbered ?
interface Specify the interface whose IP address was unnumbered [Huawei-Tunnel0//]ip address unnumbered interface ?
GigabitEthernet GigabitEthernet interface
Tunnel Tunnel interface

  10、配置Tunnel接口的路由

  在保证本端设备和远端设备在骨干网上路由互通的基础上,本端设备和远端设备上必须存在经过Tunnel接口转发的路由,这样,需要进行GRE封装的报文才能正确转发。经过Tunnel接口转发的路由可以是静态路由,也可以是动态路由。

  1)配置静态路由

[Huawei]ip route-static 10.1.1.0 ?
INTEGER<-> Length of IP address mask
IP_ADDR<X.X.X.X> IP address mask [Huawei]ip route-static 10.1.1.0 ?
IP_ADDR<X.X.X.X> Gateway address
GigabitEthernet GigabitEthernet interface
NULL NULL interface
Tunnel Tunnel interface
vpn-instance Destination VPN-Instance for Gateway address [Huawei]ip route-static 10.1.1.0 Tunnel ?
<-> Slot number [Huawei]ip route-static 10.1.1.0 Tunnel // ?
IP_ADDR<X.X.X.X> Gateway address
description Add or delete description of unicast static route
ldp-sync LDP-Static route synchronization
permanent Specifies route permanent
preference Specifies route preference
tag Specifies route tag
track Specify track object
<cr> Please press ENTER to execute command

  2)配置动态路由(略)

  11、配置Link-bridge功能

  对于FR、HDLC或PPP协议的报文,用户希望通过GRE使其能够在另一个网络层协议(如IPv4)中透传。此时,需要配置Link-bridge功能,使得Serial接口和Tunnel接口形成绑定关系,从而接口收到的报文可以直接从该接口绑定的对应接口发送出去,最终实现GRE隧道承载FR、HDLC和PPP协议的报文。

  配置时,需注意:

  配置后,入接口协议状态显示为down,而且入接口上的网络层配置不生效,仅做桥接功能。配置后,绑定的接口不支持QoS功能。入接口只支持Serial接口,出接口只支持Tunnel接口。

[Huawei] link-bridge  interface serial // out-interface tunnel //

  12、配置GRE的安全机制

  为了增强GRE隧道的安全性,可以对GRE隧道两端进行端到端校验或者设置GRE隧道的识别关键字,通过这种安全机制防止错误识别、接收其它地方来的报文。

  1)使能GRE隧道的校验和功能

[Huawei-Tunnel0//]gre checksum

  2)配置GRE隧道的识别关键字

  如果在隧道两端的Tunnel接口配置识别关键字,则必须指定相同的识别关键字;或隧道两端都不配置此命令。如果使用plain选项,识别关键字将以明文形式保存在配置文件中,存在安全隐患。建议使用cipher选项,将识别关键字加密保存。

[Huawei-Tunnel0//]gre key cipher 

  13、使能GRE的Keepalive检测功能

  使用Keepalive功能可以周期地发送Keepalive探测报文给对端,及时检测隧道连通性。若对端可达,则本端会收到对端的回应报文;否则,收不到对端的回应报文,关闭隧道连接。Keepalive功能是单向的,只要在隧道一端配置Keepalive,该端就具备Keepalive功能,而不要求隧道对端也具备该功能。为了使隧道两端都能检测对端是否可达,建议在隧道两端都使能Keepalive功能。

[Huawei-Tunnel0//]keepalive ?
period Set the keepalive period parameter
<cr> Please press ENTER to execute command [Huawei-Tunnel0//]keepalive period ?
INTEGER<-> Keepalive period (default seconds) [Huawei-Tunnel0//]keepalive period ?
retry-times Set the keepalive retry times
<cr> Please press ENTER to execute command [Huawei-Tunnel0//]keepalive period retry-times ?
INTEGER<-> Keepalive retry-times (default times)

  14、查看Tunnel通道的接口信息

<Huawei> display interface tunnel //
Tunnel0// current state : UP
Line protocol current state : UP
Description:HUAWEI, AR Series, Tunnel0// Interface
Route Port,The Maximum Transmit Unit is
Internet protocol processing : disabled
Encapsulation is TUNNEL, loopback not set
Tunnel source 10.10.10.1 (GigabitEthernet0//), destination 10.1.1.1
Tunnel protocol/transport GRE/IP, key disabled
keepalive disabled
Checksumming of packets disabled
Current system time: -- ::
seconds input rate bits/sec, packets/sec
seconds output rate bits/sec, packets/sec
seconds input rate bits/sec, packets/sec
seconds output rate bits/sec, packets/sec
packets input, bytes
input error
packets output, bytes
output error
Input bandwidth utilization : %
Output bandwidth utilization : %

  15、查看GRE隧道接口的Keepalive报文状况

[Huawei-Tunnel0//] display keepalive packets count
Send keepalive packets to peers, Receive keepalive response packets from peers
Receive keepalive packets from peers, Send keepalive response packets to peers.

GRE配置教程——华为设备的更多相关文章

  1. Mac 配置教程-日常篇

    今年终于在推出 2018 款 MBP 时,看到升级了 CPU,我就果断下手「拔草」.本文记录使用 Mac 的一些配置,会长期更新. 为了控制文章的篇幅,我将 Mac 使用配置分成了两篇: Mac 配置 ...

  2. jdk eclipse SDK下载安装及配置教程

    原文地址https://blog.csdn.net/dr_neo/article/details/49870587 最新鲜最详细的Android SDK下载安装及配置教程 最近Neo突发神经,想要将学 ...

  3. [记录]HAproxy负载均衡配置教程

    HAproxy负载均衡配置教程 一.简介 haproxy是一个开源的高性能负载均衡软件:支持双机热备.虚拟主机和图形化的管理界面,自带强大的对RS健康检查功能:支持TCP(四层).HTTP(七层)应用 ...

  4. Termux 高级终端安装使用配置教程

    Termux 高级终端安装使用配置教程,这篇文章拖了有小半年.因为网上相关的文章相对来说还是比较少的,恰好今天又刷了机,所以就特意来总结一下,希望本文可以帮助到其他的小伙伴.发挥Android平台更大 ...

  5. openvpn配置教程

    openvpn配置教程 本文是为解决本地服器能从外网访问web页,从新改写(临摹) 烂泥:ubuntu 14.04搭建OpenVPN服务器这篇文章 腾讯云为服务器,本地服务器为客户端 一.服务器安装o ...

  6. VMware Workstation虚拟机中的Linux通过NAT模式共享上网配置教程

    VMware Workstation虚拟机中的Linux通过NAT模式共享上网配置教程 在VMware Workstation虚拟机下面,Linux虚机要上网,一般是桥接模式,但我自己的电脑上网的环境 ...

  7. 百度在线编辑器UEditor(v1.3.6) .net环境下详细配置教程之更改图片和附件上传路径

    本文是接上一篇博客,如果有疑问请先阅读上一篇:百度在线编辑器UEditor(v1.3.6) .net环境下详细配置教程 默认UEditor上传图片的路径是,编辑器包目录里面的net目录下 下面就演示如 ...

  8. 百度在线编辑器UEditor(v1.3.6) .net环境下详细配置教程

    UEditor是百度开发团队奉献的一款很不错的在线编辑器.在百度自己很多产品上都有应用,本文主要是该编辑器的配置教程. 1.下载UEditor,当前最新版本是1.3.6.这里下载的.net版本,选择U ...

  9. OpenGL 4.3配置教程

    OpenGL 4.3配置教程 下载开发包 需要下载的开发包主要包含如下几个组件:freeglut+glew+ OpenGL.Development.Cookbook+源码+GLM+SOIL. Open ...

随机推荐

  1. UITableView section 圆角 阴影

      在UITableView实现图片上面的效果,百度一下看了别人的实现方案有下面2种: 1.UITableView section里面嵌套UITableView然后在上面实现圆角和阴影,  弊端代码超 ...

  2. JAVAEE期末项目------文章发布系统

    项目文档和代码的GitHub地址:https://github.com/xiangbaobaojojo/- 1.项目介绍 (计科四班  蔡春燕 20150141401)和我 陈香宇(计科四班  201 ...

  3. 今天想写一下关于SpringMVC的视图解释器

    昨天我写了一下SpringMVC最爱金丹的项目的配置流程,这样搭建完项目之后呢我发现我每个请求都得加个.do什么的后缀,这让我开发得很不爽,于是呢今天就想配置一下这个试图解释器,这样做的目的有两个:第 ...

  4. 4--Postman--Request&Response

    //var josndata=JSON.parse(responseBody);//获取body中返回的所有参数//tests["code"]=josndata.code===20 ...

  5. 微信小程序页面跳转,带参数跳转

    1.  wx.navigateTo  (保留当前页面,跳转到应用内的某个页面,使用wx.navigateBack可以返回到原页面.) 路径:只能跳转非tabbar路径 参数:  'path?key=v ...

  6. WEB学习笔记14-HTML5新特性的使用

    (1)定义文档类型声明 <!DOCTYPE html> (2)定义页面编码 <!—HTML 4.01中定义的设置页面编码的方式--> <meta http-equiv=& ...

  7. 【linux】State : Uninterruptible, pid: 3936

    运行centos7中yum命令时提示: Existing lock /var/run/yum.pid: another copy is running as pid 3936.Another app ...

  8. 小程序视频播放组件video

    最近在做一个视频播放的功能,要求如下: 1.实现视频的全屏播放: 2.实现视频相关信息的展示: 3.实现视频滑动上下切换效果: 肯定选择用原生组件video了,真是不用不知道,一用都是坑: 首先,组件 ...

  9. Mybatis的分表实战

    前言: 以前写代码, 关于mysql的分库分表已被中间件服务所支持, 业务代码涉及的sql已规避了这块. 它对扩展友好, 你也不知道到底他分为多少库, 多少表, 一切都是透明的. 不过对于小的团队/工 ...

  10. 2018.11.25 AMC-ICPC 亚洲区域赛(焦作站)吊银

    11月23日 大清早,跟着wyb的脚步,早起跑过去听方伟的编译原理,然鹅一点都没听进去,在焦作胡辣汤群里疯狂灌水... 听说焦作那边冷得不行,前一天看天气预报说那边已经是2℃了,都快零下了,然鹅学校里 ...