Update xuiip6

This commit is contained in:
2026-01-14 23:23:47 +08:00
committed by GitHub
parent 6195bce20f
commit c1be032403

62
xuiip6
View File

@@ -1,50 +1,32 @@
bash << 'EOF'
set -e
echo "=== [1/7] 强制 DNS 为 IPv6 优先 ==="
chattr -i /etc/resolv.conf 2>/dev/null || true
cat > /etc/resolv.conf << 'DNS'
nameserver 2606:4700:4700::1111
nameserver 2001:4860:4860::8888
DNS
chattr +i /etc/resolv.conf
echo "=== [1/5] 安装依赖 ==="
apt update -y >/dev/null 2>&1 || true
apt install -y jq >/dev/null 2>&1 || true
echo "=== [2/7] 修补 glibc 地址选择策略IPv6 优先)==="
cat > /etc/gai.conf << 'GAI'
precedence ::1/128 50
precedence ::/0 40
precedence 2002::/16 30
precedence ::ffff:0:0/96 10
GAI
echo "=== [3/7] 禁止 Xray 使用 IPv4内核级==="
sysctl -w net.ipv4.tcp_syn_retries=2 >/dev/null
sysctl -w net.ipv4.tcp_retries2=5 >/dev/null
echo "=== [4/7] 确保 IPv6 未被禁用 ==="
sysctl -w net.ipv6.conf.all.disable_ipv6=0 >/dev/null
sysctl -w net.ipv6.conf.default.disable_ipv6=0 >/dev/null
echo "=== [5/7] 修补 Xray SOCKS5 出站为 IPv6-only ==="
XRAY_CONF="/usr/local/x-ui/bin/config.json"
if [ -f "$XRAY_CONF" ]; then
cp "$XRAY_CONF" "${XRAY_CONF}.bak.$(date +%s)"
jq '
(.outbounds[] | select(.protocol=="freedom").settings.domainStrategy)="UseIPv6"
' "$XRAY_CONF" > /tmp/xray.json && mv /tmp/xray.json "$XRAY_CONF"
else
echo "未找到 Xray 配置文件,跳过自动注入(但系统层已生效)"
fi
echo "=== [2/5] 备份 Xray 配置 ==="
cp "$XRAY_CONF" "${XRAY_CONF}.bak.$(date +%s)"
echo "=== [6/7] 重启服务 ==="
systemctl restart x-ui 2>/dev/null || true
systemctl restart xray 2>/dev/null || true
echo "=== [3/5] 强制 SOCKS5 出站为 IPv6 + 禁止复用 ==="
jq '
(.outbounds[] | select(.protocol=="freedom")) |=
(.settings.domainStrategy="UseIPv6"
| .settings.redirect=null
| .mux.enabled=false)
|
(.inbounds[] | select(.protocol=="socks")) |=
(.sniffing.enabled=false)
' "$XRAY_CONF" > /tmp/xray.json && mv /tmp/xray.json "$XRAY_CONF"
echo "=== [7/7] 验证提示 ==="
echo "请执行:"
echo "curl --socks5-hostname 127.0.0.1:你的端口 https://ipv6.google.com"
echo "如果返回 HTML则 SOCKS5 已 100% 修复"
echo "=== [4/5] 清空所有现有 TCP 会话(防假活)==="
ss -K dst :32238 || true
echo "=== SOCKS5 IPv6 修补完成 ==="
echo "=== [5/5] 重启服务 ==="
systemctl restart x-ui || true
systemctl restart xray || true
echo "=== 完成SOCKS5 已进入“非假活”模式 ==="
EOF