Windows系统下的端口转发使用portproxy模式下的netsh命令,该命令的使用前提是要在管理员身份打开cmd进行执行。
1、查看所有规则
netsh interface portproxy show all
2、新增
netsh interface portproxy add v4tov4 listenaddress=localaddress listenport= localport connectaddress=destaddress connectport=destport protocol=tcp
-
listenaddress – 待连接的ip地址。
-
listenport – 待连接的tcp本地端口 。
-
connectaddress – 待连接被转发的本地或远程主机的ip地址(支持域名)
-
connectport – 从listenport转发到的tcp端口
例如:
netsh interface portproxy add v4tov4 listenaddress=127.0.0.1 listenport=9322 connectaddress=127.0.0.1 connectport=9222
解析:监听127.0.0.1:9322 端口的所有数据, 转发到127.0.0.1:9222
3、删除一条规则
netsh interface portproxy delete v4tov4 listenport=9322 listenaddress=127.0.0.1
4、查看监听端口
netstat -ano | findstr :3340
验证3340端口是否正在监听中,如果该命令没有返回任何信息,或者说通过netsh接口并没有实现端口转发的功能,那么需要查看下系统是否开启了iphlpsvc(ip Helper)服务。
5、清空当前所有的配置规则
netsh interface portproxy reset
总结
用这个还可以玩WSL2和CDP协议类似的案例
参考: