NAPT的穿越,包括简单的设置路由实现

【背景】

另一篇博文分析了一个实际的路由问题,为方便问题分析,在此列出常用概念.  

vlan中的trunk口: VLAN/Trunk以及三层交换 , 可以把switch某一端口设为trunk 端口.

【问题】

IP地址分类:

  1. A类地址
  ⑴ A类地址第1字节为网络地址,其它3个字节为主机地址。另外第1个字节的最高位固定为0。
  ⑵ A类地址范围:1.0.0.1到126.255.255.254。
  ⑶ A类地址中的私有地址和保留地址:
  ①10.0.0.0到10.255.255.255是私有地址(所谓的私有地址就是在互联网上不使用,而被用在局域网络中的地址)。
  ② 127.0.0.0到127.255.255.255是保留地址,用做循环测试用的。
  2. B类地址 
  ⑴ B类地址第1字节和第2字节为网络地址,其它2个字节为主机地址。另外第1个字节的前两位固定为10。
  ⑵ B类地址范围:128.0.0.1到191.255.255.254。
  ⑶ B类地址的私有地址和保留地址
  ① 172.16.0.0到172.31.255.255是私有地址
  ②169.254.0.0到169.254.255.255是保留地址。如果你的IP地址是自动获取IP地址,而你在网络上又没有找到可用的DHCP服务器,这时你将会从169.254.0.0到169.254.255.255中临得获得一个IP地址。
  3. C类地址
  ⑴C类地址第1字节、第2字节和第3个字节为网络地址,第4个个字节为主机地址。另外第1个字节的前三位固定为110。
  ⑵ C类地址范围:192.0.0.1到223.255.255.254。
  ⑶ C类地址中的私有地址:192.168.0.0到192.168.255.255是私有地址

环境搭建:

1> 一台路由器+一台交换机+一台终端设备+PC机

 路由器:wan口配置192.168.3.1;

       lan口配置192.168.2.1;

2> PC连接交换机,交换机连接路由器wan口<交换机上可连接多台路由器>;

      pc配置为192.168.3.24;netmask=255.255.255.0;pc的路由为192.168.3.1即wan口;

  此时PC和wan口、lan口互通.

涉及命令:

  #route print查看路由

  #netsh interface ipv4 show route --查看路由、interface.

  #route add 192.168.2.0 mask 255.255.255.0 192.168.3.1 if 21--配置网卡2(对应interface为21)的路由;

  #route delete 192.168.2.0/24   --删除路由.

3> 设备连接路由器lan口,设备配置为192.168.2.24;netmask=255.255.255.0;设备路由为192.168.2.1即lan口;

  此时pc和wan口、lan口、设备互通,且一台路由器只连一台设备,即只用一个lan口,因为设备默认ip一致;

4> 路由器做交换机使用:pc和设备都连接lan口;pc,设备路由配置为lan口ip;此时pc和wan,lan口设备互通;

【转载】   

浅谈路由器的wan、lan、wlan口.

局域网(Local Area Network,LAN)

是指在某一区域内由多台计算机互联成的计算机组。一般是方圆几千米以内。局域网可以实现文件管理、应用软件共享、打印机共享、工作组内的日程安排、电子邮件和传真通信服务等功能。局域网是封闭型的,可以由办公室内的两台计算机组成,也可以由一个公司内的上千台计算机组成。

广域网 (Wide Area Network,WAN)

是一种跨越大的、地域性的计算机网络的集合。通常跨越盛市,甚至一个国家。广域网包括大大小小不同的子网,子网可以是局域网,也可以是小型的广域网。

局域网和广域网的区别

局域网是在某一区域内的,而广域网要跨越较大的地域,那么如何来界定这个区域呢?例如,一家大型公司的总公司位于北京,而分公司遍布全国各地,如果该公司将所有的分公司都通过网络联接在一起,那么一个分公司就是一个局域网,而整个总公司网络就是一个广域网。

