在 CentOS 上安裝並使用 WARP 代理出口 IP(解鎖 Netflix IP 限制)

/
簡體中文正體中文

WARP

Cloudflare WARP 是 Cloudflare 推出的網路隱私保護服務。將 WARP 作為連線出口,有助於繞過 Netflix 等串流服務對代理 IP 的封鎖。(Cloudflare 官方介紹(英文))

WGCF

WGCF 是 WARP 的非官方命令列用戶端。

透過 WGCF,可以為 VPS 新增 IPv4、IPv6 代理出口,用來存取 Netflix。

安裝 wgcf

執行以下命令:

BASH
mkdir wgcf
cd wgcf
wget -O wgcf https://github.com/ViRb3/wgcf/releases/download/v2.2.4/wgcf_2.2.4_linux_amd64
chmod +x wgcf

初次使用時,需要註冊帳戶並產生設定檔:

Shell
./wgcf register
./wgcf generate

接著,程式目錄中就會出現 wgcf-account.toml 和 wgcf-profile.conf 這兩個新產生的檔案。

設定 wgcf

wgcf-account.toml 是你的 WARP 帳戶資訊。如果你有 WARP+ 帳戶,可改用該帳戶的資訊;wgcf-profile.conf 是 WireGuard 設定檔,下載一份到本機儲存。

修改 wgcf-profile.conf

WireGuard 在核心層級運作,並建立自己的虛擬網路介面。WARP 用戶端使用 NAT 後方的私有位址。如果 IPv4 與 IPv6 路由都由 WireGuard 接管,可能就無法再透過原本的 IP 連線至伺服器。因此,這裡讓 IPv4 與 IPv6 的其中一種保留原有路由,避免失去連線。

可以自行將 engage.cloudflareclient.com 解析成 IP 位址,再將 Endpoint 改為 IPv4 或 IPv6 位址後儲存。

設定檔有以下兩種修改方式:

  • 將最後一行 Endpoint=engage.cloudflareclient.com:2048 修改為 162.159.192.1:2408,並刪除 AllowedIPs = 0.0.0.0/0,讓 IPv4 流量維持原本的路由,不經過 WireGuard。
  • 將最後一行 Endpoint=engage.cloudflareclient.com:2048 修改為 [2606:4700:d0::a29f:c001]:2408,並刪除 AllowedIPs = ::/0,讓 IPv6 流量維持原本的路由,不經過 WireGuard。

安裝 WireGuard 用戶端

CentOS 7:

Shell
sudo yum install epel-release elrepo-release
sudo yum install yum-plugin-elrepo
sudo yum install kmod-wireguard wireguard-tools

其他系統的安裝指令可以參考官方網站

安裝完成後,重新啟動 VPS。

設定 WireGuard

將修改好的 wgcf-profile.conf 設定檔上傳至 /etc/wireguard,再重新命名為 wgcf.conf。

Shell
cp wgcf-profile.conf /etc/wireguard/wgcf.conf

啟動 wgcf

Shell
#加载内核模块
modprobe wireguard
#检查WG模块加载是否正常
lsmod | grep wireguard

開啟與關閉隧道的命令為:

Shell
#开启隧道
sudo wg-quick up wgcf
#关闭隧道
sudo wg-quick down wgcf

如果 VPS 的對外連線沒有使用 IPv6,需要編輯 /etc/gai.conf 檔案(不存在時就新建),內容如下:

TEXT
label ::1/128 0
label ::/0 1
label fd01::/16 1
label 2002::/16 2
label ::/96 3
label ::ffff:0:0/96 4
label fec0::/10 5
label fc00::/7 6
label 2001:0::/32 7
precedence ::1/128 50
precedence ::/0 40
precedence fd01::/16 40
precedence 2002::/16 30
precedence ::/96 20
precedence ::ffff:0:0/96 10

測試是否可以觀看 Netflix:

BASH
wget -O nf https://github.com/sjlleo/netflix-verify/releases/download/2.6/nf_2.6_linux_amd64 && chmod +x nf && clear && ./nf

測試結果:

netflix-verify.png

  • Loading...
  • Loading...
  • Loading...
  • Loading...
  • Loading...