Macos Monterey 上的 Apache 服务器不接受外部公共 IP 连接...为什么?

Macos Monterey 上的 Apache 服务器不接受外部公共 IP 连接...为什么?

我使用的是 MacOS Monterey 12.4,并配置了一个 Apache 2.4 服务器,其中的虚拟主机会监听0.0.0.0:80我主机上的所有接口 ()。我在 chrome 上测试了我的私有 IP ( 192.168.1.2)、面向外部的 IP 以及本地主机,我的网页按预期显示。

但是,当我要求同事在 Web 浏览器上输入我的公共 IP 地址以加载 Apache 网页时,他看到的是“ [mypublicip] took too long to respond.”消息。以下是我迄今为止诊断此问题所采取的措施:

  1. 在我的 ISP 路由器上启用端口转发 (80 -> 80),并启用 TCP

  2. 暂时禁用防火墙

  3. 暂时禁用防病毒软件

  4. [SYN]通过使用 Wireshark 捕获同事发送的流量来验证端口转发是否有效。我看到他的公共 IP 尝试在端口 80 上与我的私有 IP建立 TCP 连接 ( ) 192.168.1.2。我的主机从未响应该连接,这导致[TCP Retransmission] [TCP Port numbers reused]他那边出现很多问题。

  5. 检查端口 80 是否已启用nmap localhost

我不确定为什么在完成上述所有步骤后仍未建立完整的 TCP 连接,目前我感到很困惑。特别是,为什么我的主机不响应 TCP [SYN] 消息?任何帮助都将不胜感激。

答案1

似乎 MacOS 的防火墙有问题,即使我更新到 Ventura 后也是如此。需要关闭防火墙,并且必须重新启动 Mac 才能使防火墙更改生效。这是我能够访问我的网站的唯一方法。

相关内容