那路由器的WAN 口和LAN 口又有什么区别?

现在的宽带路由器实际上是路由+ 交换机的一体结构,我们可以把它当成是两台设备。

WAN:接外部 IP 地址用,通常指的是出口,转发来自内部 LAN 接口的 IP 数据包。

LAN:接内部 IP 地址用,LAN 内部是交换机。我们可以不连接 WAN 口,把路由器当做普通交换机来使用。

无线局域网(Wireless LAN, WLAN)

WLAN 利用电磁波在空气中发送和接受数据,而无需线缆介质。WLAN 的数据传输速率现在已经能够达到 11Mbps,传输距离可远至 20km 以上。作为传统布线网络的一种替代方案或延伸,无线局域网把个人从办公桌边解放了出来,使他们可以随时随地获取信息,提高了员工的办公效率。

WLAN 使用 ISM (Industrial、Scientific、Medical) 无线电广播频段通信。WLAN 的 802.11a 标准使用 5 GHz 频段,支持的最大速度为 54 Mbps,而 802.11b 和 802.11g 标准使用 2.4 GHz 频段,分别支持最大 11 Mbps 和 54 Mbps 的速度。

那我们平时上网用的 WIFI,又是什么呢?

WIFI 是实现无线组网的一种协议(实际上是握手协议),WIFI 是 WLAN 的一个标准。WIFI 网络工作在 2.4G 或 5G 的频段。另外 3G/4G 也属于无线上网,但协议都不一样,费用很高!

虚拟局域网(Virtual Local Area Network,VLAN)

虚拟局域网( VLAN ),是指网络中的站点不拘泥于所处的物理位置,根据需要灵活划分不同的逻辑子网中的一种网络技术。

例如位于不同楼层的用户或者不同部门的用户可以根据需要加入不同的虚拟局域网:1 楼划分为 10.221.1.0 网段,2 楼划分为 10.221.2.0 网段等。

虚拟专用网络(Virtual Private Network,VPN)

虚拟专用网络功能是:在公用网络上建立专用网络,进行加密通讯。在企业网络中有广泛应用。VPN 网关通过对数据包的加密和数据包目标地址的转换实现远程访问。

在传统的企业网络配置中,要进行远程访问,传统的方法是租用 DDN(数字数据网)专线或帧中继,这样的通讯方案必然导致高昂的网络通讯和维护费用。对于移动用户(移动办公人员)与远端个人用户而言,一般会通过拨号线路(Internet)进入企业的局域网,但这样必然带来安全上的隐患。

让外地员工访问到内网资源,利用 VPN 的解决方法就是在内网中架设一台 VPN 服务器。外地员工在当地连上互联网后,通过互联网连接 VPN 服务器,然后通过 VPN 服务器进入企业内网。为了保证数据安全,VPN 服务器和客户机之间的通讯数据都进行了加密处理。有了数据加密,就可以认为数据是在一条专用的数据链路上进行安全传输,就如同专门架设了一个专用网络一样,但实际上 VPN 使用的是互联网上的公用链路,因此 VPN 称为虚拟专用网络,其实质上就是利用加密技术在公网上封装出一个数据通讯隧道。有了 VPN 技术,用户无论是在外地出差还是在家中办公,只要能上互联网就能利用 VPN 访问内网资源,这就是 VPN 在企业中应用得如此广泛的原因。

那为什么在国内使用 VPN 就能访问国外的网址呢?

正常上网都要连线(有线或无线),而 VPN 就是指这条你连的线,只不过它是虚拟的。当连上 VPN 服务器后,我们的计算机就等于用一条线直接连到这个服务器上。即当我们联上美国的 VPN 服务器,就类似于我们直接用超长的网线把电脑跟美国的服务器联起来了。此后,所有接收/发送操作都经过这台美国服务器,就等于你人在美国一样。而我们又有疑问,我们干嘛那么麻烦,直接上国外网站就行了?因为,国外很多网址是被中国的国家防火墙所栏住,无法让我们我们访问。但是,这些防火墙大部分只能栏住国内的电脑,无法栏住国外的电脑。


