HttpListener在本地网络上工作,但不在外部工作

时间:2015-06-14 01:54:01

标签: networking

我正在尝试启动侦听端口并响应HTTP请求的应用程序。我在通过提供端口转发的Netgear路由器连接的Windows 8计算机上。我有:

  • 修改了我的某个域的DNS区域文件,指向分配给我的电缆调制解调器的IP地址
  • 向我的路由器添加了一个端口转发规则,用于将请求发送到端口8080到我计算机上的端口8081
  • 在我的Windows防火墙上打开端口8081
  • 执行netsh http add urlact http://+:8081/ user = Everyone listen = yes作为管理员
  • 启动我的应用程序,该应用程序使用在http://codehosting.net/blog/BlogEngine/post/Simple-C-Web-Server.aspx找到的简单网络服务器解决方案,该解决方案使用前缀为http://+:8081/的HttpListener对象。

本地网络上的任何计算机上,我都可以浏览到http://home.example.com:8080/blah/blah,一切正常。每当我从互联网上其他地方连接的机器尝试相同的URL时,连接就会超时。我曾尝试使用IP地址代替域名,并尝试禁用我的Windows防火墙(暂时),仍然没有运气。

我确信这更像是一个网络设置问题,而不是代码问题,但我想我还是会问,看看我能做些什么。对不起上面网址中的空格。这是我发给SO的第一篇文章,我显然没有足够的声誉来发布超过一个链接。

1 个答案:

答案 0 :(得分:-1)

通过“互联网上的其他地方”,我假设您正在尝试从其他ISP访问它。

一些互联网服务供应商的问题是,除非您为“商务舱”连接付费,否则他们会做各种各样的技巧以确保您仍然是“消费者”。您需要的是一个unNATed静态IP地址。

我的意思是,您家中可能无法访问的IP地址可能无法被外部访问,因为ISP实际上是为您寻址的NAT(或其他)。由于IP4地址有限,这是一种相当普遍的做法。如果您真的想通过WWW访问服务,我建议您将产品转移到VPN,或者至少是商品托管服务提供商。

修改:尝试使用Hamachi

等VPN服务