在学习GRE隧道之前,首先要知道什么是GRE隧道,其作用是什么。
通用路由分类( GRE )是一种用于将使用一种路由协议的数据包封装到另一种协议的数据包中的协议。
“封装”就是把一个数据包封装到另一个数据包中,就像把一个箱子放在另一个箱子里一样。
GRE的目的是通过在网络上直接建立点对点连接的方法来简化各个网络之间的连接。
适用于各种网络层协议。
要知道它的工作原理,请想象一下汽车和渡轮的区别。
汽车在陆地上行驶,而渡船在水上行驶。
通常,汽车不能在水上行驶,但可以装载到渡船上。
在这个类比中,地形类型类似于支持特定路由协议的网络,车辆类似于数据包。
GRE是将某一种类的数据包加载到另一种类的数据包中的方式,使最初的数据包能够穿越通常无法通过的网络。 一种运输工具(汽车)被装载到另一种运输工具(渡船)上,以便能够穿越本来不能行驶的地形。
例如,假设一家公司需要在两个不同办公室的局域网( LAN )之间建立连接。
两个局域网都使用最新版本的互联网协议IPv6。
但是,为了从一个办公室网络到达另一个办公室网络,流量必须通过第三方管理的网络。 此网络已过时,仅支持旧的IPv4协议。
GRE允许该公司将IPv6数据包封装到IPv4数据包中,并通过该网络转发流量。
回到其类比,IPv6分组是汽车,IPv4分组是渡轮,第三方网络是水。
使用GRE还可以克服IGP协议的一些限制。
例如,RIP路由协议是距离矢量路由协议,最大跳数为15。
如果网络直径超过15,设备将无法通信。
此时,可以使用GRE技术在两个网络节点之间建立隧道,隐藏它们之间的跳数,扩展网络的工作范围。
体验一下GRE隧道吧。
图1 GRE拓扑对AR1进行以下配置: #创建Tunnel接口interface Tunnel0/0/1#地址IP address 20.1.12.1255.255.255.0 # Tunnel接口的隧道协议tunnel 使用Tunnel接口的目标IP地址destination 10.1.12.2#配置到tunnel IP route-static 192.168.2.024 tunner的静态路由
我们将pc2 ping到PC1。
我们抓住AR1和AR2之间传递的GRE信息。
frame3: 98位字节( 784位)、98位捕获( 784位) on interface 0以太网ii、 src:Huaweite_53:13:29 ) 00 dst:Huawei te _ D3:05:4f ( 00:E0:fc:D3:05:4f ) internet protococol version 4,4 dst:10.1.12.1通用计算机辅助功能( IP ) flagsandversion:0x 0000协议类型: IP )0x0800 ) internet协议vvocol 在sageprotocol中,可以看到外层的IP源地址分别为10.1.12.2、10.1.12.1。
内层的IP地址现在为192.168.2.1、192.168.1.1。
实现了AR1和AR2之间的透明传输。
我们可以清楚地看到从PC1传递给PC2的数据,这带来了安全隐患。
我们可以加密传入的数据。
因为GRE本身不支持加密,所以通过GRE隧道传输的通信不会被加密。
我们将IPSec技术与GRE相结合,首先建立GRE隧道对消息进行GRE封装,然后建立IPSec隧道对消息进行加密,可以保证消息传输的完整性和仅隐私。
下一期将介绍IPSec如何执行消息加密。