NAT

    Nat,网络地址转换协议。主要功能是实现局域网内的本地主机与外网通信。
    在连接外网时,内部Ip地址须要转换为网关(一般为路由器Ip地址)(port号也须要对应的转换)
    如: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号冲突,Port号也须要进行转换。
    路由器(网关)通过NAT协议将3个qq程序转换为 计算机A 200.0.0.123:4000。计算机B 200.0.0.123:4001。计算机C 200.0.0.123:4002,
    再接收到qqserver发来的数据流失,再讲Port4000的发给A。Port:4001的发给B
    这就实现内网程序与外网的通讯。

Port Forwarding

        前面叙述了内网程序怎样訪问外网。可是假设在内网搭建了server。外网怎样訪问内网server呢?Port
Forwarding提供了该功能。

        如果局域网有一ftpserver在计算机上,能够通过Port
Forwarding设置。使得200.0.0.123接收到的ftp流入包均直接转发给计算机A。即数据包在内网的目的地址直接是:192.168.0.10:21。即外网直接通过200.0.0.123:21就能够訪问计算机A上的ftpserver。

      
  如果计算机A和B分别搭建了FTPserver,port号均为21.。

。(局域网相关ip地址同上一样例)。

通过手动进行Port
Forwarding设置,指定计算机A的port号映射为5050。指定计算机A的port号映射为5051。

这样外网要訪问serverA的ftp地址时,则使用200.0.0.123:5050,訪问serverB的ftp:200.0.0.123:5051

         

Port Triggering

        配置数据流出的端口(triggered port)和数据流出的端口(forwarded port)。
        使得外网流入forwarded port的数据流均转向使用triggered
port的计算机。
        在Port Forwarding仅有一个ftpserver的样例中,能够设置计算机A(有ftpserver)的port为5050。然后配置triggered
port为5050,forwarded port为21,那流入port21的数据流就能够找到计算机A的ftpserver。

        ——以上部分为个人理解。不保证准确。


NAT&Port Forwarding&Port Triggering的更多相关文章

  1. 路由器port触发与转发---Port Forwarding & Port Triggering

    What is Port Triggering? If you have not read my explanation of port forwarding do so now. You can f ...

  2. How to do SSH Tunneling (Port Forwarding)

    How to do SSH Tunneling (Port Forwarding) In this post we will see how ssh works?, what is SSH tunne ...

  3. NAT&Port Forwarding&Port Triggering

    NAT     Nat,网络地址转换协议.主要功能是实现局域网内的本地主机与外网通信.     在连接外网时,内部Ip地址需要转换为网关(一般为路由器Ip地址)(端口号也需要相应的转换)     如: ...

  4. How To Set Up Port Forwarding in Linux

    Port forwarding usually used when we want our computer act like a router. Our computer receive the p ...

  5. Port Forwarding in Windows

    转自:http://woshub.com/port-forwarding-in-windows/ Since Windows XP there is a built-in ability in Mic ...

  6. OpenSSH高级功能之端口转发(Port Forwarding)

    在RedHat提供的系统管理员指南中提到OpenSSH不止是一个安全shell,它还具有X11转发(X11 Forwarding)和端口转发(Port Forwarding)的功能.X11功能一般用于 ...

  7. port大全及port关闭方法

    在网络技术中,port(Port)大致有两种意思:一是物理意义上的port,比方,ADSL Modem.集线器.交换机.路由器用于连接其它网络设备的接口,如RJ-45port.SCport等等.二是逻 ...

  8. 【原创】大叔经验分享(13)spark运行报错WARN Utils: Service 'sparkDriver' could not bind on port 0. Attempting port 1.

    本地运行spark报错 18/12/18 12:56:55 WARN Utils: Service 'sparkDriver' could not bind on port 0. Attempting ...

  9. STP 根桥、根port、指定port是怎样选举的

    学习CCNA过程中,对交换机的根桥.跟port以及指定port选举有些迷糊.也度娘了一番,总认为一部分人解释的不够全面精细.通过细致研究终于有了自己的理解,分享给大家,假设纰漏,欢迎指正. STP收敛 ...

随机推荐

  1. iOS10 推送通知详解(UserNotifications)

    iOS10新增加了一个UserNotificationKit(用户通知框架)来整合通知相关的API,UserNotificationKit框架增加了很多令人惊喜的特性: 更加丰富的推送内容:现在可以设 ...

  2. The Triangle--nyoj 18

    The Triangle 时间限制:1000 ms  |  内存限制:65535 KB 难度:4 描述 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 (Figure 1) Figure ...

  3. 杂项-DB:时序数据库

    ylbtech-杂项-DB:时序数据库 1.返回顶部 1. 时序数据库全称为时间序列数据库.时间序列数据库主要用于指处理带时间标签(按照时间的顺序变化,即时间序列化)的数据,带时间标签的数据也称为时间 ...

  4. 杂项:DS(目录服务)

    ylbtech-杂项:DS(目录服务) 1.返回顶部 1. DS(目录服务). 目录服务管理概述: 目录服务是扩展计算机系统中最重要的组件之一.虽然用户和管理通常不知道他们感兴趣对象的确切名称,但他们 ...

  5. python print 显示不同的字体

    显示格式: print('\033[显示方式;字体颜色;背景色m.....\033[0m') ------------------------------- 显示方式 | 效果 ----------- ...

  6. springboot整合ActiveMQ 2(主备模式,负载均衡)

    基本使用,https://www.tapme.top/blog/detail/2018-09-05-10-38 主备模式,https://www.tapme.top/blog/detail/2018- ...

  7. (转)(C++)关于抽象基类和纯虚函数

    ★抽象类:一个类可以抽象出不同的对象来表达一个抽象的概念和通用的接口,这个类不能实例化(创造)对象. ★纯虚函数(pure virtual):在本类里不能有实现(描述功能),实现需要在子类中实现.例: ...

  8. JavaScript的continue和break的区别

    <html> <head> <meta charset="utf-8"> <title>无标题文档</title> &l ...

  9. ndk编译curl以及使用

    百度搜ndk curl,大多都是转发的同一篇文章,文章中提供的lcur_config.h,不一定适合你的curl版本. 后来找到http://download.csdn.net/download/cs ...

  10. mysql 各项操作流程

    启动mysql:进入命令行输入:net start mysql 如果失败则显示:服务名无效,需跳转到指定Bin目录下进行启动mysql, 成功则进行下一步:登陆 :mysql -uroot -proo ...