原理分析:
這里先重點介紹一下原理,以及使用的這幾個端口。畢竟知其然不如知其所以然。
在連接到某個需要 Web 認證的網絡之前(就比如連接CDTU),我們已經獲得了一個內網 IP,此時,如果我們訪問某個 HTTP 網站,網關會對這個 HTTP 響應報文劫持並篡改,302 重定向給我們一個 web 認證界面(所以點 HTTPS 的網站是不可能跳轉到 web 認證頁面的)。
這里我做個簡單的試驗給大家演示一下。就以我的校園網CDTU為例。
在連接校園網,沒有認證的情況下,分別發起一個http和https的請求。

https請求,腳本會報錯,我加了異常處理。

而網關(或者說交換機)都默認放行 DHCP 和 DNS 報文,也就是 UDP53 與 UDP 67。有些網關甚至文不會報進行檢查,這也就意味着任何形式的數據包都可以順暢通過。
原理圖:

來自百度上的解釋:
53端口:端口說明:53端口為DNS(Domain Name Server,域名服務器)服務器所開放,主要用於域名解析,DNS服務在NT系統中使用的最為廣泛。通過DNS服務器可以實現域名與IP地址之間的轉換,只要記住域名就可以快速訪問網站。
67和68端口:67是用來接收下級客戶請求分配IP 68是向客戶發請求成功或失敗回應。
DHCP(Dynamic Host Configuration Protocol,動態主機配置協議)是一個局域網的網絡協議,使用UDP協議工作, 主要有兩個用途:給內部網絡或網絡服務供應商自動分配IP地址,給用戶或者內部網絡管理員作為對所有計算機作中央管理的手段。其中UDP67和UDP68為正常的DHCP服務端口,分別作為DHCP Server和DHCP Client的服務端口。
使用這三個端口原理都是相同的。我們就可以在公網搞一台服務器,然后借此來免費上網。