【问题标题】:port forwarding in windowswindows下的端口转发
【发布时间】:2012-07-16 13:31:33
【问题描述】:

我的电脑里有两个网卡:

主要的有本地ip -> 192.168.1.111 次要的具有本地 ip -> 192.168.0.200

主要的有互联网连接,第二个连接到IP为192.168.0.33的设备,它在端口80有一个http服务器。

我在主连接(端口 4422)中有一个 apache 服务器,我可以从任何地方访问,我现在想要的是当我检测到来自 4422 的连接时,我想将此连接重定向到 192.168.2.33:80

我怎样才能用 Windows 做到这一点?

【问题讨论】:

标签: windows windows-7 portforwarding


【解决方案1】:

我已经解决了,可以执行了:

netsh interface portproxy add v4tov4 listenport=4422 listenaddress=192.168.1.111 connectport=80 connectaddress=192.168.0.33

要删除转发:

netsh interface portproxy delete v4tov4 listenport=4422 listenaddress=192.168.1.111

Official docs

【讨论】:

  • 请务必安装 IPv6。根据MS KB article,netsh 需要一些 IPv6 库来配置端口代理功能。
  • 另外,您可以使用netsh interface portproxy resetnetsh interface portproxy delete 进行清理
  • 我尝试使用这种技术,虽然它有效,但速度非常慢。反而。我发现了一个名为 PassPort (sourceforge.net/projects/pjs-passport) 的实用程序,它执行绑定到特定 NIC 的相同类型的端口转发,但没有netsh 的性能问题。在Win2008SvrR2上安装运行良好。
  • 上述命令在 Windows7 和 Windows Server 2003 上对我不起作用。我也必须指定 protocol=tcp 参数。完整命令:netsh interface portproxy add v4tov4 listenport=4422 listenaddress=192.168.1.111 connectport=80 connectaddress=192.168.0.33 protocol=tcp
  • 请注意,这只适用于 TCP,所以如果你想转发 UDP 流量,那就别走运了。
【解决方案2】:

nginx 可用于在包括 Windows 在内的许多平台上转发 HTTP。通过更高级的配置可以轻松设置和扩展。基本配置可能如下所示:

events {}

http {
     server {

        listen 192.168.1.111:4422;

        location / {
            proxy_pass http://192.168.2.33:80/;
        }
     }
}

【讨论】:

  • 这是一个很好的 HTTP 转发解决方案,但仅适用于 HTTP 转发(有所有注意事项,例如 websockets 需要额外的配置)。对于 HTTPS 转发或其他任意协议(例如 RDP),它几乎没有用处。
  • 也就是说,它是一个非常好的 HTTP 转发解决方案,所以我很高兴它就在这里。
  • 这是为什么呢?您可以转发任何您喜欢的内容,包括 https
  • @uli 你在谈什么设置...分享一下会很有用
  • @UliKöhler Nginx 是一个解耦 TCP 连接的工具。你可以将它用于 HTTP、HTTPS、AMQP、WebSockets 等等。它被各种工具内部用于重定向和管理一般 TCP 连接。所以,这是正确的解决方案。另见netfxharmonics.com/2016/03/nginx
【解决方案3】:

每当需要时,我都会使用这个小工具: http://www.analogx.com/contents/download/network/pmapper/freeware.htm

该实用程序最后一次更新是在 2009 年。我注意到在我的 Win10 机器上,有时打开新窗口时它会挂起几秒钟。除了那个 UI 故障,它仍然可以正常工作。

【讨论】:

    猜你喜欢
    • 2011-04-12
    • 1970-01-01
    • 2012-09-17
    • 1970-01-01
    • 2016-06-22
    • 2020-09-22
    • 1970-01-01
    • 2012-01-12
    相关资源
    最近更新 更多