1、什么是端口映射

 这里说的端口映射是路由器上的端口映射。一般情况下,网络中路由器都有防火墙功能,互联网用户只能访问到你的路由器WAN口(接ADSL线口或是 固定的外网IP地址),而访问不了局域内部服务器或工作站。要想让外面用户访问到局域网的电脑,那么就要在路由器上做一个转发设置,也就是端口映射设置, 让用户的请求到了路由器后,能够转发到局域内部的机器上,例如游戏服务器或WEB服务器。这就是端口映射。
例如,在局域网中建建立一个web服务器,IP地址为:192.168.1.3,端口为80,此时在局域内部,只要在浏览器输入 http://192.168.1.3,就能打你web网站的内容,但如果要在因特网上访问此web服务器,打入http://192.168.1.3这 个局域网内网IP,肯定是访问不了的。当需要在外网访问这台服务器时,就要就192.168.1.3这台机器的80端口通过路由器映射到外网。除了web 服务外,其它的服务例如FTP、远程桌面等服务都可以将不同的端口映射出去,以便能在外网通过路由器来访问内网机器。一般的路由器都带有端口映射功能,以 下对目前使较多的ROS软路由的端口映射作一说明,并提出解决外网IP显示及回流设置。

2、ROS 2.96 的端口映射的设置

进入winbox,点击IP→ Firewall→Nat打开防火墙设置界面。点击左上角红色的“+”号,添加一条dstnat规则,其中dst.address 填写你要映射的外网IP,本例为218.87.96.xxx(此处请填入您的外网IP),然后选择protocol协议为6,即TCP协议,设置Dst. port(目标端口)为80。设置完成后如图1所示。

单击“Action”选项卡,在Action框中,选择“dst-nat” ,在“To.Address”框中填写内网提供服务的IP地址,本例为192.168.1.3,在“To.Port”填写内网提供服务的IP端口,这样基 本映射就完成了,如图2所示,此时可以在外网中输入你的外网IP,即可看到内网192.168.1.3WEB服务器上的网站了。以同样的方法可以设置 FTP和远程桌面。注意这些服务的端口都是不一样的,例如你有两台内网WEB服务器,80端口已经用掉了,第二台便来能映射到80上了,但可以映射到其它 没有使用过的端口上,例如81端口。例如可以将内网192.168.1.4:80映射到外网218.87.96.xxx:81端口上。这样就能在同一个外 网IP访问两台内网WEB服务器了。

3、IP显示和回流问题解决

4.  经过第二步的基本端口映射设置后,外部可以访问内网了,但存在一些不完善的地方,例如所有的外网访客的地址都是路由器的内网网关,本例为 192.168.1.1,如图3所示。这样就无法统计访客的来源,还有许多的不便,例如WEB中的论坛就无法屏蔽一些会员的IP了,因为大家都是 192.168.1.1。

原因是这样造成的:为了使整个内网的所有机子共享上网,在设置ROS时,我们都要设置一条srcnat规则,Action设置为 “Amasquerade”,Amasquerade是snat的一个特例,主要用在无固定ip网关的情况下,比如adsl拨号等,masquerade 比nat效率低的原因是nat直接指出需要伪装的源地址,而masquerade需要伪装的源地址必须到默网关中寻找,masquerade永远以默认网 关地址为ip伪装的源地址,所以首先效率慢了点,其次只能用在外网ip只有一个的情况,如果有多个wan接口就不能用masquerade,而只能用 nat,因为nat可以手工指定多个需要伪装的源ip地址,而masquerade却只能找到一个地址,就是默认网关的地址。由于NAT方设置较 Amasquerade复杂,加上现在大量的ROS教程都是以Amasquerade方式共享上网,所以目前在用的ROS大多数采用 Amasquerade设置共享。通过上面分析,我们可以看出为什么在端口映射后,外网访问的IP都成了内网网关,解决的方法有两种,一是改用nat方 式,这种方式有局限性,只能用于固定IP的外网,若是ADSL则不能用;另一个方法是通过调整masquerade的设置来完成显示外网IP,具体操作如 下,进入winbox,点击IP→ Firewall→Nat打开防火墙设置界面,双击原来建立的srcnat规则Amasquerade(用于共享上网),在“General”选项卡的 “Out. Interface”选中“LAN”即内网网卡,单击将前面的小框,在框中出现“!”,单击“OK”完成此设置。

 这样设置完成后,我们可以发现外网访客可以正常访问,而且IP显示也是正确的,但同时导致别一个问题,就是内网用户不能用外部ip访问映射的内部 服务器,要按下面方法解决:再增加一条对内网的规则,Action设置为“Amasquerade”,在“General”选项卡中,设置Chain为 “srcnat”,Src. Address为“192.168.0.0/21”由于本例中的内网有192.168.0、192.168.1、192.168.7等几个C类网段,所以 在此将子网设置为21,也就是255.255.248.0,设置好后如图5所示。一般的情况,只有一个网段时,例如192.168.1,可以设置子网掩码 为24,即255.255.255.0,此处可以填写:192.168.1.0/24,可以根据自己内网情况作相对应的修改。

  此到,内外网都能正常访问了且外网访客IP是正确的,此时内网用外网IP访问WEB时,显示的IP是内网网关地址,用这种方法可以实现内外网用 户都用网关外部ip访问映射的内部服务,并解决了外部用户显示的ip不正确问题,当然这种方法内网用户显示的ip还是不正确的,要解决内网显示ip问题, 可以在routeros中设dns服务器,用域名来访问,内网访问内网ip,外网访问外网ip就能完美解决。我想我们主要是要知道外网的IP,内网的IP 并不重要。所以至此设置就可以算是完毕了。

 下面说一回流的问题,其实所回流,就是将内网源地址为网段的所有机器对所有目标地址的需求全都进行源地址转换为外网IP,然后转发出去。所有从外 网回来的数据通过外网IP再回传到内网的机器,这样就保证了内网上网正常,但这样的效率下降到原来的50%,显然是不合算的。对于Amasquerade 来共享上网时,外网访问的IP显示还是内网网关,所以回流是不可取的。虽不可取,我们也把方法写出来,供大家参考,添加一条srcnat规则, src.address写上内网的网络地址,请注意,不是主机地址,指提是网段,若内网IP是192.168.0.X网段并且子网掩码是 255.255.255.0,那么就填写192.168.0.0/24,dst.address填写的是内网提供服务的主机IP protocol协议和port 端口请参看本文前面的内容,Action选项卡还是选择src-nat to.address则填写映射的外网IP,port 端口。

RouterOS 端口映射相关推荐

  1. RouterOS NAT伪装上网,NAT端口映射,HotspotWEB认证上网等的简单配置

    首先RouterOS目前的所有版本都不支持SISC硬盘.V3.0以下版本只能安装在IDE硬盘上,V3.0以上版本可以安装在U盘,CF卡等电子盘上. 下面以图文方式介绍一下在WINBOX中ROS V3. ...

  2. RouterOS配置端口映射的方法

    RouterOS配置端口映射的方法 首先,通过客户端winbox登陆ROS系统 然后,步骤:依次点击IP---Firewall---NAT---红色加号 在下图中的"General" ...

  3. 端口映射问题:Bad Request This combination of host and port requires TLS.

    错误信息: Bad Request This combination of host and port requires TLS. 遇到上面的错误信息:如果是通过域名访问,则该域名后配置的转发端口映射 ...

  4. Docker 入门系列(5)- Docker 端口映射(映射所有IP地址、映射到指定地址和指定端口、映射指定地址任意端口、查看映射端口配置)

    端口映射 映射容器内应用的服务端口到本地宿主主机 1. 从外部访问容器应用 在启动容器的时候,如果不指定对应的参数,在容器外部是无法通过网络来访问容器内的网络应用和服务的.当容器中运行一些网络应用,要 ...

  5. linux实现nat转发和内部端口映射

    路由机 eth0:114.114.114.114(公网ip) eth1:192.168.1.1(内网ip) pc1 eth0:192.168.1.2(内网ip) eth1(拨号ip) pc2 eth0 ...

  6. 度量快速开发平台端口映射的介绍

    度量快速开发平台在客户中部署的时候,可能会想内网与外网用户同时使用.一般情况下,服务端都是部署在内网的,那外网用户要访问,就可能用到端口映射的功能.端口映射基本都是在路由器上进行. 下面就是几个常用的 ...

  7. 远程usb端口映射_PLC远程控制

    如何实现PLC联网.PLC远程下载.PLC远程监控等功能,下面介绍PLC远程共享的方法! 随着物联网技术的发展和信息技术的普及,越来越多的PLC.HMI等自动控制产品的生产厂家或集成商迫切需要对现场设 ...

  8. 域名怎么设置非80端口_深信服网关怎么设置端口映射

    深信服上网行为管理软件很多客户在使用,本经验以深信服AD4.2为例设置端口映射. 方法/步骤 1.检查确认需要映射的接口 要设置端口映射之前我们需要先确认上网的网卡是哪一个,找到 系统概况---网络状 ...

  9. Linux下用iptables做端口映射

    Linux下用iptables做端口映射详细过程 在CentOS5.4上用iptables配置了端口映射,讲述详细的配置过程,供大家参考. [实现功能] server-A eth0      119. ...

  10. 【有图有真相】静态NAT、动态NAT、PAT、端口映射的详细配置过程

    实验要求:使用宿主机利用NAT地址转换技术访问虚拟机的Web80端口.全是***实弹的操作步骤. 实验前提:开启server 2008虚拟机并且搭建一个简单web服务.打开GNS3连接拓扑图的线路,一 ...

最新文章

  1. Linux命令之whereis
  2. 第十八章 应用举例:照片OCR-机器学习老师板书-斯坦福吴恩达教授
  3. Java提升篇:对象克隆(复制)
  4. boost::fibers模块实现multiple streams的测试程序
  5. 8个月打磨,一份送给程序员的「分布式系统」合集
  6. 前端学习(649):编译和解释性语言的区别
  7. 【Yarn】工作机制及任务提交流程
  8. 操作系统—内存管理的概念
  9. windows 2003 迁移域控制器到 windows 2008
  10. 寄存器和存储器的区别_汇编语言 第二章 寄存器
  11. 修复被病毒破坏的Winsock
  12. Louvain算法实现
  13. 仿微信雷达寻好友动画
  14. 企业微信网页应用开发 - 消息/事件回调接口
  15. INF安装信息文件①
  16. SOLO代码踩过的各种坑
  17. composer php 扩展,正确的Composer扩展包安装方法
  18. 三角剖分与Delaunay三角剖分及带约束的Delaunay三角剖分
  19. matlab基础总结与图像处理应用(上)
  20. 简单分析Python ctypes模块的WinDLL源码(我爱Python,吼吼~)

热门文章

  1. 【小程序】前端微信授权登录
  2. openresty性能调优
  3. minic 词法单元建立
  4. 文件系统系列之一:fat文件系统的结构分析
  5. Unity Shader Alpha Blend 填坑记录
  6. 学习C语言——字母金字塔
  7. 调试经验——使用VBA下载网络资源
  8. html当当书网站 html网上在线书城 html在线小说书籍网页 当当书城网页设计
  9. 机器学习处理信号分离_【火炉炼AI】机器学习054-用ICA做盲源分离
  10. 基于F340 实现Bridge功能(二):上位机应用程序编写