[发明专利]在NAT穿越中分配外网互联网协议IP地址的方法及设备、系统有效
申请号: | 201010508346.4 | 申请日: | 2010-10-15 |
公开(公告)号: | CN102447748A | 公开(公告)日: | 2012-05-09 |
发明(设计)人: | 查敏;黄敬 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | H04L29/12 | 分类号: | H04L29/12 |
代理公司: | 北京凯特来知识产权代理有限公司 11260 | 代理人: | 郑立明;孟丽娟 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | nat 穿越 分配 互联网 协议 ip 地址 方法 设备 系统 | ||
技术领域
本发明涉及通信领域,尤其涉及一种在NAT穿越中分配外网互联网协议IP地址的方法及设备、系统。
背景技术
目前IPv4的地址已经差不多分配完,IP(Internet Protocol,英特网协议)地址短缺的问题非常严重,业界普遍认为IPv6是解决这一问题的根本途径。但是目前IPv6部署的进度并不是很理想,短期内IPv6无法解决地址短缺的问题;近期内在运营商网络中部署NAT(Network Address Translation,网络地址转换)(CGN,Carrier Grade NAT,运营商级NAT)是暂时缓解地址短缺问题的有效途径。
但是在运营商网络中部署NAT,会带来较多的问题,特别是在NAT穿越方面。NAT穿越存在问题主要是部分通讯协议报文的净荷里携带有IP地址,而通常的NAT转换只会修改报文头里的地址,这样会造成通讯协议无法正常工作,受影响的通讯协议有FTP(File Transfer Protocol,文件传输协议)、SIP(Session Initiation Protocol,会话初始协议)。
解决NAT穿越问题的一种办法是使用应用层网关(ALG,Application Layer Gateway),但这已经不是主流方式。目前通常采用PCP(Pinhole Control Protocol,穿孔控制协议)协议来实现NAT穿越,如图1所示,在PCP协议中,客户端向PCP服务器端发送一个请求,要求打开一个外网端口号(ex-port),PCP服务器检查如果该端口未被使用,就会建立一个内网IP(in-ip)+内网端口号(ip-port)与外网IP(ex-ip)+外网端口号(ex-port)的NAT映射表项,同时PCP服务器会将外网IP与外网端口号的信息返回给客户端。当客户端的应用程序需要向网络发布自己的IP和端口号时,将发布自己的外网IP(ex-ip)和外网端口号(ex-port)。其他网络节点就可用该外网IP和外网端口号为目的地址和目的端口号,主动向该客户发起访问,NAT设备会根据PCP协商时建立起的NAT映射表项对报文进行转换,将外网IP和外网端口号转换为内网IP和内网端口号;当客户端需要向其他节点发送报文时,则进行反向的转换。现有PCP协议实现NAT穿越的缺点为:运营商网络中的NAT(CGN)通常是使用一个外网IP地址池,地址池中包含多个IP地址。当应用程序需要建立一个连接时,NAT设备会从中选取一个IP和一个端口来建立NAT映射表项。而在同一个应用程序建立多个连接时,现有PCP协议并无法保证多个连接的外网IP地址均相同,从而会导致应用程序无法正确进行数据传输或易受到网络攻击。
发明内容
本发明实施方式提供一种在NAT穿越中分配外网互联网协议IP地址的方法及设备、系统,可使同一个应用程序的多个连接通过NAT设备后的外网IP地址保持一致,提高NAT穿越协议对现有应用程序的适应能力,很好解决同一个应用程序的多个连接通过NAT设备后外网IP地址不一致带来的问题。
本发明实施例提供一种在NAT穿越中分配外网互联网协议IP地址的方法,包括:
接收客户端发出的建立对应连接的NAT映射表项的请求消息,所述请求消息包括指定的外网IP地址,该外网IP地址与所述客户端的同一个应用已建立的任意一个连接对应的NAT映射表项中的外网IP地址相同;
在根据接收的所述请求消息建立NAT映射表项时,按所述请求消息中指定的外网IP地址,分配与所述指定的外网IP地址相同的IP地址,作为所要建立NAT映射表项的外网IP地址。
本发明实施例还提供一种在NAT穿越中分配外网互联网协议IP地址的方法,包括:
在向NAT设备发送建立对应连接的NAT映射表项的请求消息中指定外网IP地址,所述指定的外网IP地址与同一个应用已建立的任意一个连接对应的NAT映射表项中的外网IP地址相同;
所述指定外网IP地址使NAT设备在根据所述请求消息建立NAT映射表项时,能按所述指定的外网IP地址,分配与所述指定的外网IP地址相同的IP地址,作为所述NAT设备所要建立NAT映射表项的外网IP地址;
向NAT设备发送包括所述指定外网IP地址的所述请求消息。
本发明实施例又提供一种NAT设备,包括:
接收单元,用于接收客户端发出的建立对应连接的NAT映射表项的请求消息,所述请求消息包括指定的外网IP地址,该外网IP地址与所述客户端的同一个应用已建立的任意一个连接对应的NAT映射表项中的外网IP地址相同;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010508346.4/2.html,转载请声明来源钻瓜专利网。