1 / 5
文档名称:

GSM_R系统在山区隧道的覆盖特性和应用.pdf

格式:pdf   页数:5
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

GSM_R系统在山区隧道的覆盖特性和应用.pdf

上传人:经管专家 2012/9/11 文件大小:0 KB

下载得到文件列表

GSM_R系统在山区隧道的覆盖特性和应用.pdf

文档介绍

文档介绍: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是一种点对点的隧道协议,无法支持对多播报文的封装,而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函数,交给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的处理流程
IPSec 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 GRE的处理流程
TOS over GRE的封装方式。
按照前面的思维,如果要实现IPSec over GRE封装,那么在路由查找的过程中,需要依次匹配IPSec口,然后匹配GRE口;也就是,必须先建起隧道,然后再把路由指向GRE