前言 — Captive Network

Info

強制門戶(英文:Captive portal,又名強制網絡門戶強制主頁)是在授予新連接至Wi-Fi的用戶更廣的網絡(網際網路)訪問權限之前在其網頁瀏覽器呈現中的網頁,其常用於呈現可能需要認證或接受最終用戶許可協議/可接受使用策略的著陸頁或登錄頁。強制門戶應用於各方面的移動寬帶服務中(如有線連接、計費 Wi-Fi 及家庭熱點),同時也可提供對企業或家庭有線網絡(公寓、酒店和商業中心的網絡)的訪問權限。
—— by wiki

簡單說就是 星巴克 / 部分會跳轉網頁的商店 / 學校網路等都算在 Captive Network 裡面,主要就是讓公共網路能夠管理 Guest WiFi 的權限等等。


iOS 登入問題

通常初次登入都不會有問題,但是只要 session 過期之後重新要登入就跳不出那個登入網頁(也就是 Captive Portal)。一般的解決方法都是直接點忘記網路再重新登入,但這件事只要常常發生就很沒有效率,所以就試著找找解決方法。


原理

在寫文章亂爬文的時候在 reddit 上找到 apple 之前發給架設 Captive Network 架設者的文章:

因為我不是架設方,沒辦法確定他講的是不是真的是我遇到的問題
但簡單說 Captive Network 是靠攔截網路封包的方式讓 Portal 跳出來的,但 iOS 似乎有能力繞過,導致沒有經過驗證的用戶反而連不到外網

另一種說法是 IPV4/IPV6 的問題

iOS Captive Network 登入問題-1785206823395.webp
iOS Captive Network 登入問題-1785206823395.webp

一般的解決方法是自己按『忘記網路』然後再重新登入,但是每次都這樣搞挺麻煩的

他這邊給的方法是從 safari 開 captive.apple.com 這個網址,但是因為我手機已經連上星巴克網路了測試不了


解決方法

以星巴克為例(畢竟我在星巴克)

點 『 i 』進去網路設定

把 router 的 ip 貼到 safari

點『連接 WiFi』就完成了