今天要講的話題是從技術原理上來詳細剖析一下,微片和目前包括 shadow socks,shadowsocksR v2ray和trojan的socks5類型的代理的優缺點,但是據我自己的分析的數據可能不是很科學和嚴謹,中國翻牆用戶絕大多數使用的工具竟然還是VPN,從用戶基數上來說佔絕大多數,可能超過了50%。
再次聲明這個結論不是很準確,因為可供參考的數據非常有限,然後這個數據是包括了輕度翻牆用戶和日常的重度翻牆用戶,很多幾天甚至可能幾周才翻一次牆的這種用戶也統計進來了,所以當我發現採用vpn方式翻牆的用戶超過佔比一半的時候,我自己也很吃驚,後來我想明白了。
新的vpn的這種廠商可能幾個月的時間就幾十上百個陸陸續續就出現在市場上,大部分被封鎖,換個名字或者換一批伺服器又出來了,然後很多都有老用戶的聯繫方式,比如說郵件和手機號碼之類的可以做定向的推廣,其中有很多小廠自己做的客戶端採用的可能根本就不是微拼的底層協議,很可能就是shadowsocks或者是shadowsocksR。
不用訂閱節點,它裡面都做死了,你可以理解成一個封閉的shadowsocks客戶端,還有一些小廠根本就不用VPn這個名字,改叫什麼加速器,對吧?打擦邊球。
底層用的多數也都不是vpn的通訊協議,這些小廠的vpn數量和用戶,我沒辦法精確統計,但是你只要知道在中國還有大把的人通過vpn這種方式翻牆就行,大概率都不是看到這個視頻的你們這樣的用戶在用,他們這些人基本上翻牆都是為了偶爾看看成人內容或者是敏感內容,翻牆之後獲取信息的方向非常窄,簡而言之就是依然使用vpn翻牆的用戶的佔比是非常大的,所以今天我講的話題會圍繞著vpn來講一講。
除此之外,很多用戶因為是輕度用戶,偶爾才翻一次牆,查個資料之類的,這部分用戶面臨的問題是買了vpn之後經常遇到供應商跑路的情況,所以要頻繁的更換廉價甚至免費的vpn,廉價甚至免費的vpn,往往更沒有保障,速度又慢,經常掉線或者很快就被封鎖了,然後供應商跑路的情況依然存在,所以目前從穩定性和安全性上來說,比較主流的翻牆方式依然是採用了socks5代理的shadowsocks、shadowsocksR、v2ray和trojan,雖然從絕對用戶基數上來說,還是vpn佔據主流,
但是對於有長期和穩定翻牆需求的用戶來說, socks代理的方式才是目前最好的選擇,但是這裡不得不提一下vpn對於socks5代理的方式,從原理上來講有一定的優勢,那就是能實現真正意義上的全局代理,甚至一些sucks5不轉發的流量全部通通走代理,包括IcMP流量,VPn在網絡層級中無限接近最底層,你可以簡單理解為vpn建立了一個相當於虛擬網卡,你網絡設備上幾乎所有的流量都會被強制接管,甚至在第三方眼中你的IP都會變成 VP n伺服器的IP。
從shadow socks、 v2ray到trojan則都是socks5代理,在網絡層級中是在應用層的會話層,所以很多流量都無法代理,這就是為什麼你開了shadowsocks全局也不能通過代理打遊戲以及ping和trace這些ICMP指令無法通過代理的原因。
為了淺顯的講清楚這個概念,我簡單的介紹一下網絡層級,先打個招呼,接下來的內容你剛一看可能會覺得很不友好,但是請千萬別被嚇跑。我本來打算用這張圖進行解釋,但是我知道會勸退很多人,所以我特地換了這張圖來解釋。
這張圖是OSI模型,解釋了數據在各層級中的流動,一個數據從最上方的第7層應用層產生,到最後最底層物理網絡接口發到網際網路的流程,大概就是這樣子的。這裡我拿你在Google上搜索一個關鍵字實際的應用來舉例子:
首先你打開網絡瀏覽器輸入關鍵字,在最上面的第7層應用層通過HTTP協議發送到第6層表示層,表示曾把收到的數據翻譯成機器語言發送到第5層會話層。會話層的作用是建立維護當前會話。
接下來到了第4層傳輸層,傳輸層的作用在於確定要使用的傳輸協議,並且添加對應的Google伺服器的通訊埠。然後到了第三層網絡層,數據到這裡是為了添加Google的IP位址。
繼續往下到了第二層數據鏈路層,在這裡添加路由、MAC地址、通訊對象的MAC地址等,最底層的就是物理層,數據以比特流的形式,最終通過你的網絡硬體傳輸給Google,Google返回查詢接口之後發回數據,數據被接收之後是相反的方向流動,我就不羅嗦了。配合這個圖下面我要講的東西你就一目了然了。
網頁瀏覽器,郵件伺服器,文件傳輸這些跑在應用層,也就是最上層,包括了shadowsocks v2ray到trojan的這種 socks5類型的代理跑在第5層會話層,所以可以代理上面的應用層數據,遊戲數據是直接通過傳輸層的協議TCP和udp進行通訊的,
所以不經過會話層也不需要表示層來解釋,所以socks5代理正常情況下是不能加速遊戲的,你打開了翻牆軟體就算開了全局,也代理不了跑在傳輸層的遊戲通訊數據,不過有些特別的工具可以通過虛擬網卡的方式實現強制接管流量。
比如說SSTAP、Proxifier,tun2socks等等這些,感興趣的自行搜索,包括ping和trace等這些ICMP指令,都跑在第三層網絡層,這也就是為什麼你開了socks5代理之後,依然可以用ping來確定你本地計算機到代理伺服器的通訊延遲RTT,而不是代理伺服器到自己的RTT,因為層級更低,流量不通過socks5代理轉發,你們知道vpn跑在哪兒嗎?目前集中主流的vpn協議,PPTP、L2TP、OpenVpn和SSTP都跑在第二和第三層網絡層和數據鏈路層。
所以vpn的一大優點就在於近乎所有的流量都能被代理,那麼因為vpn具備這種真全局方式的代理的特點,就意味著你應該用vpn嗎,當然不是vpn的流量特徵已經被GFW完美探測並且封鎖了。
現在依然能用的vpn主要都是海外的供應商,他們採取不斷的更換Ip的方式來對抗gfw這樣的結果就造成穩定性極差,並且相對比較貴。目前主流的各大海外的VPn供應商,包括藍燈、Astrill、Nord VPN、 ExpressVPN等等,這些工具的工作原理都是一樣的,採用的協議也都是主流的PPTP、L2TP、OpenVpn和SSTP這些。
但是這裡一定要明確一個概念, vpn的功能是加密通訊,保證數據安全和用戶隱匿性,設計原理就不是用來翻牆的,雖然可以用來翻牆,但是對於消除流量特徵沒有任何應對性可言。對GFW而言,現在的vpn相當於光著屁股在牆的臉上摩擦,你能用是因為還沒封,或者是剛剛換了一批,不代表你應該用下去,強烈推薦學習使用socks5代理的方式。
目前沒有任何明確的證據表明socks5類型的代理已經不再安全了,想要長期穩定安全的科學上網,你是一定要學習shadowsocks、 v2ray這些的,你是繞不開的.
接下來我要提到一個比較新出來的 vpn,叫做wireguard。看名字就看得出來, wireguard就是一個網絡信息安全的專家搞出來的,設計原理其實就是為了進一步加強安全性,來對抗美國的稜鏡計劃,wire guard相比主流VPN有點特殊,微片工具主要是採用 TCP通訊協議, wire guard用的是udp,TCP和udp簡單解釋一下, Tcp協議需要本地和遠程多次握手,並且建立長連接,並且驗證每一次的通信,確保數據按照順序到達並且處理,但是TCP容易被gfw通過發送reset包來阻斷。
Udp工作方式是不管你對面有沒有在聽,我就發數據包,而且也不建立長連接,也沒有通過時間戳來驗證數據包完整性和順序性的機制,你可以理解為TCP是兩個人正常的之間在對話,Udp是一個瞎子,對著另外一個人亂喊亂叫,數據包也經常會搞丟,不搞丟的也有很多在整個地球繞來繞去,最後亂序到達。
而且wire guard因為採用的是udp通信協議,GFW用來封鎖Ip的發送reset包這樣的手段也不會對udp產生影響,反而導致GFW無法通過有效手段來封鎖wire guard,但是udp流量被QoS限速是個極為普遍的情況,簡單來說就是wire guard感覺像是採用了一種小眾的方式,看似巧妙的實現了翻牆,但是跟其他的VPN一樣特徵非常明顯,並且你能用不代表說好用,你好用不代表別人能用,今天可能還能挺快的,明天可能開個網頁都困難。
所以我的結論是wire guard不適合翻牆,也不應該用於翻牆,就算能用也僅僅是因為太小眾,GFW懶得鳥你,我不是說不能用wire guard,只是不推薦。同理其他的vpn我也都是這個態度。
但是話說回來,對很多不想折騰的人來說,VPN可能確實相對更加便捷,甚至比機場還方便。從這個角度上來說,VPN可能的確適合大多數人使用,因為絕大多數人是沒有長期穩定翻牆的需求的,這個確實符合我視頻開頭說的,VPN從絕對用戶數據上來說反而是主流,所以這個的確看你自己的需求,比如說我個人習慣了開法拉利,你很難讓我再去開五菱宏光。我做了很多調研,發現諸多大型海外vpn供應商,口碑比較好的是expressVPN和AstrillVPN,這兩家伺服器節點非常多,IP多到可以跟GFW正面硬槓,所以有點貴。
你如果實在有閒錢,你可以考慮試一下,這裡我先驗明正身,我沒有推薦碼,我不通過這種方式獲利,千萬別覺得我在割韭菜,聽到這裡的朋友,你如果真的心動了想去試試,我為了自證清白還是給你們潑一盆冷水。根據我的信息收集 Expressvpn是香港的公司,背後有大佬,有很多人猜測比較紅.
我其實有點擔心做完這期節目,大家可能會覺得我講的還可以,也都聽明白了socks5類型代理的優勢,但是最後還是反而去選擇VPN了,你要是很在意翻牆會不會因為違法被抓之類的,記得點讚呦!