内网用户之间传递各种报文的方法转让专利

申请号 : CN200510105480.9

文献号 : CN1863152B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 肖守和康凯

申请人 : 华为技术有限公司

摘要 :

本发明提供了一种内网用户之间传递各种报文的方法,该方法主要包括:NAT Server(网络地址转换服务器)代理接收源内网用户发送的报文,所述NAT Server代理将所述报文的IP头部的源IP地址和目的IP地址都进行替换;所述NAT Server代理将所述替换后的报文转发给该报文的目的内网用户,并将该目的内网用户返回的报文的IP头部的源IP地址和目的IP地址进行替换后,转发给所述源内网用户。利用本发明所述方法,可以在同一地址域或不同地址域下的内网用户之间进行各种有连接服务和非连接报文的传递,实现了内网用户之间的透明转发,保护了内网服务器的安全。

权利要求 :

1.一种内网用户之间传递各种报文的方法,其特征在于,包括:

A、NAT Server代理将收到的来自源内网用户的报文IP头部的源IP地址和该报文的目的内网用户的IP地址进行保存,所述NAT Server代理将所述源IP地址替换为NAT Server代理的IP地址,将所述报文的目的IP地址替换为所述目的内网用户的IP地址;

B、所述NAT Server代理将所述替换后的报文转发给所述目的内网用户,收到该目的内网用户返回的回应报文后,根据所述保存的地址信息将所述回应报文的源IP地址替换为NAT Server代理的IP地址,将所述回应报文的目的IP地址替换为所述保存的源IP地址,将所述替换后的回应报文转发给所述源内网用户。

2.根据权利要求1所述内网用户之间传递各种报文的方法,其特征在于,所述的报文包括有连接服务和非连接报文。

3.根据权利要求2所述内网用户之间传递各种报文的方法,其特征在于,所述的有连接服务包括传输控制协议TCP服务或文件传输协议FTP服务。

4.根据权利要求1、2或3所述内网用户之间传递各种报文的方法,其特征在于,所述的步骤A具体包括:NAT Server代理将所述源IP地址和目的内网用户的IP地址保存在会话表session中。

5.根据权利要求4所述内网用户之间传递各种报文的方法,其特征在于,所述的步骤A具体包括:根据源内网用户向NAT Server代理发送的报文查路由表,查到相应的标记,将该标记保存在报文内,该标记代表该报文是由内网用户发起的访问NAT Server的报文;

NAT Server代理根据所述标记,将收到的报文的源IP地址和该报文的目的内网用户的IP地址保存在session中。

6.根据权利要求1所述内网用户之间传递各种报文的方法,其特征在于,所述方法还包括:在所述NAT Server代理中设置各种限流、限速方式以及防攻击方式,来限制内网用户的数据流量,保护内网服务器。

说明书 :

内网用户之间传递各种报文的方法

技术领域

[0001] 本发明涉及网络通讯领域,尤其涉及一种内网用户之间传递各种报文的方法。

背景技术

