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

Networking HttpListener在本地网络上工作,但不在外部工作,networking,Networking,我正在尝试启动一个应用程序,它侦听端口并响应HTTP请求。我在一台Windows 8计算机上,通过提供端口转发的Netgear路由器进行连接。我有: 修改了我的一个域的DNS区域文件,以指向分配给电缆调制解调器的IP地址 向我的路由器添加了一个端口转发规则,该规则将请求发送到我的计算机上的端口8080到端口8081 已打开Windows防火墙上的端口8081 以管理员身份执行netsh http add urlact user=everybody listen=yes 启动了我的应用程序,该应

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

  • 修改了我的一个域的DNS区域文件,以指向分配给电缆调制解调器的IP地址
  • 向我的路由器添加了一个端口转发规则,该规则将请求发送到我的计算机上的端口8080到端口8081
  • 已打开Windows防火墙上的端口8081
  • 以管理员身份执行netsh http add urlact user=everybody listen=yes
  • 启动了我的应用程序,该应用程序使用简单Web服务器解决方案,该解决方案使用前缀为的HttpListener对象
从我本地网络上的任何机器上,我都可以浏览到,一切都很好。每当我尝试从连接到Internet上其他地方的机器上访问相同的URL时,连接就会超时。我曾尝试使用IP地址代替域名,并尝试禁用我的Windows防火墙(暂时),但仍然没有成功

我确信这更多的是一个网络设置问题而不是代码问题,但我想我还是会问一下,看看我能做些什么。对不起,上面的URL中有空格。这是我第一次向SO发帖,我显然没有足够的声誉来发布一个以上的链接。

通过“互联网上的其他地方”,我假设您试图从不同的ISP访问它

一些ISP的问题是,除非你为“商务舱”连接付费,否则他们会采取各种手段确保你仍然是“消费者”。您需要的是一个未命名的静态IP地址

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


编辑:尝试VPN服务,如

如能就否决投票原因发表评论,我将不胜感激,以便解释任何差距或误解。