一种双方为非对称型的NAT的穿透方法技术

技术编号:23101937 阅读:40 留言:0更新日期:2020-01-14 21:09
本发明专利技术公开了一种双方为非对称型的NAT的穿透方法,在双方是非对称网络,在大部的情况下,都可以很顺利的进行NAT穿透,但是如果一方的网关有防DDOS攻击的设置,有可能是的原本很简单的穿透无法成功,本发明专利技术修正了传统的穿透流程,双方穿透依赖信令服务器同步状态,可以提升穿透的成功率。

【技术实现步骤摘要】
一种双方为非对称型的NAT的穿透方法
本专利技术涉及互联网通信
,尤其涉及一种双方为非对称型的NAT的穿透方法。
技术介绍
P2P,是英文PeertoPeer的缩写,中译为对等互联或点对点技术。P2P技术可以让用户可以直接连接到其他用户的计算机,进行文件共享与交换,同时P2P在深度搜索、分布计算、协同工作等方面也大有用途。目前P2P在加强网络上人的交流、文件交换、分布式计算、服务共享等方面已经充分显示出了其强大的技术优势,但是P2P的应用主要还是集中在Internet应用中,随着互联网大规模普及,p2p传输需求越来越大。NAT(NetworkAddressTranslator)技术通过将只能作为局域网内部地址而在因特网上不能被识别或直接使用的私有IP地址映射为Internet上合法IP地址,实现私有网络中节点对Internet的访问。NAT设备位于互联网与局域网之间,有翻译网络地址和保护网络安全的作用。但是NAT之后的主机不能作为服务器向外部网络提供服务,位于不同NAT之后的主机间也无法互相通信。因而NAT的穿透对P2P技术应用有重要意义。NAT的四种类型:(1)完全圆锥(FullCone)NAT完全锥形NAT将从同个内网IP与端口号发出的所有请求映射为相同的外部IP地址与端口号。同理,任何外网主机能够通过向这个内网主机被映射过的外网地址发送数据包。(2)受限圆锥(RestrictedCone)NAT受限锥形NAT将从同个内部IP地址和端口号发出的所有请求映射为相同的外部IP地址与端口号。但与完全锥形NAT不同的是,外网主机(IP地址为X)只能够向先前向IP地址X发送过数据包的内部主机发送数据,从而可以拒绝非请求的(unsolicited)包,支持数据包过滤功能。(3)端口受限锥形(PortRestrictedCone)NAT端口受限锥形NAT与受限锥形NAT类似,不同的是加了端口号的限制。IP地址为X,端口号P的外部主机只能够向先前已经向IP地址X、端口号P发送过数据包的内部主机发送数据包。(4)对称型(Symmetric)NAT对称型NAT将把从相同的内部IP地址与端口号发出,以及目的IP地址与端口号也相同的所有请求映射为相同的外部IP地址和端口号。数据包在经过此类型的NAT时候,源地址与端口即使相同,但目的地不同的话,将为其分配不同的映射地址。此外,只有提前收到内网主机X发来数据包的外部主机才可以向该内部主机发送数据包。
技术实现思路
本专利技术所述的一种双方为非对称型的NAT的穿透方法,包括以下步骤:第一步,Controller获取NAT映射地址X-IP:PORT;第二步,获取设备和X-IP:PORT所需要的TTL值n;第三步,向Controlling发送request信令;第四步,收到request信令后,controlling获取NAT映射地址Y-IP:PORT;第五步,获取设备和Y-IP:PORT所需要的TTL值m;第六步,往X-IP:PORT发送UDP,设置TTL值为m;第七步,向Controller发送Respond,第八步,收到Controlling的Respond后,往Y-IP:PORT发送UDP包,第九步,Controlling收到来自NAT地址X-IP:PORT的UDP包后,取消UDP包TTL的设置,往X-IP:PORT继续发送;第十步,Controller收到来自NAT地址Y-IP:PORT的UDP包后,确认NAT穿透成功。较佳地,位于NAT以外的公网上的主机,实现对NAT穿透,以P2P方式对NAT内的物联网嵌入式终端进行数据探测和控制,位于不同NAT内的主机实现NAT设备的穿透,达到不同局域网之间以及外网与局域网设备之间基于NAT内物联网嵌入式设备和通用设备传感和控制数据的双向传输,适配器用于同时连接多个不同的传感器和受控设备,一个适配器上提供多个标准协议接口,用于将各设备通过一个适配器同时被公网客户端访问。较佳地,位于局域网内的适配器B主动向位于公网的穿透服务器S发送UDP数据包,穿透服务器S返回初始化信息,其中包括适配器的内网地址和端口、NAT映射地址和端口、穿透服务器S转发消息的地址和端口。较佳地,向适配器B发起连接请求的客户端A也向位于公网的穿透服务器S发送UDP数据包,穿透服务器S返回初始化信息,其中包括适配器B的内网地址和端口、NAT映射地址和端口、穿透服务器S转发消息的地址和端口。较佳地,当客户端A的注册完成之后,穿透服务器S的数据库中会有每个客户相应的地址和端口记录,当客户端A要与NAT后的适配器B进行通信时,会向穿透服务器S发起请求,获得适配器B的可能IP地址和端口,包括内网IP地址和端口、NAT映射地址和端口、服务器S转发地址和端口。较佳地,请求访问的客户端A获得了适配器B的基本信息后,会从这些信息里面提取出部分信息,主要是穿透的适配器B的内网IP地址和端口、NAT映射地址和端口、服务器S转发地址和端口,用于NAT穿透协商时使用。较佳地,客户端A和适配器B根据各自获得的对方地址和端口信息,互相发送穿透信息,尝试以STUN、TURN来源中收集尽可能多的可能被连通的IP地址。较佳地,按照地址的优先级依次测试,选择最优路径;在STUN能穿透的情况下,走STUN协议打通的直连通道,当STUN无法穿透时,则走TURN转发的方式。较佳地,通过适配器实现NAT穿透,并通过TCP/IP网络协议与各传感器设备协议的转换,从而实现从公网对NAT内网传感器数据的读取。较佳地,通过适配器实现NAT穿透,并通过TCP/IP网络协议与各传感器设备协议的转换,从而实现从公网对NAT内网中物联网设备的控制。本专利技术所述的一种双方为非对称型的NAT的穿透方法,包括以下步骤:1.controler获取nat类型以及nat映射地址以及端口(X-IP:PORT1/X-IP1:)2.controler通过信令服务器向controling发送你的nat类型以及nat映射地址以及端口(X-IP:PORT),以及Ip包到网关需要的ttl值n,controling获取nat类型以及nat映射地址以及端口(Y-IP:PORT)以及Ip包到网关需要的ttl值m,controlling往X-IP:PORT发送udp包并且设置ttl值为m,并把它的nat映射地址通过信令服务器返回给controler3.controller获取对端的nat映射地址后,controller往Y-IP:PORT发送udp包.4.controlling收到对端nat穿越udp包后,controlling往X-IP:PORT发送udp包5.controller收到nat穿越的udp包后整个穿透流程结束在双方是非对称网络,在大部的情况下,都可以很顺利的进行nat穿透,但是如果一方的网关有防ddos攻击的设置,有可能是的原本很简单的穿透无法成功,本专利技术修正了本文档来自技高网
...