一、LAN概念

  1、LAN,全称Local Area Network,中文名叫做局域网。

  顾名思义,LAN是指在某一区域内由多台计算机互联成的计算机组。一般是方圆几千米以内。局域网可以实现文件管理、应用软件共享、打印机共享、工作组内的日程安排、电子邮件和传真通信服务等功能。局域网是封闭型的,可以由办公室内的两台计算机组成,也可以由一个公司内的上千台计算机组成。

  

详谈LAN、WAN与WLAN概念及区别

 

  2、具体到路由器,我们一般组网,都是组建的LAN网络,用户在局域网里通信、传输文件。

  其获取到的是内部IP,LAN 内部是交换机。我们可以不连接 WAN 口,把路由器当做普通交换机来使用

  一般用到的LAN的场景:

  1,接电脑的网线,需要插到路由器的LAN口

  2,二级路由,一般都是从上级路由的LAN口接线

  

详谈LAN、WAN与WLAN概念及区别

 

  3、一般路由器的LAN口会图上颜色和WAN口区分,一般LAN口数目会多于LAN口。

  

详谈LAN、WAN与WLAN概念及区别

 二、WAN概念

  1、WAN,全称Wide Area Network,中文名叫做广域网。

  WAN是一种跨越大的、地域性的计算机网络的集合。通常跨越省、市,甚至一个国家。广域网包括大大小小不同的子网,子网可以是局域网,也可以是小型的广域网。

  

详谈LAN、WAN与WLAN概念及区别

 

    2、WAN:接外部 IP 地址用,通常指的是出口,转发来自内部 LAN 接口的 IP 数据包。

  基本每个路由器都有WAN口,当然也有路由猫这种特例。

  WAN的应用场景:

  1,从猫引出的来网线,要插到路由器的WAN口

  2,二级路由,上级网线插到二级路由的WAN口

  

详谈LAN、WAN与WLAN概念及区别

 

  3、一般路由器都会有一个WAN口,也有多个WAN口的路由。

  

详谈LAN、WAN与WLAN概念及区别

 

  三、WLAN概念

  1、WLAN,全称Wireless LAN, 无线局域网。

  和LAN不同,WLAN的数据通过电磁波传输,也就是常说的空气传输。WLAN 利用电磁波在空气中发送和接受数据,而无需线缆介质。

  WLAN 使用 ISM (Industrial、Scientific、Medical) 无线电广播频段通信。WLAN 的 802.11a 标准使用 5 GHz 频段,支持的最大速度为 54 Mbps,而 802.11b 和 802.11g 标准使用 2.4 GHz 频段,分别支持最大 11 Mbps 和 54 Mbps 的速度。最新的11AC已经达到竟然的1.3Gbps。

  

详谈LAN、WAN与WLAN概念及区别

 

  2、由于WLAN采用全新的802.11协议,其设置要比普通的有限路由器复杂,好多朋友在配置无线网络的时候遇到问题。

  同时,WLAN没有硬件接口,支持WLAN的路由器,可以通过ISM定义的电磁波来彼此通信。

  当然这里不做重点介绍,感兴趣的朋友可以留言讨论。

  

LAN、WAN、WLAN的区别

 

  LAN、WAN与WLAN区别总结:

  对LAN、WAN、WLAN,要放在一起理解,理解其在网络通信中扮演的角色。

  下图为LAN、WAN、WLAN的混合组网。

  

详谈LAN、WAN与WLAN概念及区别

 

  通俗点说,WAN口是对外的接口,和运营商、上级网络打交道。

  LAN和WLAN是对内的接口,内部的电脑、手机、PAD,都是接入到LAN或者WLAN。

  一般的无线路由器,包含了完整的LAN、WAN、WLAN功能。

  

