您的位置:首页 > 其它

NAT&Port Forwarding&Port Triggering

2014-08-08 15:55 204 查看


NAT

    Nat,网络地址转换协议。主要功能是实现局域网内的本地主机与外网通信。

    在连接外网时,内部Ip地址需要转换为网关(一般为路由器Ip地址)(端口号也需要相应的转换)

    如:QQ程序

    在一个局域网中,路由器(网关)WAN侧ip为200.0.0.123

    局域网三台计算机:计算机A 192.168.0.10,计算机B
192.168.0.20,计算机C 192.168.0.30

    分别登陆一个qq程序,在各自机子上,IP和Port分别为

    计算机A 192.168.0.10:4000,计算机B 192.168.0.20:4000,计算机C
192.168.0.30:4000

    但是本局域网只有一个公网ip即200.0.0.123,因此三个qq域外网通讯据需要将ip转换为公网ip,相应地为了不使端口号冲突,Port号也需要进行转换。

    路由器(网关)通过NAT协议将3个qq程序转换为 计算机A 200.0.0.123:4000,计算机B 200.0.0.123:4001,计算机C 200.0.0.123:4002,

    再接收到qq服务器发来的数据流失,再讲Port4000的发给A,Port:4001的发给B

    这就实现内网程序与外网的通讯。


Port Forwarding

        前面叙述了内网程序如何访问外网。但是如果在内网搭建了服务器,外网如何访问内网服务器呢?Port
Forwarding提供了该功能。

        假设局域网有一ftp服务器在计算机上,可以通过Port
Forwarding设置,使得200.0.0.123接收到的ftp流入包均直接转发给计算机A,即数据包在内网的目的地址直接是:192.168.0.10:21。即外网直接通过200.0.0.123:21就可以访问计算机A上的ftp服务器。

      
  假设计算机A和B分别搭建了FTP服务器,端口号均为21.。。(局域网相关ip地址同上一例子)。 通过手动进行Port
Forwarding设置,指定计算机A的端口号映射为5050,指定计算机A的端口号映射为5051。 这样外网要访问服务器A的ftp地址时,则使用200.0.0.123:5050,访问服务器B的ftp:200.0.0.123:5051

         


Port Triggering

        配置数据流出的端口(triggered port)和数据流出的端口(forwarded port)。

        使得外网流入forwarded port的数据流均转向使用triggered
port的计算机。

        在Port Forwarding仅有一个ftp服务器的例子中,可以设置计算机A(有ftp服务器)的端口为5050,然后配置triggered
port为5050,forwarded port为21,那流入port21的数据流就可以找到计算机A的ftp服务器。

        ——以上部分为个人理解,不保证准确。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: