😫曲线拯救IPv6-only

很讨厌的IPv6-only机器,但是架不住便宜啊,折腾了好久

首先下载安装Warp客户端:https://pkg.cloudflareclient.com/

注册新账户:warp-cli registration new

启动Warp并设置开机自启:

sudo systemctl start warp-svc 
sudo systemctl enable warp-svc

启用 MASQUE 协议,新建 mdm.xml 放到 /var/lib/cloudflare-warp

<dict>
    <key>warp_tunnel_protocol</key>
    <string>masque</string>
</dict>

设置代理模式 warp-cli mode proxy,默认端口为40000

一些用于检查的指令:

warp-cli settings  #查看配置是否生效
warp-cli connect  #连接
warp-cli disconnect  #断开
warp-cli status  #查看WARP连接状态
warp-cli registration show  #查看当前账户信息
warp-cli registration license <替换密>  #设置新的WARP密钥

这时候已经在40000端口开启了一个代理服务,我们尝试强制curl走代理看看配置是否正确:

curl --socks5 127.0.0.1:40000 ipinfo.io

理论上应该会返回类似这样的json内容:

{
  "ip": "104.28.215.70",
  "city": "Hong Kong",
  "region": "Hong Kong",
  "country": "HK",
  "loc": "22.2783,114.1747",
  "org": "AS13335 Cloudflare, Inc.",
  "postal": "999077",
  "timezone": "Asia/Hong_Kong",
  "readme": "https://ipinfo.io/missingauth"
}

可以看到我们的IPv6-only机器已经有了一个公网IPv4地址,并且可以通过代理连接到网络,设置代理:

export http_proxy="http://127.0.0.1:40000"
export https_proxy="http://127.0.0.1:40000"
export socks_proxy="socks5://127.0.0.1:40000"

这里要注意,ping不能走代理,所以用ping检测没有意义,另外,不同的工具的优先代理模式不同,需要根据实际情况将不同的代理配置成http代理或socks代理,如:

export http_proxy="socks5://127.0.0.1:40000"
export https_proxy="socks5://127.0.0.1:40000"

然后直接使用curl命令检查代理是否生效:

curl ipinfo.io

最后更新于