无法从公共 IP 访问自己的托管 Web 服务

无法从公共 IP 访问自己的托管 Web 服务

作为背景,我使用 iis 在自己的服务器上安装了 AspNet core webservice。从网络内部访问时,服务响应完美,但从外部访问(使用手机数据或朋友的计算机)时从未响应。我将服务安装在朋友给我的服务器上,用于测试目的,该服务器没有任何类型的防火墙,并且运行良好。

问题是我已经转发了端口并禁用了防火墙,但仍然无法从外部访问我自己服务器上的服务。我确实联系了我的 ISP 以检查是否有任何问题,他们确实禁用了路由器的防火墙,但仍然不起作用。我使用过https://www.yougetsignal.com/tools/open-ports/查看端口是否打开,结果是打开的,所以我认为转发可能不起作用,但 ISP 告诉我必须这样做。我做了以下事情:

  • 将路由器端口转发到我的本地端口。
  • Web 服务端口的入站规则。
  • 禁用防火墙。
  • 禁用路由器防火墙。
  • 在我的 iis 管理器上我设置了与所有 IP 的绑定。
  • 联系我的 ISP 检查是否存在问题。

编辑:我查看了防火墙日志,它显示允许在私有网络和网络外执行的请求,因此请求通过了防火墙,但在网络外执行时我从未收到响应。没有未绑定的规则,所以这不是问题。

此外,我的网络服务正在记录该请求,尽管该请求正在穿过防火墙,但它永远不会到达网络服务,因为没有它的日志。

编辑2:由于我的安装与以下安装类似关联我正在尝试按照链接中提到的步骤使用反向代理,但仍然不起作用。

以下是带有公共请求(第一个)和本地请求(第二个)的防火墙的日志数据:

#Version: 1.5
#Software: Microsoft Windows Firewall
#Time Format: Local
#Fields: date time action protocol src-ip dst-ip src-port dst-port size tcpflags tcpsyn tcpack tcpwin icmptype icmpcode info path
2019-07-16 15:50:49 ALLOW TCP 192.168.0.254 192.168.0.10 62469 5000 0 - 0 0 0 - - - RECEIVE
2019-07-16 15:52:05 ALLOW TCP 192.168.0.50 192.168.0.10 51251 5000 0 - 0 0 0 - - - RECEIVE

以下是我的网络服务的日志文件:

[2019/07/16 15:44:03.830]: (Info): Starting
[2019/07/16 15:52:07.765]: (Info): PublicController -> CheckServer
[2019/07/16 15:52:07.767]: (Info): CheckServer

我们可以看到防火墙并没有阻止该请求,但是该请求却从未到达 Web 服务。

编辑3: 我使用了 Microsoft Message Analyzer 并获得了以下本地请求: 本地请求分析器

以下是外部请求: 公共请求分析器

我看到它没有在公共请求中返回 HTTP 响应,我不知道为什么有什么建议?

答案1

好吧,我让它工作了,但我真的没有合适的解决方案。今天我的同事告诉我互联网停止工作了几次,可能是因为我的 ISP 在做什么,所以当我回来时,我尝试连接到网络服务并且它工作了,我没有做任何更改,我没有触摸或做任何事情,但现在它就可以正常工作了。我以为我的 ISP 在给他们打了太多次电话后已经解决了这个问题,所以我联系他们询问他们做了什么,他们告诉我他们什么也没做(我不知道该怎么想......)。

所以总而言之,如果我尝试的所有解决问题的方法都对您不起作用,那么只需联系 ISP 直到他们解决问题。

相关内容