需求原因:电脑C可以访问内网其中一台电脑A,但是无法访问与之相邻的电脑B,而电脑A可以访问电脑B。
需要在电脑A上进行端口转发,以至于电脑C可以直接访问电脑B
电脑A IP地址:192.168.5.23、10.0.0.2
电脑B IP地址:192.168.5.1
电脑C IP地址:10.0.0.1
实施方案:
将电脑A的8088端口映射到电脑B的80,使电脑C可以直接远程到电脑B的80端口,命令如下:
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=8088 connectaddress=192.168.5.1 connectport=80
(此命令在电脑A上运行)
实现效果:
在电脑C上直接访问 http://127.0.0.1:8088 或者 http://192.168.5.23:8088 后实际访问的是 http://192.168.5.1:80的服务
命令解析:
netsh interface portproxy add v4tov4 listenaddress=本地监听地址 listenport=监听端口 connectaddress=转发目标的IP地址 connectport=转发目标的端口
netsh interface portproxy add v4tov4:这个格式是固定的,也就是IPV4协议下的端口代理转发
listenaddress:本地监听地址,如果想要任何IP都可以访问那就使用0.0.0.0
listenport:本地监听的端口
connectaddress:转发目标电脑B的IP地址
connectport:转发目标电脑B的端口
【netsh interface portproxy命令介绍】
查看端口转发列表:
netsh interface portproxy show all
删除转发条目:
netsh interface portproxy delete v4tov4 listenaddress=0.0.0.0 listenport=8088
清除所有当前的端口转发规则:
netsh interface portproxy reset
注意:
1、新增和删除都不会有提示,可以通过查看命令查看结果。
2、转发的地址或端口错误也不会有提示。注意检查!
原文地址:
http://t.zoukankan.com/insane-p-13167477.html
https://www.cnblogs.com/f-carey/p/16589078.html