【发布时间】:2011-04-12 20:51:48
【问题描述】:
如何在 Windows 7 上将端口 xxx 上的传入请求重定向到 localhost:yyy?
Development Server (vs 2008) 只允许从 localhost 进行访问,这还不够好。我需要在不同的计算机上测试我的应用。
【问题讨论】:
标签: c# asp.net windows-7 portforwarding
如何在 Windows 7 上将端口 xxx 上的传入请求重定向到 localhost:yyy?
Development Server (vs 2008) 只允许从 localhost 进行访问,这还不够好。我需要在不同的计算机上测试我的应用。
【问题讨论】:
标签: c# asp.net windows-7 portforwarding
感谢大家的建议,虽然我自己找到了答案。
我下载了 Microsoft SOAP Toolkit 版本 3 并启动了 MSSoapT,在端口 8080 上创建了一个格式化跟踪侦听,转发到主机:127.0.0.1 端口:3804。我的问题是我使用了“localhost”而不是“127.0.0.1”。
现在,从其他计算机通过端口 8080 向我的开发计算机发出的每个请求都将重定向到端口 3804,其中 ASP.NET 开发服务器在调试 VS.NET webapps 时静态设置为侦听。
【讨论】:
在命令提示符下。
$> netsh
$> interface portproxy
$> add v4tov4 listenport=xxx connectaddress=127.0.0.1 connectport=yyy protocol=tcp
见:http://technet.microsoft.com/en-us/library/cc776297%28WS.10%29.aspx#BKMK_1
【讨论】:
netsh interface portproxy add v4tov4 ... 这样在一行中执行此操作(对于登录脚本),但我对 Windows 的了解还不够好,不知道如何在登录(并运行启动脚本)之前将其设为系统默认值。
如果这确实是为了进行某些测试,您可以创建一个侦听端口的服务器,当它接收到传入连接时会生成一个线程,该线程会打开与实际本地服务器的连接,然后等待数据到来在任一端并将其洗牌到另一端。如果任一套接字关闭,工作线程将终止。这显然不是一个可扩展的解决方案,但为了测试它应该很容易做到这一点。
【讨论】:
不太确定您在寻找什么。但是,当您有一个路由器并且您需要将特定路由器端口上的请求显式转发到 LAN 计算机上的特定 IP 和端口时,端口转发将是相关的。如果您想从同一网络上的其他 LAN 计算机访问 Web 服务器,那么 http://ip-address 应该可以正常工作。还要确保您的 Web 服务器正在侦听 LAN IP,而不仅仅是绑定到 localhost。
【讨论】:
我使用的是 Windows 7 64 位,无法让 Microsoft SOAP 工具包在我的机器上进行端口转发,并且不喜欢我在那里找到的免费端口转发软件,所以我只是更改了我的 VS 2010 网络使用本地 iis 的应用程序,我知道这对运行 2008 的人没有帮助,但如果你有 2010,它可以工作...这是我的更改的屏幕截图:我这样做是为了在 iPad 上进行测试...
【讨论】: