作 者周奕勋,现年 16 岁,9 岁开始编写网页,国中便组队参加中国 AWS 挑战赛,曾经在美国和中国拿到 3 个工程师的工作机会、还破格申请上位于硅谷的 Foothill 学院的独特入学名额。虽然小时候被人称为"不听话的小孩",但周奕勋在程式语言中,找到了自己的道路,踏出了许多连大人都难以想像的风景。
筆者本人到北京工作大約 3 個月,基本上有兩個月的時間都是在研究如何「架梯子」也就是翻牆。
身為一個自由國家的好公民兼任軟體工程師,基本社交圈應該都是在 Facebook 上面,debug 也應該都在 Google 上面。
可以說生命都寫在 GFW List 裡面了(誤)。
在 臺灣我自己在家準備了一台又有 Shadowsocks 又有 IPSEC 的 Server ,也請住在舊金山灣區的朋友在家裡 (位於 Sunnyvale,線路 Comcast) 幫我架了一台 SoftEther VPN (超級穩,果然 Google 工程師好牛逼 XD)。
一開始我剛下飛機的時候是使用香港的手機卡,所以完全感受不到 GFW 的存在,後來我的香港卡過期了,所以我辦了中國聯通的吃到飽。
一裝上中國聯通的 SIM Card 之後,馬上感受到好像有個人把我的手跟腳綁起來,不能上 Facebook 跟 Google ,通通斷了我的生命,當下我覺得我跟廢人沒有兩樣 XD
一 開始我使用的是我美國朋友架的那台 VPN ,一開始用起來非常快,但是問題是在 iOS 原廠的 Client 不會自動幫你 Reconnect ,也就是如果被 GFW 砍了你的 Connection 之後,你就要手動自己重新連線,也因此我常常漏接一堆 Facebook Messenger 的 Message (大哭)。
後 來,我開始自己在 VPS 上面架 Shadowsocks Server ,從大家都知道的 Digital Ocean, Google Compute Engine (臺灣節點) 到很少人聽過的 GigsGigsCloud 都用過了,也在這中間得知了中國海纜,或是 CN2 的狀況。
前面講了一堆廢話,現在帶入正題。
先介紹一個常見的 Protocol ,還有最佳方案。
Shadowsocks
先從 Shadowsocks 開始說起,Shadowsocks 是在中國翻牆速度最快,且最爽的一個選擇,怎麼說呢?
大家應該都有上淘寶的經驗,買完準備結帳,開啟支付寶的那時候,速度是慢到爆炸,沒錯 GFW 會降速!!!
所以如果我們用 VPN (不管哪一個 Protocol) 在連回來中國的 Server 就會慢到想哭,尤其是在點外賣的時候沒辦法下單 …
那為什麼 Shadowsocks 可以解決這個問題呢?嚴格來說,不是 Shadowsocks 解決這個問題,而是 Shadowsocks 可以選擇要 Proxy 哪些 Domain Name 或是 IP Address。
在 OpenWRT 上,我自己常用 GFW List 指定 Shadowsocks 代理 GFW List 裡面的 IP 跟 Domain ,像是 Google 或是 Facebook。
在 iOS 我自己比較推薦使用 Surge 跟 Potatso 2 (比較便宜)。
其實還有一個 Client 叫做 Wingy ,它是不用錢的,問題是 Wingy 不能使用 Facebook Messenger ,原因出在 Facebook Messenger 使用了 SPDY ,但是 Wingy 不會代理到 SPDY ,故無法使用。
但是 Wingy 很容易 Config ,因為他內建了 PAC Mode ,基本上填入 Server Information 就可以使用了。
而 Potatso 2 比 Wingy 強大很多,它可以設定自己的代理規則,也自訂 DNS Server。
IPSEC
其實我不想多說 IPSEC ,因為 GFW 已經有能力明文 IPSEC 的封包了。
(那就別用啦~)
SSL VPN
個人蠻推薦 SSL VPN 的,原因很簡單,因為很穩定。
筆者自己用過 ExpressVPN,它是走 SSL VPN (UDP) ,基本上斷線的機率很少。
自建 Server 的話,在這裡推薦使用 OpenConnect (ocserv) 並使用 Cisco AnyConnect Client 連線。
基本上速度不會太慢,Facebook 開直播與看 YouTube Full HD Video 不是甚麼太大的問題。