[0002] NAT(Network Address Translation,网络地址转换)是一种在不同网络地址域的IP地址之间进行相互映射的方法。在一般情况下,NAT位于私网和公网的边界上,用于实现私网和公网之间的IP地址的转换。
[0003] 一个地址域中的所有主机地址在本地址域中是唯一的,当某一主机需要向其它地址域的主机发送报文时,首先将报文发送给NAT,NAT对报文IP首部中的地址和相关域进行相应的修改。这种修改对于收发报文的主机来说是不可见的,所以这种通过NAT的不同地址域之间报文的转发被称之为透明转发。
[0004] NAT开始是为了解决IP地址短缺的问题,后来人们对安全的要求越来越高,利用NAT把内网和外网进行隔离,因此,NAT在一定程度上也取到的保护内网的作用。在某些情况下,出于安全考虑,要求在内网的用户之间的也通过NAT实现透明转发。例如,内网的ftp服务器通常要求对内网和外网的访问者都是透明的。
[0005] 例如,在图1所示的组网中,内网ftp服务器的地址是10.1.1.1,两个内网用户分别是10.1.1.2,10.1.1.3,公网地址202.1.1.1是NAT Server(NAT服务器)的地址,内网ftp服务器对内网和外网用户提供ftp服务,但是内网ftp服务器地址10.1.1.1对内网和外网都要求是透明的,即内网和外网的用户要访问该内网ftp服务器,都只能先访问NAT Server的地址202.1.1.1,通过NAT转换来实现。
[0006] 又比如,在图2所示的组网中,内网ftp服务器地址10.2.1.2对于内网用户1、内网用户2和内网用户3同样要求是透明的,其中,内网用户2和内网用户3在同一个地址域中,内网用户2和内网用户1不在同一个地址域中。该三个用户要访问该内网ftp服务器,都只能先访问NAT Server的地址202.1.1.1,通过NAT转换来实现。
[0007] 现有技术中在在同一地址域下的用户之间传递各种报文的方法为:对于内网到内网的NAT转换,即内网访问NAT Server地址,执行和外网到内网的NAT转换一样的处理流程。
[0008] 该方法的缺点为:该方法无法实现TCP(传输控制协议)或者FTP服务等有连接的服务。
[0009] 例如,在图1所示的组网中,如果内网用户1(IP地址为10.1.1.2)要使用ftp服务,先要访问NAT Server地址202.1.1.1,于是,根据上述方法,该用户先 发 起 ftp连 接10.1.1.2:4760 →202.1.1.1:21,经 过NAT Server 的 NAT转 换后为:10.1.1.2:4760→10.1.1.1:21,发送给ftp服务器。ftp服务器的应答是:10.1.1.1:21→10.1.1.2:4760,该报文的目的地址为内网用户1的IP地址,这样的报文是不做NAT转换的,因而无法建立ftp连接,无法实现ftp服务。所以现有的NAT转换技术方案对TCP或者FTP服务连接无法支持。

发明内容

[0010] 本发明的目的是提供一种内网用户之间传递各种报文的方法,从而可以在同一地址域或不同地址域下的内网用户之间进行各种有连接服务和非连接报文的传递。
[0011] 本发明的目的是通过以下技术方案实现的:
[0012] 一种内网用户之间传递各种报文的方法,包括:
[0013] A、NAT Server代理将收到的来自源内网用户的报文IP头部的源IP地址和该报文的目的内网用户的IP地址进行保存,所述NAT Server代理将所述源IP地址替换为NAT Server代理的IP地址,将所述报文的目的IP地址替换为所述目的内网用户的IP地址;
[0014] B、所述NAT Server代理将所述替换后的报文转发给所述目的内网用户,收到该目的内网用户返回的回应报文后,根据所述保存的地址信息将所述回应报文的源IP地址替换为NAT Server代理的IP地址,将所述回应报文的目的IP地址替换为所述保存的源IP地址,将所述替换后的回应报文转发给所述源内网用户。
[0015] 所述的报文包括有连接服务和非连接报文。
[0016] 所述的有连接服务包括传输控制协议TCP服务或文件传输协议FTP服务。
[0017] 所述的步骤A具体包括:
[0018] NAT Server代理将所述源IP地址和目的内网用户的IP地址保存在会话表session中。
[0019] 所述的步骤A具体包括:
[0020] 根据源内网用户向NAT Server代理发送的报文查路由表,查到相应的标记,将该标记保存在报文内,该标记代表该报文是由内网用户发起的访问NAT Server的报文;
[0021] NAT Server代理根据所述标记,将收到的报文的源IP地址和该报文的目的内网用户的IP地址保存在session中。
[0022] 所述方法还包括:
[0023] 在所述NAT Server代理中设置各种限流、限速方式以及防攻击方式,来限制内网用户的数据流量,保护内网服务器。
[0024] 由上述本发明提供的技术方案可以看出,本发明通过对现有的NAT转换进行增强,从而可以在同一地址域或不同地址域下的内网用户之间进行各种有连接服务和非连接报文的传递,实现了内网用户之间的透明转发,保护了内网的安全。本发明还可以通过在NAT Server代理中设置各种限流方式,来限制内网用户之间的数据流量。

附图说明

[0025] 图1为一种内网、NAT Server和外网的组网示意图;
[0026] 图2为另一种内网、NAT Server和外网的组网示意图;
[0027] 图3为本方法所述方法的处理流程图。

