一种报文转发方法及装置与流程

文档序号:12729679阅读:374来源:国知局
一种报文转发方法及装置与流程

本发明涉及通信技术领域,特别是涉及一种报文转发方法及装置。



背景技术:

为了保证信息的安全,组网中的终端间常常需要建立安全隧道(如:IPsec(Internet Protocol Security,网络协议安全性)隧道),如图1所示,路由器210和防火墙设备300间、路由器220和防火墙设备300间建立有IPsec隧道,路由器210或路由器220接收到客户端发送的报文后,对报文进行IPsec封装后,通过IPsec隧道发送给防火墙设备300,防火墙设备300对封装后的报文进行解封装后,将报文在公网转发。

目前,客户端随机获取IP地址,其获取到的IP(Internet Protocol,网络协议)地址可能是公网IP地址,也可能是私网IP地址,如图1中,若客户端110获取到公网IP地址,客户端120获取到私网IP地址,防火墙设备300接收到客户端110和/或客户端120发送的报文,无法区分出哪个IP地址是公网IP地址,哪个IP地址是私网IP地址,进而不能确定报文是否需要进行NAT。



技术实现要素:

本发明实施例的目的在于提供一种报文转发方法及装置,以使网络设备能够确定报文是否需要进行NAT。具体技术方案如下:

一方面,本发明实施例公开了一种报文转发方法,应用于接入设备,所述方法包括:

接收客户端发送的访问报文;

根据预先存储的网络协议IP地址和网络类型的对应关系,确定所述访问报文的源IP地址对应的网络类型;

若所述源IP地址对应的网络类型为私网地址,则对所述访问报文进行安全隧道封装,并在安全隧道封装头中添加第一标识;

通过安全隧道,将进行安全隧道封装后的所述访问报文发送给网络设备,以使所述网络设备根据所述第一标识对所述访问报文的源IP地址进行网络地址转换NAT,并转发NAT后的所述访问报文。

二方面,本发明实施例公开了一种报文转发方法,应用于网络设备,所述方法包括:

接收客户端通过接入设备发送的进行安全隧道封装后的访问报文,其中,所述网络设备与所述接入设备之间已建立安全隧道,所述进行安全隧道封装后的访问报文的安全隧道封装头中包括:第一标识,所述第一标识用于标识所述访问报文的源网络协议IP地址对应的网络类型为私网地址;

解封装所述进行安全隧道封装后的访问报文,获得所述访问报文;

根据所述第一标识,对所述访问报文的源IP地址进行网络地址转换NAT,并转发NAT后的所述访问报文。

三方面,本发明实施例公开了一种报文转发装置,应用于接入设备,所述装置包括:

第一接收单元,用于接收客户端发送的访问报文;

确定单元,用于根据预先存储的网络协议IP地址和网络类型的对应关系,确定所述访问报文的源IP地址对应的网络类型;

封装单元,用于若所述源IP地址对应的网络类型为私网地址,则对所述访问报文进行安全隧道封装,并在安全隧道封装头中添加第一标识;

第一发送单元,用于通过安全隧道,将进行安全隧道封装后的所述访问报文发送给网络设备,以使所述网络设备根据所述第一标识对所述访问报文的源IP地址进行网络地址转换NAT,并转发NAT后的所述访问报文。

四方面,本发明实施例公开了一种报文转发装置,应用于网络设备,所述装置包括:

接收单元,用于接收客户端通过接入设备发送的进行安全隧道封装后的访问报文,其中,所述网络设备与所述接入设备之间已建立安全隧道,所述进行安全隧道封装后的访问报文的安全隧道封装头中包括:第一标识,所述第一标识用于标识所述访问报文的源网络协议IP地址对应的网络类型为私网地址;

解封装单元,用于解封装所述进行安全隧道封装后的访问报文,获得所述访问报文;

