mirror of
https://gitlab.com/fscarmen/warp.git
synced 2026-06-15 03:25:42 +08:00
Automatically select the command ping6 or ping -6.
Former-commit-id: f87651ef5e6c07ffd81e90ac35dcaef971a47046
This commit is contained in:
@@ -445,7 +445,7 @@ check_operating_system() {
|
||||
[[ "$(echo "$SYS" | sed "s/[^0-9.]//g" | cut -d. -f1)" -lt "${MAJOR[int]}" ]] && error " $(text_eval 26) "
|
||||
}
|
||||
|
||||
# 安装系统依赖
|
||||
# 安装系统依赖及定义 ping 指令
|
||||
check_dependencies() {
|
||||
# 对于 alpine 系统,升级库并重新安装依赖
|
||||
if [ "$SYSTEM" = Alpine ]; then
|
||||
@@ -462,6 +462,7 @@ check_dependencies() {
|
||||
info "\n $(text 8) \n"
|
||||
fi
|
||||
fi
|
||||
PING6='ping -6' && [ $(type -p ping6) ] && PING6='ping6'
|
||||
}
|
||||
|
||||
# 检测 IPv4 IPv6 信息,WARP Ineterface 开启,普通还是 Plus账户 和 IP 信息
|
||||
@@ -1018,7 +1019,7 @@ EOF
|
||||
IPV4=0; IPV6=0
|
||||
LAN4=$(ip route get 192.168.193.10 2>/dev/null | grep -oP 'src \K\S+')
|
||||
LAN6=$(ip route get 2606:4700:d0::a29f:c001 2>/dev/null | grep -oP 'src \K\S+')
|
||||
[[ "$LAN6" != "::1" && "$LAN6" =~ ^([a-f0-9]{1,4}:){2,4}[a-f0-9]{1,4} ]] && INET6=1 && ping -6 -c2 -w10 2606:4700:d0::a29f:c001 >/dev/null 2>&1 && IPV6=1 && CDN=-6 && ip6_info
|
||||
[[ "$LAN6" != "::1" && "$LAN6" =~ ^([a-f0-9]{1,4}:){2,4}[a-f0-9]{1,4} ]] && INET6=1 && $PING6 -c2 -w10 2606:4700:d0::a29f:c001 >/dev/null 2>&1 && IPV6=1 && CDN=-6 && ip6_info
|
||||
[[ "$LAN4" =~ ^([0-9]{1,3}\.){3} ]] && INET4=1 && ping -c2 -W3 162.159.193.10 >/dev/null 2>&1 && IPV4=1 && CDN=-4 && ip4_info
|
||||
[[ "$L" = C && -n "$COUNTRY4" ]] && COUNTRY4=$(translate "$COUNTRY4")
|
||||
[[ "$L" = C && -n "$COUNTRY6" ]] && COUNTRY6=$(translate "$COUNTRY6")
|
||||
@@ -1361,10 +1362,10 @@ install() {
|
||||
# 反复测试最佳 MTU。 Wireguard Header:IPv4=60 bytes,IPv6=80 bytes,1280 ≤ MTU ≤ 1420。 ping = 8(ICMP回显示请求和回显应答报文格式长度) + 20(IP首部) 。
|
||||
# 详细说明:<[WireGuard] Header / MTU sizes for Wireguard>:https://lists.zx2c4.com/pipermail/wireguard/2017-December/002201.html
|
||||
MTU=$((1500-28))
|
||||
[ "$IPV4$IPV6" = 01 ] && ping -6 -c1 -W1 -s $MTU -Mdo 2606:4700:d0::a29f:c001 >/dev/null 2>&1 || ping -c1 -W1 -s $MTU -Mdo 162.159.193.10 >/dev/null 2>&1
|
||||
[ "$IPV4$IPV6" = 01 ] && $PING6 -c1 -W1 -s $MTU -Mdo 2606:4700:d0::a29f:c001 >/dev/null 2>&1 || ping -c1 -W1 -s $MTU -Mdo 162.159.193.10 >/dev/null 2>&1
|
||||
until [[ $? = 0 || $MTU -le $((1280+80-28)) ]]; do
|
||||
MTU=$((MTU-10))
|
||||
[ "$IPV4$IPV6" = 01 ] && ping -6 -c1 -W1 -s $MTU -Mdo 2606:4700:d0::a29f:c001 >/dev/null 2>&1 || ping -c1 -W1 -s $MTU -Mdo 162.159.193.10 >/dev/null 2>&1
|
||||
[ "$IPV4$IPV6" = 01 ] && $PING6 -c1 -W1 -s $MTU -Mdo 2606:4700:d0::a29f:c001 >/dev/null 2>&1 || ping -c1 -W1 -s $MTU -Mdo 162.159.193.10 >/dev/null 2>&1
|
||||
done
|
||||
|
||||
if [ "$MTU" -eq $((1500-28)) ]; then
|
||||
@@ -1374,7 +1375,7 @@ install() {
|
||||
else
|
||||
for ((i=0; i<9; i++)); do
|
||||
(( MTU++ ))
|
||||
( [ "$IPV4$IPV6" = 01 ] && ping -6 -c1 -W1 -s $MTU -Mdo 2606:4700:d0::a29f:c001 >/dev/null 2>&1 || ping -c1 -W1 -s $MTU -Mdo 162.159.193.10 >/dev/null 2>&1 ) || break
|
||||
( [ "$IPV4$IPV6" = 01 ] && $PING6 -c1 -W1 -s $MTU -Mdo 2606:4700:d0::a29f:c001 >/dev/null 2>&1 || ping -c1 -W1 -s $MTU -Mdo 162.159.193.10 >/dev/null 2>&1 ) || break
|
||||
done
|
||||
(( MTU-- ))
|
||||
fi
|
||||
|
||||
+3
-2
@@ -301,7 +301,7 @@ check_operating_system() {
|
||||
[ "$(echo "$SYS" | sed "s/[^0-9.]//g" | cut -d. -f1)" -lt "${MAJOR[int]}" ] && error " $(text_eval 7) "
|
||||
}
|
||||
|
||||
# 安装 curl
|
||||
# 安装系统依赖及定义 ping 指令
|
||||
check_dependencies() {
|
||||
# 对于 alpine 系统,升级库并重新安装依赖
|
||||
if [ "$SYSTEM" = Alpine ]; then
|
||||
@@ -318,6 +318,7 @@ check_dependencies() {
|
||||
info "\n $(text 9) \n"
|
||||
fi
|
||||
fi
|
||||
PING6='ping -6' && [ $(type -p ping6) ] && PING6='ping6'
|
||||
}
|
||||
|
||||
# 检测 IPv4 IPv6 信息,WARP Ineterface 开启,普通还是 Plus账户 和 IP 信息
|
||||
@@ -693,7 +694,7 @@ EOF
|
||||
[[ "$LAN6" != "::1" && "$LAN6" =~ ^([a-f0-9]{1,4}:){2,4}[a-f0-9]{1,4} ]] && INET6=1
|
||||
|
||||
if [ "$STATUS" != 2 ]; then
|
||||
[ "$INET6" = 1 ] && ping -6 -c2 -w10 2606:4700:d0::a29f:c001 >/dev/null 2>&1 && IPV6=1 && CDN=-6 && ip6_info
|
||||
[ "$INET6" = 1 ] && $PING6 -c2 -w10 2606:4700:d0::a29f:c001 >/dev/null 2>&1 && IPV6=1 && CDN=-6 && ip6_info
|
||||
[ "$INET4" = 1 ] && ping -c2 -W3 162.159.193.10 >/dev/null 2>&1 && IPV4=1 && CDN=-4 && ip4_info
|
||||
else
|
||||
if grep -qE "^AllowedIPs.*\:\:\/0" /opt/warp-go/warp.conf || [ "$INET6" = 1 ]; then
|
||||
|
||||
Reference in New Issue
Block a user