Update t.sh

Former-commit-id: 9e52131624a9249e1e1f5f8e69f0eedf0e382e3a
This commit is contained in:
fscarmen
2021-09-06 10:34:28 +08:00
committed by GitHub
parent 4ee43ce031
commit 81ec084951
+9 -3
View File
@@ -93,6 +93,12 @@ wgcf generate
# 修改配置文件 wgcf-profile.conf 的内容,使得 IPv6 的流量均被 WireGuard 接管,让 IPv6 的流量通过 WARP IPv4 节点以 NAT 的方式访问外部 IPv6 网络,为了防止当节点发生故障时 DNS 请求无法发出,修改为 IPv4 地址的 DNS
sudo sed -i "7 s/^/PostUp = ip -4 rule add from $(ip a | egrep 'ens|eth0|enp' | awk -F '/' '{print $1}' | awk -F 'inet[ ]*' '{print $2}' | grep .) lookup main\n/" wgcf-profile.conf && sudo sed -i "8 s/^/PostDown = ip -4 rule delete from $(ip a | egrep 'ens|eth0|enp' | awk -F '/' '{print $1}' | awk -F 'inet[ ]*' '{print $2}' | grep .) lookup main\n/" wgcf-profile.conf && sudo sed -i 's/engage.cloudflareclient.com/162.159.192.1/g' wgcf-profile.conf && sudo sed -i 's/1.1.1.1/9.9.9.10,8.8.8.8,1.1.1.1/g' wgcf-profile.conf
# 如果系统原来是双栈,则需要添加 IPv6 的处理
wget -qO- -6 ip.gs > /dev/null 2>&1
if [ $? -eq 0 ]; then
sed -i "8 s/^/PostUp = ip -6 rule add from $(wget -qO- -6 ip.gs) lookup main\n/" wgcf-profile.conf | sed -i "9 s/^/PostDown = ip -6 rule delete from $(wget -qO- -6 ip.gs) lookup main\n/" wgcf-profile.conf
fi
# 把 wgcf-profile.conf 复制到/etc/wireguard/ 并命名为 wgcf.conf
sudo cp wgcf-profile.conf /etc/wireguard/wgcf.conf
@@ -102,17 +108,17 @@ rm -f dualstack* wgcf*
# 自动刷直至成功( warp bug,有时候获取不了ip地址)
wg-quick up wgcf
echo -e "\033[32m warp 获取 IP 中,如失败将自动重试直到成功。 \033[0m"
wget -qO- -6 ip.gs
wget -qO- -6 ip.gs > /dev/null 2>&1
until [ $? -eq 0 ]
do
wg-quick down wgcf
wg-quick up wgcf
echo -e "\033[32m warp 获取 IP 失败,自动重试直到成功。 \033[0m"
wget -qO- -6 ip.gs
wget -qO- -6 ip.gs > /dev/null 2>&1
done
# 设置开机启动
systemctl enable wg-quick@wgcf
systemctl enable wg-quick@wgcf > /dev/null 2>&1
# 优先使用 IPv4 网络
grep -qE '^[ ]*precedence[ ]*::ffff:0:0/96[ ]*100' /etc/gai.conf || echo 'precedence ::ffff:0:0/96 100' | tee -a /etc/gai.conf