具体实施方式

[0028] 本发明提供了一种内网用户之间传递各种报文的方法,本发明的核心为:对于内网到内网(内网访问NAT Server)的NAT转换,对报文IP头部的目的IP地址和源IP地址都作替换。
[0029] 下面结合附图来详细描述本发明,本方法所述方法的处理流程如图3所示,包括如下步骤:
[0030] 步骤3-1、源内网用户向NAT Server发送的报文查找路由表,查到相应的标记,将标记保存在报文内。
[0031] 当一个内网用户需要向另一个同一地址域或不同地址域下的内网用户建立某种服务时,该内网用户先向NAT Server发送报文,在该报文中携带最终目的内网用户的IP地址和源内网用户的IP地址信息。同时,该报文查路由表,查到相应的标记,并将该标记保存在报文中,该标记表明该报文是由内网用户发起的访问NAT Server的报文。
[0032] 例如,在图1所示的组网中,内网用户10.1.1.2要访问内网的FTP服务器,于 是 先访 问NAT Server(IP为202.1.1.1),先 向NAT Server发 起FTP连接:10.1.1.2:4760→202.1.1.1:21。即向NAT Server发起源IP地址为10.1.1.2:4760、目的IP地址为202.1.1.1、最终目的IP地址为10.1.1.1的FTP报文。其中4760为发起访问者的端口号。
[0033] 步骤3-2、NAT Server将收到的报文IP头部的源IP地址和该报文的目的用户的IP地址保存在会话表中。
[0034] NAT Server收到上述内网用户发送的报文后,检查到上述设置的标记,于是,将报文IP头部的源IP地址和最终目的IP地址进行保存,在实际应用中,可以将源IP地址和最终目的IP地址保存在session(会话表)中。
[0035] 例如,在上述内网用户10.1.1.2访问内网的FTP服务器的实施例中,NAT Server将收到的报文的源IP地址10.1.1.2和最终目的IP地址10.1.1.1保存在session中。
[0036] 步骤3-3、NAT Server将收到的报文IP头部的源IP地址和目的IP地址都作替换,将报文转发给目的内网用户。
[0037] NAT Server查询保存在session中的源IP地址和最终目的IP地址信息,将收到的报文IP头部的源IP地址和目的IP地址都作替换,将源IP地址替换为NAT Server的IP地址,将目的IP地址替换为保存的最终目的IP地址,然后,将报文转发给另一内网用户。
[0038] 例如,在上述内网用户10.1.1.2访问内网的FTP服务器的实施例中,NAT Server根据保存在session中源IP地址10.1.1.2和最终目的IP地址10.1.1.1,将收到的报文进行NAT转换,向FTP服务器发起连接:202.1.1.1:4760→10.1.1.1:21,即向FTP服务器发起源IP地址为202.1.1.1:4760、目的IP地址为10.1.1.1:21的报文。
[0039] 步骤3-4、NAT Server根据保存的地址信息,将目的内网用户返回的报文IP头部的源IP地址和目的IP地址都作替换,将报文转发给源内网用户。
[0040] NAT Server收到最终目的内网用户返回的报文后,根据保存的地址信息,将内网用户返回的报文IP头部的源IP地址和目的IP地址都作替换,将源IP地址替换为NAT Server的IP地址,将目的IP地址替换为保存的源IP地址,然后,将报文转发给相应的内网用户。
[0041] 例如,在上述内网用户10.1.1.2访问内网的FTP服务器的实施例中,NAT Server在收到FTP服务器返回的回应10.1.1.1:21→202.1.1.1:4760后,根据保存在session中源IP地址10.1.1.2和最终目的IP地址10.1.1.1,将收到的报文进行NAT转换,然后,回应内网用户10.1.1.2:202.1.1.1:21→10.1.1.2:4760。即向内网用户10.1.1.2回应源IP地址为202.1.1.1:21、目的IP地址为10.1.1.2:4760的报文。
[0042] 根据上述处理流程,在内网用户和内网FTP服务器之间实现了NAT转换。
[0043] 本发明还可以通过在NAT代理中设置各种各种限流、限速方式和防攻击方式,来限制内网用户的数据流量,保护内网服务器。
[0044] 以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。