基于移动互联网的nat转换方法及系统的制作方法
【专利摘要】本发明公开了一种基于移动互联网的NAT转换方法及系统,所述方法采用静态IP地址映射和动态端口映射的混合NAT映射实现,包括在IP层出口处调用NAT和在IP层入口处调用NAT;在IP层出口处调用NAT为将数据包传输到NAT路由器;检查是否有包含数据包目的IP地址的路由表项;检查资源池的NAT地址映射表中是否有包含内部本地IP地址和内部全局IP地址的NAT表项;在IP层入口处调用NAT为将数据包传输到NAT路由器;检查是否有包含数据包目的IP地址的路由表项;检查资源池的NAT地址映射表中是否有包含内部全局IP地址和内部本地IP地址的HASH表项。本发明对移动通信终端用户标识容易,可以进行用户访问溯源和分析。
【专利说明】基于移动互联网的NAT转换方法及系统
【技术领域】
[0001]本发明涉及ー种NAT转换方法及系统,尤其一种是基于移动互联网的NAT转换方法及系统。属于移动通信领域。
【背景技术】
[0002]随着移动互联网的高速发展,给移动通信終端用户打开了一扇通过互联网世界的大门,移动互联网结合了移动通信的便利性和互联网的丰富内容,成为通信业和互联网业融合发展的交叉领域,具有巨大的市场前景。但由于移动通信网络和互联网在用户标识方面有着本质的不同,移动通信网中的身份标识是手机号,互联网中的身份标识是IP地址,由于移动通信終端海量用户,造成了互联网业务运营者不能很好地利用用户的手机号码开展业务,同时也造成了移动互联网用户溯源的问题,不能满足互联网安全管理的要求。
[0003]NAT (Network Address Translator)称为网络地址翻译。即改变IP报文中的源地址和目标地址及源端口和目标端ロ的一种数据处理;使一个局域网中的多台主机使用少数合法全球互联网IP地址访问外部资源;通过NAT转换,可以有效的隐藏了内部局域网的主机IP地址,起到了保护内部网络的作用。
[0004]在电信运营商的当前网络中,为解决庞大移动通信終端用户群体访问互联网的时候IPv4地址不够使用的问题,采用IP地址转换实现公网IP地址共用的方法,但这导致了移动互联网平台获取的用户访问IP地址是重复的,更为标识用户带来了困难,此外为了提高电信运营商IP地址转换的性能,目前大多采用独立的多核CPU进行处理,由主处理CPU单元进行分流和分发,但是目前这种处理方式也不能满足电信运营商上网用户数的增长速度。
【发明内容】
[0005]本发明的目的是为了解决上述现有技术的缺陷,提供一种基于移动互联网的NAT转换方法,该方法对移动通信終端用户标识容易,可以进行用户访问溯源和分析,以及通过网络防火墙时将内部IP地址固定分配为公有IP地址进行Internet访问。
[0006]本发明的另ー目的在于提供一种基于移动互联网的NAT转换系统。
[0007]本发明的目的可以通过采取如下技术方案达到:
[0008]基于移动互联网的NAT转换方法,其特征在于:所述方法应用于移动通信終端用户通过APN NET访问互联网,采用静态IP地址映射和动态端ロ映射的混合NAT映射实现,包括在IP层出ロ处调用NAT和在IP层入口处调用NAT ;
[0009]所述在IP层出ロ处调用NAT具体如下:
[0010]将以内部本地IP地址为源IP地址、外部本地IP地址为目的IP地址进行封装的数据包传输到NAT路由器;
[0011]NAT路由器检查路由表是否有包含数据包目的IP地址的路由表项,若有,则检验数据包是否是从内部网络发到外部网络的访问数据包;若无,则数据包被丢弃;[0012]当检验到数据包是从内部网络发到外部网络的访问数据包,通过HASH计算定位检查资源池的NAT地址映射表中是否有包含内部本地IP地址和内部全局IP地址的NAT表项,若有,则将数据包的源IP地址用内部全局IP地址替换,源端ロ用内部全局端ロ替换;若无,则数据包直接被NAT路由器转发;
[0013]所述在IP层入ロ处调用NAT具体如下:
[0014]将以外部本地IP地址为源IP地址、内部全局IP地址为目的IP地址进行封装的数据包传输到NAT路由器;
[0015]NAT路由器检查路由表是否有包含数据包目的IP地址的路由表项,若有,则检验数据包是否是从外部网络发到内部网络的应答数据包;若无,则数据包被丢弃;
[0016]当检验到数据包是从外部网络发到内部网络的应答数据包,通过HASH计算定位检查资源池的NAT地址映射表中是否有包含内部全局IP地址和内部本地IP地址的HASH表项,若有,则将数据包的目的IP地址用内部本地IP地址替换,目的端ロ用内部本地端ロ替换;若无,则数据包直接被NAT路由器转发。
[0017]作为ー种优选方案,在IP层出ロ处调用NAT还包括:
[0018]当检验到数据包不是从内部网络发到外部网络的访问数据包,判断是否为IP地址列表中允许的地 址,若是,通过HASH计算后存储建立新的HASH表项,记录有关转换信息后,转换源地址和源端ロ,若否,则丢弃数据包。
[0019]作为ー种优选方案,在IP层出ロ处调用NAT还包括:
[0020]根据数据包中的源IP地址、转换后的源IP地址、目的IP地址、源端ロ、转换后的源端ロ、目的端口和协议号的七元组来标识一条数据流,并生成一条NAT数据流量的日志I己求。
[0021]作为ー种优选方案,在IP层入口处调用NAT还包括:
[0022]当检验到数据包不是从外部网络发到内部网络的应答数据包,判断是否为HASH表中的地址,若是,还原目的IP地址和目的端ロ,若否,则丢弃数据包。
[0023]作为ー种优选方案,还包括资源释放与回收,具体如下:
[0024]当用户断开所有连接,释放内部全局IP地址和内部全局端ロ资源,将内部全局端ロ资源回收,并发送端ロ资源回收的SYSLOG日志。
[0025]本发明的另一目的可以通过采取如下技术方案达到:
[0026]基于移动互联网的NAT转换系统,其特征在于:所述系统应用于移动通信終端用户通过APN NET访问互联网,采用静态IP地址映射和动态端ロ映射的混合NAT映射实现,包括IP层出口处NAT调用模块和IP层入口处NAT调用模块;
[0027]所述IP层出口处NAT调用模块包括:
[0028]第一数据包传输单元,用于将以内部本地IP地址为源IP地址、外部本地IP地址为目的IP地址进行封装的数据包传输到NAT路由器;
[0029]第一路由表项检查単元,用于NAT路由器检查路由表是否有包含数据包目的IP地址的路由表项,若有,则检验数据包是否是从内部网络发到外部网络的访问数据包;若无,则数据包被丢弃;
[0030]第一 NAT表项检查単元,用于当检验到数据包是从内部网络发到外部网络的访问数据包,通过HASH计算定位检查资源池的NAT地址映射表中是否有包含内部本地IP地址和内部全局IP地址的NAT表项,若有,则将数据包的源IP地址用内部全局IP地址替换,源端ロ用内部全局端ロ替换;若无,则数据包直接被NAT路由器转发;
[0031]所述IP层入口处NAT调用模块包括:
[0032]第二数据包传输单元,用于将以外部本地IP地址为源IP地址、内部全局IP地址为目的IP地址进行封装的数据包传输到NAT路由器;
[0033]第二路由表项检查単元,用于NAT路由器检查路由表是否有包含数据包目的IP地址的路由表项,若有,则检验数据包是否是从外部网络发到内部网络的应答数据包;若无,则数据包被丢弃;
[0034]第二 NAT表项检查単元,当检验到数据包是从外部网络发到内部网络的应答数据包,通过HASH计算定位检查资源池的NAT地址映射表中是否有包含内部全局IP地址和内部本地IP地址的HASH表项,若有,则将数据包的目的IP地址用内部本地IP地址替换,目的端ロ用内部本地端ロ替换;若无,则数据包直接被NAT路由器转发。
[0035]作为ー种优选方案,所述IP层出ロ处NAT调用模块还包括:
[0036]第一数据包IP地址判断単元,用于当检验到数据包不是从内部网络发到外部网络的访问数据包,判断是否为IP地址列表中允许的地址,若是,通过HASH计算后存储建立新的HASH表项,记录有关转换信息后,转换源地址和源端ロ,若否,则丢弃数据包。
[0037]作为ー种优选方案,所述IP层出ロ处NAT调用模块还包括:
[0038]标识数据流与生成日志记录单元,用于根据数据包中的源IP地址、转换后的源IP地址、目的IP地址、源端ロ、转换后的源端ロ、目的端口和协议号的七元组来标识一条数据流,并生成一条NAT数据流量的日志记录。
[0039]作为ー种优选方案,所述IP层入口处NAT调用模块还包括:
[0040]第二数据包IP地址判断単元,用于当检验到数据包不是从外部网络发到内部网络的应答数据包,判断是否为HASH表中的地址,若是,还原目的IP地址和目的端ロ,若否,则丢弃数据包。
[0041]作为ー种优选方案,还包括:
[0042]资源释放与回收模块,用于当用户断开所有连接,释放内部全局IP地址和内部全局端ロ资源,将内部全局端ロ资源回收,并发送端ロ资源回收的SYSLOG日志。
[0043]本发明相对于现有技术具有如下的有益效果:
[0044]1、本发明方法具有高效的数据包分流处理机制,通过对IP数据流的五元组进行计算,并把计算结果保存在分流表中,分流表数据会标记IP数据流对应处理的相同规则的五元组数据流,根据数据包的五元组特征把IP数据流发送到相应的处理单元进行处理,完成内部本地IP地址(私网IP地址)和内部本地端ロ(私网端ロ)到内部全局IP地址(公网IP地址)和内部全局端ロ(公网端ロ )的转换功能,这样最大程度地利用了外网IP的复用率。
[0045]2、本发明方法通过IP地址静态映射资源池实现IP地址和端ロ转换,资源池数据包含内网IP地址、内网端ロ、外网IP地址、外网端ロ、网络协议等关键字段,这样可以根据用户等级进行分配外网端ロ资源,从配置或者本地文件中加载资源池数据到内存中,资源池采用共享内存方式,便于各个単独的CPU都可以进行访问,进行读写。
[0046]3、本发明方法可以进行高速查询IP地址静态映射资源池,经过对资源池数据进行HASH计算后进行存储,在线查找的时候通过HASH计算直接进行定位,在资源池中找到所需要IP地址及端ロ资源等信息。
[0047]4、本发明方法可以实现高速IP地址及端ロ转换,在从资源池中查找到IP地址及端ロ资源后,通过HASH定位替换IP和端ロ,不需要从数据包所有数据中进行查询比对,移动通信终端访问外网的数据流在IP地址和端ロ转换后,需要进行标记,在数据流结束后,需要进行释放,便于下个数据流继续使用。
[0048]5、本发明方法采用动态端ロ映射,支持为用户预分配端ロ资源,端ロ资源大小为:256、512、1024、2048、4096等,当用户第ー条数据流到达后,可根据其他属性识别出用户,并给用户分配配置的端ロ资源,该用户后续其他数据流不会再触发端ロ资源分配,而直接使用第一次分配的端ロ资源做NAT转换,当用户断开所有连接后,NAT系统将回收分配给用户的端ロ资源,并发送端ロ块回收的SYSLOG日志,通过这种方式可以大大減少日志数据量,并保证整个系统对用户公平、合理使用端ロ资源。
[0049]6、本发明方法在NAT的出口方向进行日志记录,根据数据包中的源IP地址、转换后的源IP地址、目的IP地址、源端ロ、转换后的源端ロ、目的端ロ和协议号的七元组来标识一条数据流,并生成一条NAT数据流量的日志记录,通过日志信息了解NAT转换前后的地址信息,根据日志信息进行查询分析得到用户网络信息,方便追踪ー些非法网络活动及不正当操作信息,提高网络设备的可用性和安全性,因此可以达到IP溯源的功能,满足了公安及安全部门以及一些事业单位的需求。
【专利附图】
【附图说明】
[0050]图1为本发明方法中的NAT在网络数据中的位置。
[0051]图2为本发明方法中IP层出口处调用NAT的示意图。
[0052]图3为本发明方法中IP层入口处调用NAT的示意图。
[0053]图4为本发明方法应用于移动通信終端用户通过APNNET访问互联网的使用图。
【具体实施方式】
[0054]实施例1:
[0055]如图1所示,本实施例提供一种基于移动互联网的NAT转换方法,采用静态IP地址映射和动态端ロ映射的混合NAT映射实现,包括在IP层出ロ处调用NAT、在IP层入口处调用NAT以及资源释放与回收;
[0056]如图2所示,所述在IP层出ロ处调用NAT具体如下:
[0057]I)将以内部本地IP地址为源IP地址、外部本地IP地址为目的IP地址进行封装的数据包传输到NAT路由器;
[0058]2) NAT路由器检查路由表是否有包含数据包目的IP地址的路由表项,若有,则检验数据包是否是从内部网络发到外部网络的访问数据包,若是执行步骤3),否则执行步骤4);若无,则数据包被丢弃;
[0059]3)通过HASH计算定位检查资源池的NAT地址映射表中是否有包含内部本地IP地址和内部全局IP地址的NAT表项,若有,则将数据包的源IP地址用内部全局IP地址替换,源端ロ用内部全局端ロ替换,执行步骤5);若无,则数据包直接被NAT路由器转发;[0060]4)判断是否为IP地址列表中允许的地址,若是,通过HASH计算后存储建立新的HASH表项,记录有关转换信息后,转换源地址和源端ロ,若否,则丢弃数据包。
[0061]5)根据数据包中的源IP地址、转换后的源IP地址、目的IP地址、源端ロ、转换后的源端ロ、目的端ロ和协议号的七元组来标识一条数据流,并生成一条NAT数据流量的日志T己或。
[0062]如图3所示,所述在IP层入口处调用NAT具体如下:
[0063]I)将以外部本地IP地址为源IP地址、内部全局IP地址为目的IP地址进行封装的数据包传输到NAT路由器;
[0064]2) NAT路由器检查路由表是 否有包含数据包目的IP地址的路由表项,若有,则检验数据包是否是从外部网络发到内部网络的应答数据包,若是,执行步骤3),若否,执行步骤4);若无,则数据包被丢弃;
[0065]3)通过HASH计算定位检查资源池的NAT地址映射表中是否有包含内部全局IP地址和内部本地IP地址的HASH表项,若有,则将数据包的目的IP地址用内部本地IP地址替换,目的端ロ用内部本地端ロ替换;若无,则数据包直接被NAT路由器转发。
[0066]4)判断是否为HASH表中的地址,若是,还原目的IP地址和目的端ロ,若否,则丢弃数据包。
[0067]资源释放与回收具体如下:
[0068]当用户断开所有连接,释放内部全局IP地址和内部全局端ロ资源,将内部全局端ロ资源回收,并发送端ロ资源回收的SYSLOG日志。
[0069]如图4所示,可以看到当移动通信終端用户通过APNNET访问互联网的数据包到达NAT路由器时,通过查找下表I所示的NAT地址映射表,将内网的源IP地址和源端ロ号进行转换,即将内部本地地址和内部本地端口号(10.1.1.3:1723,10.1.1.2:1723,10.1.1.1:1034)转换为内部全局地址和内部全局端口号(202.168.2.2:1492,202.168.2.2:1723、202.168.2.2:1034),相对应地,外网的外部全局地址和外部全局端口号分别为212.21.7.3:23,212.21.7.3:23,212.20.7.3:23。
【权利要求】
1.基于移动互联网的NAT转换方法,其特征在于:所述方法应用于移动通信終端用户通过APN NET访问互联网,采用静态IP地址映射和动态端ロ映射的混合NAT映射实现,包括在IP层出ロ处调用NAT和在IP层入口处调用NAT ; 所述在IP层出ロ处调用NAT具体如下: 将以内部本地IP地址为源IP地址、外部本地IP地址为目的IP地址进行封装的数据包传输到NAT路由器; NAT路由器检查路由表是否有包含数据包目的IP地址的路由表项,若有,则检验数据包是否是从内部网络发到外部网络的访问数据包;若无,则数据包被丢弃; 当检验到数据包是从内部网络发到外部网络的访问数据包,通过HASH计算定位检查资源池的NAT地址映射表中是否有包含内部本地IP地址和内部全局IP地址的NAT表项,若有,则将数据包的源IP地址用内部全局IP地址替换,源端ロ用内部全局端ロ替换;若无,则数据包直接被NAT路由器转发; 所述在IP层入口处调用NAT具体如下: 将以外部本地IP地址为源IP地址、内部全局IP地址为目的IP地址进行封装的数据包传输到NAT路由器; NAT路由器检查路由表是否有包含数据包目的IP地址的路由表项,若有,则检验数据包是否是从外部网络发到内部网络的应答数据包;若无,则数据包被丢弃; 当检验到数据包是从外部网络发到内部网络的应答数据包,通过HASH计算定位检查资源池的NAT地址映射表中是否有包含内部全局IP地址和内部本地IP地址的HASH表项,若有,则将数据包的目的IP.地址用内部本地IP地址替换,目的端ロ用内部本地端ロ替换;若无,则数据包直接被NAT路由器转发。
2.根据权利要求1所述的基于移动互联网的NAT转换方法,其特征在于:在IP层出口处调用NAT还包括: 当检验到数据包不是从内部网络发到外部网络的访问数据包,判断是否为IP地址列表中允许的地址,若是,通过HASH计算后存储建立新的HASH表项,记录有关转换信息后,转换源地址和源端ロ,若否,则丢弃数据包。
3.根据权利要求1所述的基于移动互联网的NAT转换方法,其特征在于:在IP层出口处调用NAT还包括: 根据数据包中的源IP地址、转换后的源IP地址、目的IP地址、源端ロ、转换后的源端ロ、目的端口和协议号的七元组来标识一条数据流,并生成一条NAT数据流量的日志记录。
4.根据权利要求1所述的基于移动互联网的NAT转换方法,其特征在于:在IP层入口处调用NAT还包括: 当检验到数据包不是从外部网络发到内部网络的应答数据包,判断是否为HASH表中的地址,若是,还原目的IP地址和目的端ロ,若否,则丢弃数据包。
5.根据权利要求1-4任一项所述的基于移动互联网的NAT转换方法,其特征在于还包括资源释放与回收,具体如下: 当用户断开所有连接,释放内部全局IP地址和内部全局端ロ资源,将内部全局端ロ资源回收,并发送端ロ资源回收的SYSLOG日志。
6.基于移动互联网的NAT转换系统,其特征在于:所述系统应用于移动通信終端用户通过APN NET访问互联网,采用静态IP地址映射和动态端ロ映射的混合NAT映射实现,包括IP层出ロ处NAT调用模块和IP层入口处NAT调用模块; 所述IP层出口处NAT调用模块包括: 第一数据包传输单元,用于将以内部本地IP地址为源IP地址、外部本地IP地址为目的IP地址进行封装的数据包传输到NAT路由器; 第一路由表项检查単元,用于NAT路由器检查路由表是否有包含数据包目的IP地址的路由表项,若有,则检验数据包是否是从内部网络发到外部网络的访问数据包;若无,则数据包被丢弃; 第一 NAT表项检查単元,用于当检验到数据包是从内部网络发到外部网络的访问数据包,通过HASH计算定位检查资源池的NAT地址映射表中是否有包含内部本地IP地址和内部全局IP地址的NAT表项,若有,则将数据包的源IP地址用内部全局IP地址替换,源端ロ用内部全局端ロ替换;若无,则数据包直接被NAT路由器转发; 所述IP层入口处NAT调用模块包括: 第二数据包传输单元,用于将以外部本地IP地址为源IP地址、内部全局IP地址为目的IP地址进行封装的数据包传输到NAT路由器; 第二路由表项检查単元,用于NAT路由器检查路由表是否有包含数据包目的IP地址的路由表项,若有,则检验数据包 是否是从外部网络发到内部网络的应答数据包;若无,则数据包被丢弃; 第二 NAT表项检查単元,当检验到数据包是从外部网络发到内部网络的应答数据包,通过HASH计算定位检查资源池的NAT地址映射表中是否有包含内部全局IP地址和内部本地IP地址的HASH表项,若有,则将数据包的目的IP地址用内部本地IP地址替换,目的端ロ用内部本地端ロ替换;若无,则数据包直接被NAT路由器转发。
7.根据权利要求6所述的基于移动互联网的NAT转换系统,其特征在于:所述IP层出ロ处NAT调用模块还包括: 第一数据包IP地址判断単元,用于当检验到数据包不是从内部网络发到外部网络的访问数据包,判断是否为IP地址列表中允许的地址,若是,通过HASH计算后存储建立新的HASH表项,记录有关转换信息后,转换源地址和源端ロ,若否,则丢弃数据包。
8.根据权利要求6所述的基于移动互联网的NAT转换系统,其特征在于:所述IP层出ロ处NAT调用模块还包括: 标识数据流与生成日志记录单元,用于根据数据包中的源IP地址、转换后的源IP地址、目的IP地址、源端ロ、转换后的源端ロ、目的端口和协议号的七元组来标识一条数据流,并生成一条NAT数据流量的日志记录。
9.根据权利要求6所述的基于移动互联网的NAT转换系统,其特征在于:所述IP层入ロ处NAT调用模块还包括: 第二数据包IP地址判断単元,用于当检验到数据包不是从外部网络发到内部网络的应答数据包,判断是否为HASH表中的地址,若是,还原目的IP地址和目的端ロ,若否,则丢弃数据包。
10.根据权利要求6-9任一项所述的基于移动互联网的NAT转换系统,其特征在于还包括:资源释放与回收模块,用于当用户断开所有连接,释放内部全局IP地址和内部全局端ロ资源,将内部全局端ロ资 源回收,并发送端ロ资源回收的SYSLOG日志。
【文档编号】H04W8/26GK103442096SQ201310377473
【公开日】2013年12月11日 申请日期:2013年8月26日 优先权日:2013年8月26日
【发明者】郑力明 申请人:暨南大学