详谈LAN、WAN与WLAN概念及区别

 

  LAN、WAN与WLAN分别为局域网、广域网和无线局域网,通过教程介绍之后,想必大家对他们的概念也有一定了解了吧。



NAPT的穿越,包括简单的设置路由实现

NAT(Network Address Translators),网络地址转换:网络地址转换是在IP地址日益缺乏的情况下产生的,它的主要目的就是为了能够地址重用。NAT分为两大类,基本 的NAT和NAPT(NetworkAddress/Port Translator)。

 

基本的NAT会改变IP包中的原IP地址,但是不会改变IP包中的端口,关于基本的NAT可以参看RFC1631

另外一种NAT叫做NAPT,从名称上我们也可以看得出,NAPT不但会改变经过这个NAT设备的IP数据报的IP地址,还会改变IP数据报的TCP/UDP端口。

 

由于NAPT 比较常见,这里只介绍NAPT

NATP原理

NAPT(Network Address Port Translation)即网络端口地址转换,就是将多个内部地址映射为一个合法公网地址,但以不同的协议端口号与不同的内部地址相对应。也就是<内部地址+内部端口><外部地址+外部端口>之间的转换,内部端口与外部端口不一定相同,由端口映射规则决定。NAPT普遍用于接入设备中,它可以将中小型的网络隐藏在一个合法的IP地址后面。

NAPT使得一组主机可以共享唯一的外部地址,当位于内部网络中的主机通过NAT设备向外部主机发起会话请求时,NAT设备就会查询NAT表,看是否有相关会话记录,如果有相关记录,就会将内部IP地址及端口同时进行转换,再转发出去;如果没有相关记录,进行IP地址和端口转换的同时,还会在NAT表增加一条该会话的记录。外部主机接收到数据包后,用接受到的合法公网地址及端口作为目的IP地址及端口来响应,NAT设备接收到外部回来的数据包,再根据NAT表中的记录把目的地址及端口转换成对应的内网IP地址及端口,转发给该内部主机。

 

端口映射规则:
内网的一台电脑要上因特网,就需要端口映射,端口映射分为动态与静态。

动态端口映射:
内网中的一台电脑要访问新浪网,会向NAPT网关发送数据包,包头中包括对方(新浪网)IP,端口和本机IP,端口,NAPT网关会把本机IP,端口替换成自己的公网一个未使用的端口,并且会记下这个映射关系,为以后转发数据包使用。然后再把数据发判断给新浪网,新浪网收到数据后做出反应,发送数据到NAPT网关的那个未使用的端口,然后NAPT网关将数据转发给内网中的那台电脑,实现内网和公网的通讯,当连接关闭时,NAPT网关会释放分配给这条连接的端口,以便以后的连接可以继续使用。NAPT网关的工作方式,由网关自动添加NAPT记录,一个映射关系。

静态端口映射:
就是在NAPT网关上开放一个固定的端口,然后设定此端口收到的数据要转发给内网的哪个IP和端口,不管有没有连接,这个映射关系都会一直存在。就可以让公网主动访问内网的一个主机,可以通过设置路由器获得

 

原理图如下:

 

 

以下将进入NAPT的穿越方法说明,共三种方法。

 

第一种方法,(前提你的路由器是直接连接广域网)修改路由器转发规则中虚拟服务选项,设置固定的端口段给与局域网中一台主机,则这台主机利用所固定的端口段内的端口建立连接时,路由器只会改变局域网的IP地址,换成外网IP地址,端口号不变,这样就有对应的端口,所以外网其他路由器下的局域网主机就可以通过你设定的端口号和你的所在局域网的外网IP发送消息,路由器看到是这个固定端口的,就会直接传送到你的主机,而不会传到其他的主机。或者设置DMZ主机,将自己暴露在广域网,也可以实现端口号不变。再将其他局域网下的主机同样设置,即可以端到端的双向通信。

 