转发单元,用于根据所述第一标识,对所述访问报文的源IP地址进行网络地址转换NAT,并转发NAT后的所述访问报文。

本发明实施例提供了一种报文转发方法及装置,接入设备中预先存储有IP地址和网络类型的对应关系,其在接收到客户端发送的访问报文后,可以根据上述预先存储的对应关系,确定该访问报文的源IP地址对应的网络类型,当确定的网络类型为私网地址时,在访问报文的安全隧道封装的安全隧道封装头中添加第一标识后,将进行安全隧道封装后的访问报文发送给网络设备,该第一标识用于标识访问报文的源IP地址对应的网络类型为私网地址;这样,网络设备就可以根据第一标识对该访问报文的源IP地址进行NAT,并转发NAT后的访问报文。可见,本发明实施例中,通过在安全隧道封装头中添加第一标识,使得网络设备能够确定出报文是否需要进行NAT。当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为一种组网结构示意图;

图2为本发明实施例提供的一种报文转发方法的一种流程示意图;

图3为本发明实施例提供的一种报文转发方法的另一种流程示意图;

图4为本发明实施例提供的一种报文转发方法的另一种流程示意图;

图5为本发明实施例提供的一种报文转发方法的另一种流程示意图;

图6为本发明实施例提供的另一种报文转发方法的一种流程示意图;

图7为本发明实施例提供的一种报文转发装置的结构示意图;

图8为本发明实施例提供的一种报文转发装置的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

下面通过具体实施例,对本发明进行详细说明。

参考图2,图2为本发明实施例提供的一种报文转发方法的一种流程示意图,应用于接入设备,该接入设备可以为路由器、交换机等设备。

具体地,该方法包括:

S201:接收客户端发送的访问报文;

S202:根据预先存储的IP地址和网络类型的对应关系,确定访问报文的源IP地址对应的网络类型;

这里,网络类型包括:私网地址和公网地址;预先存储的IP地址和网络类型的对应关系可以为用户预先设置在接入设备中的,也可以为客户端在通过接入设备从地址服务器中申请IP地址时存储的。具体地,参考图3,在图2的基础上,在接收客户端发送的访问报文之前,上述报文转发方法还可以包括:

S301:将客户端发送的地址请求报文发送给地址服务器;

S302:接收地址服务器发送的地址请求响应报文;

其中,地址请求响应报文中可以包括:地址服务器为客户端分配的IP地址和网络类型的对应关系。

S303:将地址服务器为客户端分配的IP地址发送给客户端,并存储地址服务器为客户端分配的IP地址和网络类型的对应关系。

这种情况下,客户端可以根据地址服务器为其分配的IP地址,发送访问报文,该访问报文的源IP地址为地址服务器为客户端分配的IP地址;接入设备在接收到客户端发送的访问报文后,根据预先存储的地址服务器为客户端分配的IP地址和网络类型的对应关系,确定访问报文的源IP地址对应的网络类型。

S203:若访问报文的源IP地址对应的网络类型为私网地址,则对访问报文进行安全隧道封装,并在安全隧道封装头中添加第一标识;

其中,第一标识用于标识访问报文的源IP地址对应的网络类型为私网地址。

S204:通过安全隧道,将进行安全隧道封装后的访问报文发送给网络设备。

这种情况下,网络设备就可以根据第一标识,确定访问报文的源IP地址为私网地址,该访问报文需要进行NAT,对访问报文的源IP地址进行NAT,并转发NAT后的访问报文。

需要说明的是,网络设备可以为防火墙设备、网关设备、路由器等设备,本发明实施例对此不进行限定。另外,安全隧道可以为模板方式的安全隧道,如IPsec隧道。

在本发明的一个实施例中,客户端的IP地址都是地址服务器随机分配的,客户端获得的IP地址可能是私网地址,也可能是公网地址,若客户端的IP地址为公网地址,则客户端发送的访问报文的源IP地址的网络类型为公网地址,这种情况下,参考图4,在图2的基础上,上述报文转发方法还可以包括:

