通过 Windows
实现端口转发。本文为参考转发文章
使用Portproxy
模式下的Netsh
命令即能实现Windows
系统中的端口转发,转发命令如下:
1 | netsh interface portproxy add v4tov4 listenaddress=[localaddress] listenport=[localport] connectaddress=[destaddress] |
解释一下这其中的参数意义
listenaddress
– 等待连接的本地ip地址listenport
– 本地监听的TCP端口(待转发)connectaddress
– 被转发端口的本地或者远程主机的ip地址connectport
– 被转发的端口
举个例子,服务器内网IP是172.28.1.76
,需要将27001
端口转发到国外服务器10.17.29.1
的37033
端口,那么命令如下:
1 | netsh interface portproxy add v4tov4 listenaddress=172.28.1.76 listenport=27001 connectaddress=10.17.29.1 connectport=37033 |
下面的命令是用来展示系统中的所有转发规则:
1 | netsh interface portproxy show v4tov4 |
删除刚才创建的那个转发的命令:
1 | netsh interface portproxy delete v4tov4 listenaddress=172.28.1.76 listenport=27001 |
注意:连接时请确保防火墙(Windows
防火墙或者其他的第三方防护软件)允许外部连接到一个全新的端口,如果不允许,那么只能自行添加一个新的Windows
防火墙规则。
该命令的常用参数如下:
netstat -ano | find listenport
查看是否启动成功netsh interface portproxy show all
显示系统中的转发规则列表netsh interface portproxy dump
查看portproxy设置netsh interface portproxy delete v4tov4 listenport=localport listenaddress=localaddress
netsh interface portproxy reset
清除所有端口转发规则