使用CF WARP添加或者替换IPv4/IPv6

可解锁服务器所在地区Netflix,新加坡VPS解锁新区,以次类推

安装wireguard

yum -y install epel-release elrepo-release
yum -y install yum-plugin-elrepo
yum -y install kmod-wireguard wireguard-tools

配置文件目录位于:/etc/wireguard
开启关闭指令

wg-quick up xxxx
wg-quick down xxxx

安装Wgcf

github项目

wget -O wgcf https://github.com/ViRb3/wgcf/releases/download/v2.2.2/wgcf_2.2.2_linux_amd64
chmod +x wgcf

初次使用需要注册用户并生成配置文件:

./wgcf register
./wgcf generate

wgcf-account.tomlwgcf-profile.conf两个新生成的文件。前者是你的WARP账户信息,如果有WARP+账户可以替换成自己的账户;后者就是WireGuard的配置文件了

engage.cloudflareclient.com解析成IP,对Endpoint修改成ipv4或者ipv6保存即可
一般就两个

162.159.192.1
2606:4700:d0::a29f:c001

配置文件

WG连接后是内核层级的软件,会建立自己的虚拟网卡,且WARP客户端均为内网NAT地址

实现以下目标
路由

修改配置文件两种情况:

接管/新增IPv6

图中11行Endpoint修改为162.159.192.1:2408,删除掉第9行的AllowedIPs = 0.0.0.0/0
如图所示:
IPV6配置

接管本地IPv4+IPv6路由的配置

谨慎操作
使用了宝塔面板会冲突,无法生效

在源配置添加以下,使入站走原来IP的路由

PostUp = ip -4 rule add from 10.0.0.1 table main
PostDown = ip -4 rule delete from 10.0.0.1 table main

ip -4 route可以拿到本机ipv4所在网段,大厂一般为内网,单独内网IP也可以
完整配置:
IP4+6

如果需要指定IP出口走默认路由,配置文件中增加:

PostUp = ip -4 rule add to 8.8.8.8 table main
PostDown = ip -4 rule delete to 8.8.8.8 table main

这种情况下,可以使用GOST转发,iptables无法使用
如果需要使用iptables转发,需要再增加配置:

PostUp = ip -4 rule add from 8.8.8.8 table main
PostUp = ip -4 rule add from 8.8.8.8 table main

PostUpPostDown可以同时写多条规则

测试配置

复制文件到目录wireguard

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

没有的话wireguard文件夹的话创建下

mkdir /etc/wireguard

启动wireguard

wg-quick up wgcf

如果机子不带ipv6,编辑vi /etc/gai.conf文件,修改为以下内容

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

如果提示权限不足
排除系统未启用IPv6

sysctl -a |grep disable_ipv6

看到全部都是1,就是"不允许ipv6"的意思
vi /etc/sysctl.conf
修改disable_ipv6的所有变成0
执行生效

sysctl -p

执行以下命令检查是否连通。同时也能看到正在使用的是 Cloud­flare 的网络。

curl -6 ip.p3terx.com
curl -4 ip.p3terx.com

测试完成后关闭相关接口,因为这样配置只是临时性的。

wg-quick down wgcf

如果因为配置错误机子连不上,重启即可

启用Wire­Guard网络接口

确认没问题后再执行

守护进程

systemctl enable wg-quick@wgcf
systemctl start wg-quick@wgcf
systemctl restart wg-quick@wgcf
systemctl stop wg-quick@wgcf
systemctl disable wg-quick@wgcf

后续

使用过程中,出现过无缘无故断网了
为避免warp无法使用,可以设定定时检测并重启

新建ping.ssh

#!/bin/bash
R_IP=`ping 1.1.1.1 -c4 | awk '/^4/{print $4}'`
if [ $R_IP -le 1 ] ; 

        then
        
        systemctl restart wg-quick@wgcf

                fi

然后chmod +x ping.sh

crontab -e加入定时任务

*/1 * * * * bash /root/ping.sh

ping.sh无法执行的话,参考这里

文章来源1
文章来源2

最后修改:2021 年 05 月 13 日 04 : 10 PM