手机用什么软件测试NAT(NAT类型检测方法和穿越方式)

之前有伙伴介绍了计算机中点对点通信(P2P)的相关知识,那么,NAT类型是如何检测的?针对不同的NAT类型,我们都有什么穿越方法?这些穿越方法又如何实现?接下来小编将详细为您剖析。

内容目录

基本概念

1、基本的NAT类型:只转换IP,不转换端口

2、NAPT:转换整个Endpoint (IP:PORT)

网络类型检测

步骤1:检测主机是否位于NAT后

步骤2:检测NAT是否是完全锥型

步骤3:检测NAT是否是对称型的

步骤4:检测NAT是限制型还是端口限制型

穿越方法介绍

简介

直接通信

打洞穿越

反向穿越

端口预测

根据NAT类选择穿越方法

穿越方法一览表

客户端的实现流程图

基本概念

1、基本的NAT类型:只转换IP,不转换端口

一个基本NAT往往需要具有多个公网IP来满足多个内网节点中具有相同端口的应用程序的同时访问。由于这种类型的NAT设备限制大,现在已不常见。

2、NAPT:转换整个Endpoint (IP:PORT)

现在常用的NAT类型是NAPT,NAPT是一种向外的NAT类型(“向外”指内网访问别人不受限,别人访问内网受限),根据限制的不同分为以下四种类型:

(1)完全锥型(FULL CONE NAT)

(2)限制锥型(RESTRICT CONE NAT)

(3)端口限制型(PORT RESTRICT CONE NAT)

(4)对称型(SYMMETRIC NAT)

网络类型检测

如图,检测类型分为以下几步:

手机用什么软件测试NAT(NAT类型检测方法和穿越方式)

 

NAT类型检测

步骤1:检测主机是否位于NAT后

是否位于NAT后,是从受限的角度讲的,如果客户端部署在阿里云,配置了一个外网地址(阿里云的内网和外网IP地址不同,但是有固定的映射的关系),当你收到的请求100%和你自己配置的外网地址一致时,就可以称之为在公网;

步骤2:检测NAT是否是完全锥型

图中3、4两步,证明只要Endpoint(IP+PORT)对应就可以,换个IP和PORT发送请求,该节点依然能收到消息,说明外来访问并没有受限,这样的NAT类型就是完全锥型;

步骤3:检测NAT是否是对称型的

图中1、2、5、6步,说明每次节点的内网发起请求的Endpoint(IP+PORT)不变的情况下,公网的出口Endpoint(IP+PORT)都会变,这样的NAT类型就是对称型;

步骤4:检测NAT是限制型还是端口限制型

图中7、8两步,内网先发起请求到一个地址Endpoint(IP+PORT),如果对方换个PORT把请求发送回来,NAT不给转发,则NAT就是端口限制型,否则仅为限制锥型。

穿越方法介绍

简介

穿越方法有四种:直接通信(direct)、打洞穿越(hole punching)、反向穿越(reverse)、端口预测(port prediction)。为了方便说明,我们假设有两个客户端节点(Peer)A和B.

首先,A和B都需要把自己从STUN服务器中获取的消息,注册到同一个服务器AssistServer(AssistServer是自建的一个公网服务,用于协调边缘节点互相发送消息),如图:

手机用什么软件测试NAT(NAT类型检测方法和穿越方式)

 

我们假定Peer A为发起端,Peer B为接收端,四种穿越方式的请求序列图分别如下所示。

直接通信

手机用什么软件测试NAT(NAT类型检测方法和穿越方式)

直接通信

打洞穿越

手机用什么软件测试NAT(NAT类型检测方法和穿越方式)

打洞穿越

从图中5、6、7三个步骤,可以看出,这是为应对Peer B处于端口限制型的NAT中,而做的设计。

反向穿越

如果Peer B所处的网络类型为对称型,Peer A的消息无法直达Peer B。那么我们就需要让Peer B首先发送消息,这其实是一种将Peer B变成发起端的方法。

手机用什么软件测试NAT(NAT类型检测方法和穿越方式)

反向穿越

端口预测

端口预测,就是统计客户端多次连接的地址,总结出客户端外网端口变化的规律,然后把预测出的下一个端口和外网地址发给对方,然后促成双方通信。这个方法穿透成功率极低,因此,如果碰上需要端口预测解决问题的时候,我们通常直接通过服务器转发的方式解决。

根据NAT类选择穿越方法

穿越方法一览表

手机用什么软件测试NAT(NAT类型检测方法和穿越方式)

穿越方法一览表

客户端的实现流程图

手机用什么软件测试NAT(NAT类型检测方法和穿越方式)

 

平台转发,可以选择TRUN的方式,也可以自建服务转发,但这样会耗费服务端的流量,有可能得不偿失。本文中讲的方法,可以保证很高的穿透率,但本质还是有中心的。那么常见的P2P的穿越方式到底是中心的还是去中心的?还是有新的技术来实现P2P的去中心化?去年比较火的IPFS的穿透方式又是什么呢?这些问题,小编将在后续的文章中为您揭晓。

版权声明:本文内容由网友提供,该文观点仅代表作者本人。本站(http://www.zengtui.com/)仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 3933150@qq.com 举报,一经查实,本站将立刻删除。

版权声明:本文内容由作者小航提供,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至907991599@qq.com 举报,一经查实,本站将立刻删除。如若转载,请注明出处:http://www.hangzai.com/331517.html

(0)
小航的头像小航

相关推荐