S401:若访问报文的源IP地址对应的网络类型为公网地址,则对访问报文进行安全隧道封装,并在安全隧道封装头中添加第二标识;

其中,第二标识用于标识访问报文的源IP地址对应的网络类型为公网地址。

S402:通过安全隧道,将进行安全隧道封装后的访问报文发送给网络设备。

这种情况下,网络设备就可以根据第二标识,确定访问报文的源IP地址为公网地址,该访问报文不需要进行NAT,网络设备不对访问报文的源IP地址进行NAT,直接转发访问报文。

在本发明的另一个实施例中,当客户端的IP地址为公网地址时,参考图5,在图2的基础上,上述报文转发方法还可以包括:

S501:若访问报文的源IP地址对应的网络类型为公网地址,则对访问报文进行安全隧道封装;

S502:通过安全隧道,将进行安全隧道封装后的访问报文发送给网络设备。

这种情况下,安全隧道封装头未添加第一标识,表明访问报文的源IP地址的网络类型不是私网地址,进而确定访问报文的源IP地址为公网地址,该访问报文不需要进行NAT,网络设备不对访问报文的源IP地址进行NAT,直接转发访问报文。

下面结合图1所示的组网,说明本发明实施例提供的报文转发方法的流程,其中,X为第一标识,Y为第二标识;具体的报文转发方法的流程可以为:

1、客户端110将访问报文1发送给路由器210,该访问报文1的源IP地址为IP1;

2、路由器210根据预先存储的IP地址与网络类型的对应关系,确定IP1对应的网络类型;

3、当IP1对应的网络类型为私网地址时,路由器210对访问报文1进行IPsec封装,并将IPsec封装后的访问报文1发送给防火墙设备300,该IPsec封装头中包括标识X;

防火墙设备300解封装IPsec封装后的访问报文1,获得访问报文1,并且可以从IPsec封装头中获得标识X,根据标识X可以确定访问报文1的源IP地址的网络类型为私网地址,对访问报文1的源IP地址(IP1)进行NAT,将NAT后的访问报文1发送至公网;

4、当IP1对应的网络类型为公网地址时,路由器210对访问报文1进行IPsec封装,并将IPsec封装后的访问报文1发送给防火墙设备300,该IPsec封装头中包括标识Y,或该IPsec封装头中不包括标识Y也不包括标识X;

防火墙设备300解封装IPsec封装后的访问报文1,获得访问报文1,并且可以从IPsec封装头中获得标识Y,或标识Y和标识X都不能获得;根据标识Y,或标识Y和标识X都不能获得,可以确定访问报文1的源IP地址的网络类型为公网地址,将访问报文1发送至公网。

应用上述实施例,接入设备中预先存储有IP地址和网络类型的对应关系,其在接收到客户端发送的访问报文后,可以根据上述预先存储的对应关系,确定该访问报文的源IP地址对应的网络类型,当确定的网络类型为私网地址时,在访问报文的安全隧道封装的安全隧道封装头中添加第一标识后,将进行安全隧道封装后的访问报文发送给网络设备,该第一标识用于标识访问报文的源IP地址对应的网络类型为私网地址;这样,网络设备就可以根据第一标识对该访问报文的源IP地址进行NAT,并转发NAT后的访问报文。可见,本发明实施例中,通过在安全隧道封装头中添加第一标识,使得网络设备能够确定出报文是否需要进行NAT。

参考图6,图6为本发明实施例提供的另一种报文转发方法的一种流程示意图,应用于网络设备,该网络设备可以为防火墙设备、网关设备、路由器等设备。

具体的,该方法包括:

S601:接收客户端通过接入设备发送的进行安全隧道封装后的访问报文;