【技术保护点】
1.一种双方为非对称型的NAT的穿透方法,其特征在于,包括以下步骤:/n第一步,Controller获取NAT映射地址X‐IP:PORT;第二步,获取设备和X‐IP:PORT所需要的TTL值n;第三步,向Controlling发送request信令;第四步,收到request信令后,controlling获取NAT映射地址Y‐IP:PORT;第五步,获取设备和Y‐IP:PORT所需要的TTL值m;第六步,往X‐IP:PORT发送UDP,设置TTL值为m;第七步,向Controller发送Respond,第八步,收到Controlling的Respond后,往Y‐IP:PORT发送UDP包,第九步,Controlling收到来自NAT地址X‐IP:PORT的UDP包后,取消UDP包TTL的设置,往X‐IP:PORT继续发送;第十步,Controller收到来自NAT地址Y‐IP:PORT的UDP包后,确认NAT穿透成功。/n

【技术特征摘要】
1.一种双方为非对称型的NAT的穿透方法,其特征在于,包括以下步骤:
第一步,Controller获取NAT映射地址X‐IP:PORT;第二步,获取设备和X‐IP:PORT所需要的TTL值n;第三步,向Controlling发送request信令;第四步,收到request信令后,controlling获取NAT映射地址Y‐IP:PORT;第五步,获取设备和Y‐IP:PORT所需要的TTL值m;第六步,往X‐IP:PORT发送UDP,设置TTL值为m;第七步,向Controller发送Respond,第八步,收到Controlling的Respond后,往Y‐IP:PORT发送UDP包,第九步,Controlling收到来自NAT地址X‐IP:PORT的UDP包后,取消UDP包TTL的设置,往X‐IP:PORT继续发送;第十步,Controller收到来自NAT地址Y‐IP:PORT的UDP包后,确认NAT穿透成功。


2.如权利要求1所述的双方为非对称型的NAT的穿透方法,其特征在于,位于NAT以外的公网上的主机,实现对NAT穿透,以P2P方式对NAT内的物联网嵌入式终端进行数据探测和控制,位于不同NAT内的主机实现NAT设备的穿透,达到不同局域网之间以及外网与局域网设备之间基于NAT内物联网嵌入式设备和通用设备传感和控制数据的双向传输,适配器用于同时连接多个不同的传感器和受控设备,一个适配器上提供多个标准协议接口,用于将各设备通过一个适配器同时被公网客户端访问。


3.如权利要求2所述的双方为非对称型的NAT的穿透方法,其特征在于,位于局域网内的适配器B主动向位于公网的穿透服务器S发送UDP数据包,穿透服务器S返回初始化信息,其中包括适配器的内网地址和端口、NAT映射地址和端口、穿透服务器S转发消息的地址和端口。


4.如权利要求2所述的双方为非对称型的NAT的穿透方法,其特征在于,向适配器B发起连接请...

【专利技术属性】
技术研发人员:何少琼柯都敏
申请(专利权)人:杭州涂鸦信息技术有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1