NAT&Port Forwarding&Port Triggering

心已赠人 2022-08-10 17:52 190阅读 0赞

NAT

  1. Nat,网络地址转换协议。主要功能是实现局域网内的本地主机与外网通信。
  2. 在连接外网时,内部Ip地址需要转换为网关(一般为路由器Ip地址)(端口号也需要相应的转换)
  3. 如:QQ程序
  4. 在一个局域网中,路由器(网关)WANip200.0.0.123
  5. 局域网三台计算机:计算机A 192.168.0.10 计算机B 192.168.0.20 计算机C 192.168.0.30
  6. 分别登陆一个qq程序,在各自机子上,IPPort分别为
  7. 计算机A 192.168.0.104000 计算机B 192.168.0.20:4000 计算机C 192.168.0.30:4000
  8. 但是本局域网只有一个公网ip 200.0.0.123,因此三个qq域外网通讯据需要将ip转换为公网ip,相应地为了不使端口号冲突,Port号也需要进行转换。
  9. 路由器(网关)通过NAT协议将3qq程序转换为 计算机A 200.0.0.123 4000 计算机B 200.0.0.123 :4001 计算机C 200.0.0.123 :4002
  10. 再接收到qq服务器发来的数据流失,再讲Port4000的发给APort4001的发给B
  11. 这就实现内网程序与外网的通讯。

Port Forwarding

  1. 前面叙述了内网程序如何访问外网。但是如果在内网搭建了服务器,外网如何访问内网服务器呢? Port Forwarding提供了该功能。
  2. 假设局域网有一ftp服务器在计算机上,可以通过 Port Forwarding设置,使得200.0.0.123接收到的ftp流入包均直接转发给计算机A,即数据包在内网的目的地址直接是:192.168.0.10:21。即外网直接通过200.0.0.123:21就可以访问计算机A上的ftp服务器。
  3. 假设计算机AB分别搭建了FTP服务器,端口号均为21.。。(局域网相关ip地址同上一例子)。 通过手动进行 Port Forwarding设置,指定计算机A的端口号映射为5050 指定计算机A的端口号映射为5051 这样外网要访问服务器Aftp地址时,则使用 200.0.0.1235050,访问服务器Bftp 200.0.0.1235051

Port Triggering

  1. 配置数据流出的端口(triggered port)和数据流出的端口(forwarded port)。
  2. 使得外网流入 forwarded port的数据流均转向使用 triggered port的计算机。
  3. Port Forwarding仅有一个ftp服务器的例子中,可以设置计算机A(有ftp服务器)的端口为5050,然后配置 triggered port5050 forwarded port21,那流入port21的数据流就可以找到计算机Aftp服务器。
  4. ——以上部分为个人理解,不保证准确。

发表评论

表情:
评论列表 (有 0 条评论,190人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Mysql之触发器Trigger

    一、什么是触发器    简单来说就是当某个表发生某些操作(插入、删除、更新)时,自动触发预先编译好的多条sql语句 二、创建触发器    模式如:create trigg

    相关 mysql触发器trigger笔记

    > 触发器是与表有关的数据库对象,在满足定义条件时触发,并执行触发器中定义的语句集合。触发器的这种特性可以协助应用在数据库端确保数据的完整性。 > > 举个例子,比如你现在有

    相关 触发器(Trigger

    触发器(Trigger) 触发器是一种特殊类型的存储过程,不由用户直接调用。创建触发器时会对其进行定义,以便在对特定表或列作特定类型的数据修改时执行。触发器可以查询其他表

    相关 jq trigger()事件

    1、该事件触发由bind制作的自定义函数事件,在页面加载时自动执行 语法:('选择器').trigger('自定义函数名'); 代码示例: