
目标:将本地端口的数据转发到远端端口
应用场景:当我们需要拥有公网IP的远程主机做跳板,登陆到与远程主机同一个局域网的一台非公网IP机器时,可以在公网IP的远程主机做本地端口映射,转发到非公网IP机器上。这样就只要一次ssh到公网IP主机做了映射的端口就登陆到非公网IP主机上了。
远端端口映射(Remote Port Forwarding):
目标:将远端端口的数据转发到本地端口
应用场景:局域网主机可以通过公网IP访问远程主机,但是反过来的时候,如果不建立VPN,则可以通过在局域网机器上做远端端口映射,这样通过公网机器就能直接ssh到局域网机器。
动态端口映射(Dynamic Port Forwarding):
目标:充当SOCKS代理
应用场景:在浏览器中访问某些受局域网防火墙限制的网页时,就可以通过在本地机器做动态端口映射,代理到未受限制的主机上去访问。
通常服务器会有许多块网卡,因此也可能会连接到不同的网络,在隔离的网络中,某些服务可能会需要进行通信,此时服务器经过配置就可以承担起了转发数据包的功能。
一、Windows下实现端口映射
1. 查询端口映射情况
2. 查询某一个IP的所有端口映射情况
3. 增加一个端口映射
4. 删除一个端口映射
二、Linux下端口映射
1. 允许数据包转发
2. 设置端口映射
内网 和 外网 是相对Server4来说的。
Server1和Server2为内网环境的两台服务器;
Server3为外网环境下的一台服务器;
Server4为一台双网卡主机,分别连接192.168.50.0/24和172.16.2.0/24两个网络。
配置实验环境
用Python在Server1上搭建一个简单的HTTP服务
Server2、Server3同理
在client上访问Server1的资源
在client上访问Server2的资源
在client上访问Server3的资源
可以看到,外网的client是无法访问内网Server1,Server2的资源的。
临时配置
永久配置
如果需要永久配置,则将以上命令追加到/etc/rc.local文件。
在client上访问Server1的资源
在client上访问Server2的资源
在client上访问Server3的资源
Windows的IP信息如下
配置并查看端口映射情况
检查效果
在client节点上
END
1、首先检查设置的端口影射是否正确映射到内网的服务器。即设置的转发规则的IP地址是否为服务器的IP地址。2、无法访问内网的服务器,请检查服务器是否开启了。可以在局域网内使用其他的计算机访问一下服务器,确认服务器是否开启,并能成功访问。
3、检查是否映射了服务器所需的所有端口,有可能没有完全设置访问服务器所需的端口,导致访问失败。可以通过开启“DMZ主机”来检测一下,是否端口没有映射完全。若开启DMZ主机后,能正常访问服务器,则可能是端口添加不完全。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)