GRE隧道的功能和实现.ppt_第1页
GRE隧道的功能和实现.ppt_第2页
GRE隧道的功能和实现.ppt_第3页
GRE隧道的功能和实现.ppt_第4页
GRE隧道的功能和实现.ppt_第5页
已阅读5页,还剩12页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、GRE隧道的功能和实现,测试部 马爱卿 2007年4月26日,提纲,GRE隧道简介 GRE的处理流程 GRE over IPSec GRE隧道的配置 FAQ,GRE隧道简介,GRE(Generic Routing Encapsulation)是一种3层VPN技术,最初是由Cisco开发的,后被标准化为RFC 1701、1702和2784。两个具有IP可达性的场点间的GRE隧道可被称为VPN,因为场点间的私有数据被封装在GRE递送包头中。 GRE隧道可以用来连接企业的私有网点,但由于GRE本身缺乏足够强大的安全机制,所以很少被用来单独传输数据。 GRE通常和IPSec联合使用。IPSec是一种点

2、对点的隧道协议,无法支持对多播报文的封装,而GRE可以,所以我们通常用GRE over IPSec,即先用GRE封装多播报文,再用IPSec封装GRE报文的方式来进行多播数据的加密传输。,TOS中GRE的处理流程,TOS中GRE的处理流程,GRE的解封装和封装都由Linux协议栈来处理,然后由Linux协议栈来决定下一步如何处理。 解封装后,会重走HOOK点,当成普通的IP报文进行处理;进行GRE封装时,到达路由模块后发现出接口是GRE口,然后经过Link_out,Link_out不会对报文做任何处理,只有在随后准备发送时,发送函数进行发送时发现出接口是GRE口,才会调用gre_xmit函数,

3、交给Linux协议栈处理,进行GRE封装。在封装完毕后,会把报文送到Link_in点上,重新交由TOS进行路由发送。 IPSec的实现也是这样的,经过路由模块处理后发现出接口是ipsec口,发送函数随后也会调用VPN模块,把数据报交给VPN模块进行处理。IPSec和GRE的区别是,VPN在进行加密封装处理后会把报文送到Pre_routing,然后再次查找路由(此时是对端网关路由)进行发送;而GRE要把报文送到Link_in点,以满足对隧道内PF和FW的需求,IPSec目前没有这个需求。当然,GRE也会再次进行路由的查找。,GRE over IPSec,GRE over IPSec的处理流程 I

4、PSec over GRE的处理流程,GRE over IPSec的处理流程,在发送方,Pre_routing点不会先对此报文做处理,待原始IP(或其他报文如ARP)报文查找路由进行发送时,再由发送函数交由GRE协议处理函数处理,GRE封装完成后会重新返回Link_in处理,当查找路由时,匹配到IPSec口,然后又做一遍IPSec的处理,最后才从接口发送出去。 在接收端,因为IPSec封装在外层,报文会在Link_in上被解密,可以被正确识别为GRE报文,会送给Local_in进行GRE解封装处理(GRE报文的目的IP为本机地址),随后会当成普通的IP包重走HOOK点。,IPSec over

5、GRE的处理流程,TOS 3.3目前不支持IPSec over GRE的封装方式。 按照前面的思维,如果要实现IPSec over GRE封装,那么在路由查找的过程中,需要依次匹配IPSec口,然后匹配GRE口;也就是,必须先建起隧道,然后再把路由指向GRE口,而这是无法实现的。(原因见备注) 换一种思路,考虑是否可以让IPSec协商报文走GRE隧道,这样建立成功后仍然是IPSec over GRE。但目前TOS的实现有一个限制,IPSec的协商必须在IPSec口的路径上进行,而IPSec口是无法绑定在GRE口上的。所以TOS上无法实现IPSec over GRE的方式。 可以预见,如果IPS

6、ec over GRE可以实现的话,在接收端,因为收到的报文外面是GRE封装,所以流程和GRE over IPSec时正好相反,报文会首先被Local-in上送Linux协议栈解封装,然后被当成普通IP包重走HOOK点,然后发现是一个IPSec加密报文,就走正常的IPSec解密流程了。,GRE隧道的配置,CLI配置 WebUI配置,GRE的CLI配置,添加GRE隧道 Network Tunnle add name local remote key csum seq ttl local 通道本地端封装地址 remote 通道目的端封装地址 key 标示通道关键字 csum 是否开启校验和检查 o

7、n|off 是|否 seq 是否开启序列号检查 on|off 是|否 ttl 设置通道TTL,GRE的CLI配置,添加到对方子网的路由 # network route add dst dev gre-x 此处路由不做限制,可以配置为静态路由、默认路由或策略路由,不需要配置对端网关,只需要配置出接口为gre口。 需要注意的是,如果连接匹配了DPI策略,需要打开本地路由开关(network route local-policy on)。 对端GRE隧道配置 再对端设备上配置对应的GRE隧道和路由。 两端设备的GRE参数中,Key、TTL、Seq和Csum需一致,local和peer IP地址必须对

8、应。,GRE的WebUI配置,配置GRE隧道 选择 网络链路 网络链路,进入“GRE”页面,点击“添加配置”,设置GRE通道参数。,GRE的WebUI配置,配置到达对端子网的路由 无论是AS还是AA模式,均需配置VRID组,主备状态是针对于给定的VRID组而言的。 选择网络管理 路由,进入“静态路由”页签,点击“添加静态路由”按钮,添加到达对端网关的路由。,GRE的WebUI配置,进行对端设备的GRE隧道配置 重复以上步骤,配置对端设备对应的GRE隧道参数,以及指向本地子网的路由。,FAQ,GRE的local和remote ip不需要是隧道出口的物理接口IP,只需要是墙上存在的IP就可以了。

9、目前GRE接口格式必须是gre-开头。 如果需要ping或telnet到对端网关,必须把gre口添加到area中并开启pf service。 gre口上的IP不会生成一条接口路由,无法ping通对端gre口上的IP。 支持做GRE over IPSec,但IPSec必须配置为隧道模式,当前不支持传输模式。 当前不支持IPSec over GRE,因为不支持把IPSec口绑定在GRE口上。 因为GRE数据不会建立连接,所以TOS无法进行隧道的NAT穿越,但PPTP是支持的。,FAQ,GRE下,如果匹配了DPI策略后再做策略路由,则通信会失败,这是由当前DPI的机制决定的。(018版本解决,有一个开关network route loca

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论