iPhone 無法透過 IP 位址到達本機伺服器,除非伺服器先 ping iPhone

iPhone 無法透過 IP 位址到達本機伺服器,除非伺服器先 ping iPhone

我的桌面開發機器是 Ubuntu 22.04.3 LTS,運行 apache2 作為 Web 伺服器。我的 iPhone 是運行 iOS 版本 17.3.1 的 iPhone 12 Pro。 UFW 在 Ubuntu 電腦上被停用。我家裡只有一個網絡,由 Ubiquiti 網關設備供電。

有時,我需要透過 iPhone 上的網頁瀏覽器透過 IP 位址存取我的 Web 開發伺服器。

從歷史上看,這從來都不是問題。然而最近(我不能說具體是什麼時候...),我的 iPhone 根本無法連接到這個伺服器。透過網頁瀏覽器的 HTTP/HTTPS 請求最終都會超時,而且手機無法使用我安裝的名為「iNetTools」的網路工具應用程式 ping 伺服器

該網路上的其他機器(例如我的筆記型電腦)可以毫無問題地存取 Ubuntu Web 伺服器,並且也可以 ping 通 Ubuntu 機器。同樣,Ubuntu機器可以ping通iPhone。我已經透過 Unifi 軟體確認 iPhone 和 Ubuntu 伺服器都在同一個 5ghz 通道上,甚至在同一個 AP(網狀網路)上,只是為了消除這些潛在變數的細微差別。

我發現,從 Ubuntu 機器 ping iPhone 後,突然來自 iPhone 的 HTTP/HTTPS 請求開始工作,然後 iPhone 也能夠 ping Ubuntu 機器。這種情況會「持續」一段時間,直到最終停止工作(iPhone 再次無法再訪問 Ubuntu 伺服器),並且像發條一樣,從 Ubuntu 伺服器 ping iPhone 即可恢復功能。

我覺得這表明我的 iPhone 上有某種隱私設定(可能是由於最近的 iOS 更新?),正如我提到的,其他設備能夠與該伺服器(以及彼此)一致地通信,沒有問題。

我看到 Ubiquiti/Unifi 用戶端清單中列出了這兩種裝置(Ubuntu 伺服器和 iPhone)。我永遠無法從 iPhone ping Ubuntu 伺服器,除非 Ubuntu 伺服器先向 iPhone 發起 ping。此 ping 操作總是需要幾秒鐘才能成功;第一個回應通常約為 3000 毫秒,然後是 2000 毫秒,然後是 1000 毫秒,之後回應時間就是您所期望的,< 10 毫秒。

相關內容