科學上網 V2Ray Server
最近計畫著想去大陸工作的想法,有很多細節需要注意,對於一個熱衷寫程式的我來說,被限制的網路無疑是我成長最大的阻礙,從很早以前就不斷關注跟「翻牆」有關的資訊,大約是 2018 年 3月份開始大陸當局針對私人 VPN 進行大規模封殺,因此陸陸續出現 shadowsocks, shadowsocks-R, V2Ray 工具,本篇大概紀錄下怎麼架設 V2Ray。
本次架設以自己家中的 Nas 作為主機架設,如果經濟許可下還是買台 VPS 進行架設比較好,在開始之前得先確認兩件事情
- 家中網路是否為 Public IP (公網IP)
- 是否將路由器端口映射到 Nas 上面
設定 DMZ 通訊轉發
是否為 Public IP 可以直接致電訊問 ISP 業者(網路供應商),而如何映射每個路由器設定不同,這裡以 AUSU N12HP 刷 Tomato 後的設定大概講解,打開管理界面 → 通訊埠轉送 → DMZ設定 → 輸入Nas上面的IP 如附圖
這樣就可以開始進行 Nas 上架設 V2Ray 設定囉
安裝 Docker 套件
這邊我打算透過 Docker 進行安裝,因此我們必須先安裝好 Docker 套件,如附圖所示,我已經安裝好所以顯示開啟
打開 Docker 操作界面 → 倉庫伺服器 → 搜尋 V2ray → 選擇 official 版本 如下圖
這時候就會將 Image 映像檔拉回本地,一會我們要進行容器部署
部署 V2Ray 映像
接著選擇 映像擋 → 選擇剛下載的映像 → 部署
點選部署後會接著填寫名稱 → 進階設定
選擇儲存空間 → 新增資料夾 → 選擇預設安裝好 docker 套件建立的資料夾 → 建立資料夾 → 輸入名稱 → 確定
新增完成後點選 選擇 如附圖
接著在掛載路徑 輸入 /etc/v2ray
這裡一定要輸入 /etc/v2ray 因為後面我們會透過這個掛載的方式將設定檔放入容器中
換設定連接埠設定 → 新增 → 本機端口隨便輸入 → 容器端口隨便設定 → 確定
本機連接埠和容器端口雖然說隨便設定,但是要記好,後面進行系統參數配置會用到
如果 Nas 本身配置不是很好可以在這裡進行容器執行的限制,沒問題就直接下一步
這裡是先前設定好的總覽,沒問題就直接套用囉
這時候選擇容器 → 查看剛剛建立的容器,會發現他停止 → 右上角還顯示錯誤 這是因為我們尚未配置 config.json 造成,接著配置好再起動就沒問題了,記得本機連接埠和容器端口吧!一會要用上囉
配置 Config.json
這裡推薦使用 Visual Studio Code 文字編輯器,當然使用 Sublime Text 或 Notepad++ 在不然記事本也可以,新增檔案並將檔案名稱設定成 「config.json」如附圖
其中 port 為先前容器端口隨便設定的值, id 為 GUID 型可以透過 產生器 來產生後使用, alterdId 為整數型,自定義完後,一會設定 client 會用上!下面為完整的檔案,記得修改 port、 id 和 alterdId 即可
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
{ "log": { "access": "/var/log/v2ray/access.log", "error": "/var/log/v2ray/error.log", "loglevel": "warning" }, "inbound": { "port": 容器端口隨便設定, "protocol": "vmess", "settings": { "clients": [{ "id": "GUID型", "level": 1, "alterId": 整數型 }] } }, "outbound": { "protocol": "freedom", "settings": {} }, "outboundDetour": [{ "protocol": "blackhole", "settings": {}, "tag": "blocked" }], "routing": { "strategy": "rules", "settings": { "rules": [{ "type": "field", "ip": [ "0.0.0.0/8", "10.0.0.0/8", "100.64.0.0/10", "127.0.0.0/8", "169.254.0.0/16", "172.16.0.0/12", "192.0.0.0/24", "192.0.2.0/24", "192.168.0.0/16", "198.18.0.0/15", "198.51.100.0/24", "203.0.113.0/24", "::1/128", "fc00::/7", "fe80::/10", "geoip:cn" ], "outboundTag": "blocked" }] } } } |
https://github.com/v2ray/v2ray-core/issues/152
https://github.com/v2ray/v2ray-core/issues/429
https://www.v2ray.com/chapter_02/policy.html
關於整個 config.json 請參考 官方文件
接著將設定好的 config.json 檔案放到先前建立好的資料夾底下,點選 File Station → 先前建立的資料夾 → 右鍵 上傳-複寫 ,如附圖
上傳成功後右上角會出現通知
這時候再回到 Docker 選擇剛剛建立好的容器 啟用如附圖所示
已經可以正常執行,那 V2Ray 的服務器就算架設完成了,下一篇我們介紹怎麼透過不同裝置連上服務器進行科學上網!
不好意思想問一下我已經確定步驟及DOCKER內容都已開啟
simon huang 於2019-09-25 21:53:53 評論不過在iphone用SHADOWROCKET設定用遠都是超時
想問有可能哪個環節出錯了~
@simon huang 這個方法我已經沒再用了 我目前是直接買搬瓦工VPS 上面跑 V2ray+WS+TLS 方式去混淆
Yosheng 於2019-10-09 08:48:24 評論不過我建議你可以從 桌面版先測試是否可以連線