其中,网络设备与接入设备之间已建立安全隧道,该安全隧道可以为模板方式的安全隧道。上述进行安全隧道封装后的访问报文的安全隧道封装头中可以包括:第一标识,该第一标识用于标识访问报文的源IP地址对应的网络类型为私网地址。

S602:解封装进行安全隧道封装后的访问报文,获得访问报文;

S603:根据进行安全隧道封装后的访问报文的安全隧道封装头中包括的第一标识,对访问报文的源IP地址进行NAT,并转发NAT后的访问报文。

在本发明的一个实施例中,网络设备在对不同的访问报文的源IP地址进行NAT时,可能需要采用不同的NAT转换方式,这种情况下,可以在网络设备中预设NAT转换方式、安全域和转发接口的对应关系,通过该对应关系,确定接收访问报文的接口所属安全域对应的NAT转换方式和转发接口;在确定第一标识后,按照接收访问报文的接口所属安全域对应的NAT转换方式,对访问报文的源IP地址进行NAT,并通过接收访问报文的接口所属安全域对应的转发接口,转发NAT后的访问报文。

在本发明的一个实施例中,客户端的IP地址都是地址服务器随机分配的,客户端获得的IP地址可能是私网地址,也可能是公网地址,若客户端的IP地址为公网地址,则客户端发送的访问报文的源IP地址的网络类型为公网地址,这种情况下,若网络设备接收到的客户端通过接入设备发送的进行安全隧道封装后的访问报文中未添加第一标识,或进行安全隧道封装后的访问报文中添加有第二标识,则在解封装进行安全隧道封装后的访问报文,获得访问报文后,不对访问报文的源IP地址进行NAT,转发访问报文。

应用上述实施例,接入设备中预先存储有IP地址和网络类型的对应关系,其在接收到客户端发送的访问报文后,可以根据上述预先存储的对应关系,确定该访问报文的源IP地址对应的网络类型,当确定的网络类型为私网地址时,在访问报文的安全隧道封装的安全隧道封装头中添加第一标识后,将进行安全隧道封装后的访问报文发送给网络设备,该第一标识用于标识访问报文的源IP地址对应的网络类型为私网地址;这样,网络设备就可以根据第一标识对该访问报文的源IP地址进行NAT,并转发NAT后的访问报文。可见,本发明实施例中,通过在安全隧道封装头中添加第一标识,使得网络设备能够确定出报文是否需要进行NAT。

参考图7,图7为本发明实施例提供的一种报文转发装置的结构示意图,应用于接入设备,该装置包括:

第一接收单元701,用于接收客户端发送的访问报文;

确定单元702,用于根据预先存储的网络协议IP地址和网络类型的对应关系,确定所述访问报文的源IP地址对应的网络类型;

封装单元703,用于若所述源IP地址对应的网络类型为私网地址,则对所述访问报文进行安全隧道封装,并在安全隧道封装头中添加第一标识;

第一发送单元704,用于通过安全隧道,将进行安全隧道封装后的所述访问报文发送给网络设备,以使所述网络设备根据所述第一标识对所述访问报文的源IP地址进行网络地址转换NAT,并转发NAT后的所述访问报文。

在本发明的一个实施例中,所述封装单元703,还可以用于若所述源IP地址对应的网络类型为公网地址,则对所述访问报文进行安全隧道封装,并在安全隧道封装头中添加第二标识;

所述第一发送单元704,还可以用于通过安全隧道,将进行安全隧道封装后的所述访问报文发送给所述网络设备,以使所述网络设备根据所述第二标识不对所述访问报文的源IP地址进行NAT,转发所述访问报文。

在本发明的一个实施例中,所述封装单元703,还可以用于若所述源IP地址对应的网络类型为公网地址,则对所述访问报文进行安全隧道封装;

所述第一发送单元704,还可以用于通过安全隧道,将进行安全隧道封装后的所述访问报文发送给所述网络设备,以使所述网络设备在确定安全隧道封装头未添加所述第一标识后,不对所述访问报文的源IP地址进行NAT,转发所述访问报文。

