端口转发的作用(什么叫端口转发)
导语:最常用的几个端口转发的例子
很多情况下,我们往往需要通过对某个端口进行转发(端口映射)实现某些特殊功能,比如堡垒机和负载均衡什么的。在这里我就稍微总结了几种最常用的端口转发方式供大家参考。
Linux防火墙模式——反向NAT
这种模式大多是要求用户很快速的实现将外网的某个端口eth0 1.1.1.1:80的流量引流到内网的一台主机10.0.0.1:8080中,本机内网IP eth1 10.0.0.2这种模式性能是毋庸置疑的,但相对来说稳定性和可控性不佳,往往用于临时过渡。
sysctl net.ipv4.ip_forward=1 !/bin/sh
localIP='192.168.1.1'
removteIP='1.2.3.4'
ports='25 80 110' 创建一个临时的管道文件tunnel
netcat -l -p 81 0 < tunnel | netcat -l -p 80 | tee tunnel
socat
其实这个命令根上一个非常类似,从名字上就看得出这个是针对于linux下socket文件的netcat。多数Linux都可以通过默认源来安装。由于是直接建立本地的socket文件,就不需要像上例那样创建管道文件了。
把所有本地的80号转移到10.0.0.1的8080上
socat -d -d -l TCP4-LISTEN:80,reuseaddr,fork,su=nobody TCP4:10.0.0.1:8080
Windows 的netsh
说到底我们用的最多的还是windows,尽管装一个cygwin可以实现几乎上面所有的操作,但最佳的解决方案还是用原生的吧。netsh是windows的一个网络工具,只要你愿意,你在命令行下可以通过它实现几乎所有的windows网络操作。
还是把本地80转移到10.0.0.1的8080
netsh interface portproxy add listenport=80 connectaddress=10.0.0.1 connectport=8080
本文内容由小春整理编辑!