[发明专利]一种确定NAT类型的方法及装置有效

专利信息
申请号: 201010143479.6 申请日: 2010-03-03
公开(公告)号: CN102196057A 公开(公告)日: 2011-09-21
发明(设计)人: 王志华;陈谦;鲁小锁;邵颖哲 申请(专利权)人: 腾讯科技(深圳)有限公司
主分类号: H04L29/12 分类号: H04L29/12;H04L29/06
代理公司: 北京派特恩知识产权代理事务所(普通合伙) 11270 代理人: 张颖玲;蒋雅洁
地址: 518044 广东省深圳*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 确定 nat 类型 方法 装置
【说明书】:

技术领域

发明涉及网络地址转换(NAT)技术,尤指一种确定NAT类型的方法及装置。

背景技术

随着接入Internet的计算机数量的不断猛增,因特网协议(IP)地址资源也就愈加显得捉襟见肘,在这种情况下,网络地址转换(NAT)技术便应运而生了。一时间,NAT作为一种解决IPv4地址短缺以避免保留IP地址困难的方案而流行起来。不仅如此,通过使用NAT技术还能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机。虽然NAT技术在解决IP地址资源短缺以及保护内部计算机方面起到了积极作用,但是,另一方面,NAT技术也无疑与互联网的开放特性背道而驰,使许多应用受到了极大的影响。为此,人们开始研究如何穿越NAT,STUN协议在此起到了积极的作用,通过使用STUN协议,可以检测出位于NAT之后的客户端的NAT类型以及经过转换后所对应的公网IP地址和端口,为后期的打洞以及端到端(P2P)系统中的节点选择起到了至关重要的作用。

常见的NAT类型可分为四种,分别是完全圆锥型NAT(Full Cone NAT)、受限圆锥型NAT(Address Restricted Cone NAT)、端口受限圆锥型NAT(Port-Restricted Cone NAT),以及对称NAT(Symmetric NAT)。下面分别对这四种NAT类型进行简单介绍。

1)完全圆锥型NAT,也就是一对一的NAT。

一旦一个内部地址(iAddr:port1)映射到外部地址(eAddr:port2),所有发自(iAddr:port1)的包都经由(eAddr:port2)向外发送。任意外部主机都能通过给(eAddr:port2)发包到达(iAddr:port1)。

2)受限圆锥型NAT。

一旦一个内部地址(iAddr:port1)映射到外部地址(eAddr:port2),所有发自(iAddr:port1)的包都经由(eAddr:port2)向外发送。在内部地址(iAddr:port1)之前发送过包到任意外部主机(hostAddr:any)的情况下,任意外部主机(hostAddr:any)都能通过给(eAddr:port2)发包到达(iAddr:port1),其中,“any”也就是说端口不受限制。

3)端口受限圆锥型NAT。类似受限圆锥型NAT(Restricted cone NAT),还包括端口限制。

一旦一个内部地址(iAddr:port1)映射到外部地址(eAddr:port2),所有发自(iAddr:port1)的包都经由(eAddr:port2)向外发送。在内部地址(iAddr:port1)之前发送过包到外部主机(hostAddr:port3)的情况下,一个外部主机(hostAddr:port3)能够发包到达(iAddr:port1)。

4)对称NAT。

每一个来自相同内部IP与port的请求到一个特定目的地的IP地址和端口,都被映射到一个独特的外部来源的IP地址和端口。同一个内部主机发出一个信息包到不同的目的端,将使用不同的映射。

STUN协议的全称是Simple Traversal of User Datagram Protocol ThroughNetwork Address Translate-ors,主要功能是检测是否位于NAT后面,如果位于NAT后面,经过NAT转换后的地址和端口是什么,另外可以检测NAT的类型。

STUN协议的基本思想是:在私网内部安装一个STUN客户端(STUNClient),在公网上安装两个STUN服务器(STUN Server),STUN协议定义了一些消息格式,大体上分成请求/响应Request/Response,STUN Client向STUNServer发送Request,STUN Server发送Response给STUN Client。在STUN Server收到来自STUN Client的UDP包后,STUN Server将接收到该用户数据报协议(UDP)包的地址和端口,并利用UDP传回给STUN Client,STUN Client将收到的地址和端口与本机的IP地址和端口进行比较,如果不同,说明在NAT后面,否则,说明就位于NAT之前(即没有经过地址转换的IP)。

为了检测出不同类型的NAT,STUN协议定义了一些消息属性,要求STUNServer有不同的动作,比如发送响应时使用不同的IP地址和端口,或者改变端口等等。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201010143479.6/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top