在本发明的一个实施例中,所述装置还可以包括:

第二发送单元(图7中未示出),用于在获取客户端发送的访问报文之前,将所述客户端发送的地址请求报文发送给地址服务器;

第二接收单元(图7中未示出),用于接收所述地址服务器发送的地址请求响应报文,其中,所述地址请求响应报文中包括:所述地址服务器为所述客户端分配的IP地址和网络类型的对应关系;

存储单元(图7中未示出),用于将所述地址服务器为所述客户端分配的IP地址发送给所述客户端,并存储所述地址服务器为所述客户端分配的IP地址和网络类型的对应关系。

应用上述实施例,接入设备中预先存储有IP地址和网络类型的对应关系,其在接收到客户端发送的访问报文后,可以根据上述预先存储的对应关系,确定该访问报文的源IP地址对应的网络类型,当确定的网络类型为私网地址时,在访问报文的安全隧道封装的安全隧道封装头中添加第一标识后,将进行安全隧道封装后的访问报文发送给网络设备,该第一标识用于标识访问报文的源IP地址对应的网络类型为私网地址;这样,网络设备就可以根据第一标识对该访问报文的源IP地址进行NAT,并转发NAT后的访问报文。可见,本发明实施例中,通过在安全隧道封装头中添加第一标识,使得网络设备能够确定出报文是否需要进行NAT。

参考图8,图8为本发明实施例提供的另一种报文转发装置的结构示意图,应用于网络设备,该装置包括:

接收单元801,用于接收客户端通过接入设备发送的进行安全隧道封装后的访问报文,其中,所述网络设备与所述接入设备之间已建立安全隧道,所述进行安全隧道封装后的访问报文的安全隧道封装头中包括:第一标识,所述第一标识用于标识所述访问报文的源网络协议IP地址对应的网络类型为私网地址;

解封装单元802,用于解封装所述进行安全隧道封装后的访问报文,获得所述访问报文;

转发单元803,用于根据所述第一标识,对所述访问报文的源IP地址进行网络地址转换NAT,并转发NAT后的所述访问报文。

在本发明的一个实施例中,所述接收单元801,还可以用于接收所述客户端通过所述接入设备发送的进行安全隧道封装后的访问报文,其中,所述进行安全隧道封装后的访问报文的安全隧道封装头中包括:第二标识,所述第二标识用于标识所述访问报文的源IP地址对应的网络类型为公网地址;

所述解封装单元802,还可以用于解封装所述进行安全隧道封装后的访问报文,获得所述访问报文;

所述转发单元803,还可以用于根据所述第二标识,不对所述访问报文的源IP地址进行NAT,转发所述访问报文。

在本发明的一个实施例中,所述接收单元801,还可以用于接收所述客户端通过所述接入设备发送的进行安全隧道封装后的访问报文;

所述解封装单元802,还可以用于解封装所述进行安全隧道封装后的访问报文,获得所述访问报文;

所述转发单元803,还可以用于在确定安全隧道封装头未添加所述第一标识后,不对所述访问报文的源IP地址进行NAT,转发所述访问报文。

应用上述实施例,接入设备中预先存储有IP地址和网络类型的对应关系,其在接收到客户端发送的访问报文后,可以根据上述预先存储的对应关系,确定该访问报文的源IP地址对应的网络类型,当确定的网络类型为私网地址时,在访问报文的安全隧道封装的安全隧道封装头中添加第一标识后,将进行安全隧道封装后的访问报文发送给网络设备,该第一标识用于标识访问报文的源IP地址对应的网络类型为私网地址;这样,网络设备就可以根据第一标识对该访问报文的源IP地址进行NAT,并转发NAT后的访问报文。可见,本发明实施例中,通过在安全隧道封装头中添加第一标识,使得网络设备能够确定出报文是否需要进行NAT。

对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1