我无法从外部连接到本地网络服务器。我使用 Netgear R8000 Nighthawk X6 AC3200 路由器。以下是我到目前为止所做的一切:
我通过“高级”->“高级设置”->“远程管理”在端口 12900 上启用了远程管理
我已使用“高级”->“高级设置”->“动态 DNS”启用了动态 DNS。此后,浏览“dyn. DNS 主机名”(在端口 80 上)会将我带到路由器门户。https://{'dyn DNS 主机名'}:12900 也是如此。
我在我的家庭网络上设置了一个网络服务器(IIS),并配置了 3 个可通过端口 80、9100 和 9101 访问的站点。我设置了防火墙,以便网络上的其他机器可以访问这些站点。
然后,我(尝试)通过转到“高级”->“高级设置”->“端口转发”并设置 2 条规则来启用外部访问,
一条规则将端口 9100-9110 上的传入流量引导至 {本地 Web 服务器 IP} 端口 9100-9110。
第二条规则是将端口 80 上的流量引导至 {本地 Web 服务器 IP} 端口 80。我必须选择“HTTP 服务”,因为它不允许我为 80 和 443 设置自定义规则。
事情的经过如下:
ping 动态DNS主机名解析正确。
在我的网络中,从本地机器/电话可以正常浏览端口 80、9100 或 9101 上的 http://{dyn DNS 主机名}。
外部,浏览 https://{dyn DNS 主机名}:12900 有效,并将我带到路由器管理页面
在外部,浏览到 http://{dyn DNS 主机名}:9100 或 http://{dyn DNS 主机名}:9101 即可。
从外部浏览到 http://{dyn DNS 主机名} 或 http://{dyn DNS 主机名}:80 不起作用
如果我将另一个端口绑定(例如 9102)到端口 80 站点,它在外部可以正常工作。只有端口 80 一直失败!!
我尝试了很多方法,但都不起作用。请帮忙。
答案1
正如评论中所述...大多数互联网服务提供商都会阻止端口 80。如果您查看与提供商的协议,您会发现您无权在住宅级服务上托管网站。
因此,大多数住宅互联网服务提供商默认阻止端口 80、443、25、21 等。为了解决这个问题,您可以向路由器添加端口转发,例如将端口 80 流量路由到端口 9103。
并且,正如马克所评论的,请关闭路由器的远程管理功能,除非您绝对必须启用它。