前言
在 前一篇文章 我們介紹了 Cloudflare Warp。但你可曾想過,他是否可以安裝在 Linux 上?以及,由於 Warp 同時支援 IPv4 及 IPv6,若我的主機上只有 IPv4 或 IPv6,我是否可以透過 Warp 來補足缺少的另一個?答案是 YES!
在 Github 上,有大神開發了一款名為 WGCF 的軟體。由於 Warp 是基於 Wireguard 開發而來的,因此 WGCF 能提取出 Warp 的金鑰。如此一來,我們要連上 Warp 就不一定要透過 Cloudflare 自己的軟體啦,也可以直接使用 Wireguard!
Github 連結:https://github.com/ViRb3/wgcf
安裝 Wireguard
由於我們是要直接使用 Wireguard 來連上 Warp,因此我們這邊需要安裝 Wireguard。
sudo apt-get install -y wireguard
如果你正在使用 Debian,建議是安裝一下 resolvconf,等等連上 Wireguard 比較不會出問題。
sudo apt-get install -y resolvconf
安裝完 resolvconf 可能需要重啟機器。
安裝 WGCF
WGCF 這款軟體是跨平台的,可以在 這裡 下載到。本次文章實驗的環境會在 Linux 上,且方法更為簡單。
在 Linux 上,我們可以直接使用 curl 執行一段網址,就可以直接裝上 WGCF 囉!
curl -fsSL git.io/wgcf.sh | sudo bash
安裝完之後,執行以下命令來註冊 Warp。(安裝過程中會遇到是否接受服務條款,請選擇 Yes
)
wgcf register && wgcf generate
接著,我透過 ls
命令,可以看到他建立了兩個檔案,分別是 wgcf-account.toml
以及 wgcf-profile.conf
。
wgcf-account.toml
是相關的註冊資訊,這篇文章不會介紹到他。
wgcf-profile.conf
這就是 Wireguard 文件,待會會使用到。
wgcf-profile.conf
我透過 cat
來顯示目前 wgcf-profile.conf
檔案內的內容。這邊有些許複雜,但是我盡可能的講解。
名稱 | 解釋 |
---|---|
PrivateKey | 就是你的私鑰,這個我們不要動。 |
Address | 我們可以看到有兩個,一個是 IPv4、另一個是 IPv6。 |
DNS | 目前是 1.1.1.1 ,有需要你也可以改成你喜歡的。 |
MTU | 你可以針對你的網路環境調整,看不懂建議不要動。 |
AllowedIPs | 符合條件的才走 Wireguard,0.0.0.0/0 及 ::/0 就都是代表全體的意思。 |
回覆前言所說的,如果我的機器上只有 IPv4 或是 IPv6,你就可以透過 WGCF 只獲得其中一個協定:
協定 | 處理方式 |
---|---|
IPv4 | 註解掉上方 Address 的 IPv6 部分,也註解掉下方 AllowedIPs 的 ::/0 。 |
IPv6 | 註解掉上方 Address 的 IPv4 部分,也註解掉下方 AllowedIPs 的 0.0.0.0/0 。 |
IPv4 及 IPv6 | 保持預設即可。 |
連上 Warp
我們需要將 wgcf-profile.conf
這個檔案移至 /etc/wireguard
目錄底下。通常,我也會將這個檔案重新命名。
將 wgcf-profile.conf
重新命名成 wgcf.conf
。
sudo mv wgcf-profile.conf wgcf.conf
將檔案 wgcf.conf
移到 /etc/wireguard
底下。
sudo mv wgcf.conf /etc/wireguard
接著,我們就可以透過 wg-quick
命令來連上 Warp 囉!
sudo wg-quick up wgcf
若要將其下線,則使用:
sudo wg-quick down wgcf
若想要開機就起動這個 Wireguard,你可以:
sudo systemctl enable wg-quick@wgcf
測試可用性
透過 mtr
命令,我可以看到目前 Warp 的 IPv4 及 IPv6 都在正常運作!
mtr www.google.com -4
:
mtr www.google.com -6
:
結語
這就是這次介紹使用 WGCF 來連上 Warp 的方法啦!這樣的方式具有非常大的靈活性,你甚至可以結合其他 Wiregaurd 的功能來玩這個隧道!