NAT&Port Forwarding&Port Triggering

来源:互联网 发布:淘宝什么时候成立的 编辑:程序博客网 时间:2024/05/18 01:15

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服务器。
        ——以上部分为个人理解,不保证准确。

0 0
原创粉丝点击