第二种方法,基于UDP的多对一规则,(前提你的路由器是直接连接广域网)修改路由器转发规则中虚拟服务选项,设置固定的端口段给与局域网中一台主机,则这台主机利用所固定的端口段内的端口建立连接时,路由器只会改变局域网的IP地址,换成外网IP地址,端口号不变,这样就有对应的端口,所以外网其他路由器下的局域网主机就可以通过你设定的端口号和你的所在局域网的外网IP发送消息,路由器看到是这个固定端口的,就会直接传送到你的主机,而不会传到其他的主机。或者设置DMZ主机,将自己暴露在广域网,也可以实现端口号不变。让你的主机选择固定的端口监听广域网下的直接局域网下的主机主动发出的请求,通过你的主机获得消息,即可获得消息的来源,即消息的发送者的外网IP和路由器基于NTAP映射规则分给他的端口,则你的主机就可以通过这个IP和端口和他实现双向通信。

各种路由器修改方法可以参考:http://wenku.baidu.com/view/f29c8fc69ec3d5bbfd0a749c.html

 

第三种,利用服务器,(参考http://blog.csdn.NET/feiren127/article/details/5571636)现在ClientA要向ClientB发送数据(比如文件),首先ClientA和B分别通过他们的NATA和B在ServerS上登记,ServerS记录他们NAT的IP和端口号(因为是NAT和ServerS通信的,所以ServerS能也只能得到NAT的地址和端口号)。现在ClientA通过NATA告诉ServerS说要传文件给Client,ServerS就把ClientA的NATA的IP和端口号发送给NATB(因为B的NAT端口已经在ServerS上有记录了),ClientB收到后发送连接数据给NATA,这个时候NATA是不会接受ClientB发过来的包的,因为ClientA没有连接过B,NATA就不会接受B的数据了。虽然B连接A不成功,但是B已经连接过A了,NATB记住了,这时B告诉ServerS叫A过来连,A收到命令后连接B就成功了,于是建立连接,后面的传输就成功了!

 

整个过程如下:

 

ClientA-->NATA-->ServerS(A在S登记NAip:NAport)

ClientB-->NATB-->ServerS (B在S登记NBip:NBport)

 

ClientA-->NATA-->ServerS(A告诉S,要发数据给B)

ServerS-->NATB-->ClinetB(S把NAip:NAport发给B,并告诉B,A要发数据给你了)

 

ClientB-->NATB-->NATA(NAip:NAport)-->Dropped-->ClientA(B发的包别NATA丢掉了,A是收不到了)

ClientB-->NATB-->ServerS(B等不到A的回应,就告诉S,叫A过来连我吧)

 

ServerS-->NATA-->ClinetA(S把NBip:NBport发给A,并告诉A,B连不到你,你连B吧)

ClientA-->NATA-->NATB(NBip:NBport)-->ClinetB(B收到A的连接请求,要发送应答给A)

ClientB-->NATB-->NATA-->ClientA(A收到B的应答,后面可以发送数据给NBip:NBport了)

 

ClientA-->NATA-->NATB-->ClientB(现在开始就从这条路发数据了)

 

注意:

须知道,除专线外的IP地址都是动态的,可以用动态域名和绑定动态IP,既可以虚拟的获得静态IP,花生壳软件可以做到。

 

 

1、通过路由器的转发规则的虚拟服务器设置分配固定的端口段给局域网中的主机,这样局域网中的主机中的进程就可以在给定的端口段中选择端口给自己用,这样就可以直接映射成进程的所设置的端口,即此端口号在外网也是一样,即只是映射了局域网IP地址,端口号不变,即局域网中的主机获得了部分服务器的功能,实现了部分端到端的传输。

 

 

2、通过路由器的转发规则的DMZ选项,直接利用局域网中主机的IP地址,设置局域网中主机为DMZ主机,即可完全获得服务器的功能,即使局域网中的主机充当了服务器,实现了端到端的传输,但是有些端口会被其他局域网中的主机占用,导致不能使用。

 

如果主机未设定固定的局域网IP,则可能会在重启后改变本机的局域网IP,这得重新设置路由器


NAT(Network Address Translators),网络地址转换:网络地址转换是在IP地址日益缺乏的情况下产生的,它的主要目的就是为了能够地址重用。NAT分为两大类,基本 的NAT和NAPT(NetworkAddress/Port Translator)。

 

基本的NAT会改变IP包中的原IP地址,但是不会改变IP包中的端口,关于基本的NAT可以参看RFC1631

另外一种NAT叫做NAPT,从名称上我们也可以看得出,NAPT不但会改变经过这个NAT设备的IP数据报的IP地址,还会改变IP数据报的TCP/UDP端口。

 

由于NAPT 比较常见,这里只介绍NAPT

NATP原理

NAPT(Network Address Port Translation)即网络端口地址转换,就是将多个内部地址映射为一个合法公网地址,但以不同的协议端口号与不同的内部地址相对应。也就是<内部地址+内部端口><外部地址+外部端口>之间的转换,内部端口与外部端口不一定相同,由端口映射规则决定。NAPT普遍用于接入设备中,它可以将中小型的网络隐藏在一个合法的IP地址后面。

NAPT使得一组主机可以共享唯一的外部地址,当位于内部网络中的主机通过NAT设备向外部主机发起会话请求时,NAT设备就会查询NAT表,看是否有相关会话记录,如果有相关记录,就会将内部IP地址及端口同时进行转换,再转发出去;如果没有相关记录,进行IP地址和端口转换的同时,还会在NAT表增加一条该会话的记录。外部主机接收到数据包后,用接受到的合法公网地址及端口作为目的IP地址及端口来响应,NAT设备接收到外部回来的数据包,再根据NAT表中的记录把目的地址及端口转换成对应的内网IP地址及端口,转发给该内部主机。

 

端口映射规则:
内网的一台电脑要上因特网,就需要端口映射,端口映射分为动态与静态。

动态端口映射:
内网中的一台电脑要访问新浪网,会向NAPT网关发送数据包,包头中包括对方(新浪网)IP,端口和本机IP,端口,NAPT网关会把本机IP,端口替换成自己的公网一个未使用的端口,并且会记下这个映射关系,为以后转发数据包使用。然后再把数据发判断给新浪网,新浪网收到数据后做出反应,发送数据到NAPT网关的那个未使用的端口,然后NAPT网关将数据转发给内网中的那台电脑,实现内网和公网的通讯,当连接关闭时,NAPT网关会释放分配给这条连接的端口,以便以后的连接可以继续使用。NAPT网关的工作方式,由网关自动添加NAPT记录,一个映射关系。

静态端口映射:
就是在NAPT网关上开放一个固定的端口,然后设定此端口收到的数据要转发给内网的哪个IP和端口,不管有没有连接,这个映射关系都会一直存在。就可以让公网主动访问内网的一个主机,可以通过设置路由器获得

 

原理图如下:

 

 

以下将进入NAPT的穿越方法说明,共三种方法。

 

第一种方法,(前提你的路由器是直接连接广域网)修改路由器转发规则中虚拟服务选项,设置固定的端口段给与局域网中一台主机,则这台主机利用所固定的端口段内的端口建立连接时,路由器只会改变局域网的IP地址,换成外网IP地址,端口号不变,这样就有对应的端口,所以外网其他路由器下的局域网主机就可以通过你设定的端口号和你的所在局域网的外网IP发送消息,路由器看到是这个固定端口的,就会直接传送到你的主机,而不会传到其他的主机。或者设置DMZ主机,将自己暴露在广域网,也可以实现端口号不变。再将其他局域网下的主机同样设置,即可以端到端的双向通信。

 

第二种方法,基于UDP的多对一规则,(前提你的路由器是直接连接广域网)修改路由器转发规则中虚拟服务选项,设置固定的端口段给与局域网中一台主机,则这台主机利用所固定的端口段内的端口建立连接时,路由器只会改变局域网的IP地址,换成外网IP地址,端口号不变,这样就有对应的端口,所以外网其他路由器下的局域网主机就可以通过你设定的端口号和你的所在局域网的外网IP发送消息,路由器看到是这个固定端口的,就会直接传送到你的主机,而不会传到其他的主机。或者设置DMZ主机,将自己暴露在广域网,也可以实现端口号不变。让你的主机选择固定的端口监听广域网下的直接局域网下的主机主动发出的请求,通过你的主机获得消息,即可获得消息的来源,即消息的发送者的外网IP和路由器基于NTAP映射规则分给他的端口,则你的主机就可以通过这个IP和端口和他实现双向通信。

各种路由器修改方法可以参考:http://wenku.baidu.com/view/f29c8fc69ec3d5bbfd0a749c.html

 

第三种,利用服务器,(参考http://blog.csdn.NET/feiren127/article/details/5571636)现在ClientA要向ClientB发送数据(比如文件),首先ClientA和B分别通过他们的NATA和B在ServerS上登记,ServerS记录他们NAT的IP和端口号(因为是NAT和ServerS通信的,所以ServerS能也只能得到NAT的地址和端口号)。现在ClientA通过NATA告诉ServerS说要传文件给Client,ServerS就把ClientA的NATA的IP和端口号发送给NATB(因为B的NAT端口已经在ServerS上有记录了),ClientB收到后发送连接数据给NATA,这个时候NATA是不会接受ClientB发过来的包的,因为ClientA没有连接过B,NATA就不会接受B的数据了。虽然B连接A不成功,但是B已经连接过A了,NATB记住了,这时B告诉ServerS叫A过来连,A收到命令后连接B就成功了,于是建立连接,后面的传输就成功了!

 

整个过程如下:

 

ClientA-->NATA-->ServerS(A在S登记NAip:NAport)

ClientB-->NATB-->ServerS (B在S登记NBip:NBport)

 

ClientA-->NATA-->ServerS(A告诉S,要发数据给B)

ServerS-->NATB-->ClinetB(S把NAip:NAport发给B,并告诉B,A要发数据给你了)

 

ClientB-->NATB-->NATA(NAip:NAport)-->Dropped-->ClientA(B发的包别NATA丢掉了,A是收不到了)

ClientB-->NATB-->ServerS(B等不到A的回应,就告诉S,叫A过来连我吧)

 

ServerS-->NATA-->ClinetA(S把NBip:NBport发给A,并告诉A,B连不到你,你连B吧)

ClientA-->NATA-->NATB(NBip:NBport)-->ClinetB(B收到A的连接请求,要发送应答给A)

ClientB-->NATB-->NATA-->ClientA(A收到B的应答,后面可以发送数据给NBip:NBport了)

 

ClientA-->NATA-->NATB-->ClientB(现在开始就从这条路发数据了)

 

注意:

须知道,除专线外的IP地址都是动态的,可以用动态域名和绑定动态IP,既可以虚拟的获得静态IP,花生壳软件可以做到。

 

 

1、通过路由器的转发规则的虚拟服务器设置分配固定的端口段给局域网中的主机,这样局域网中的主机中的进程就可以在给定的端口段中选择端口给自己用,这样就可以直接映射成进程的所设置的端口,即此端口号在外网也是一样,即只是映射了局域网IP地址,端口号不变,即局域网中的主机获得了部分服务器的功能,实现了部分端到端的传输。

 

 

2、通过路由器的转发规则的DMZ选项,直接利用局域网中主机的IP地址,设置局域网中主机为DMZ主机,即可完全获得服务器的功能,即使局域网中的主机充当了服务器,实现了端到端的传输,但是有些端口会被其他局域网中的主机占用,导致不能使用。

 

如果主机未设定固定的局域网IP,则可能会在重启后改变本机的局域网IP,这得重新设置路由器

猜你喜欢

转载自blog.csdn.net/eleven_xiy/article/details/73732147