File size: 2,591 Bytes
386b079
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#!/bin/bash

echo "=== 检查 Clash Verge 代理配置 ==="
echo ""

# 1. 检查网络接口
echo "1. 网络接口信息:"
ip addr show | grep -E "^[0-9]+:|inet " | head -10
echo ""

# 2. 检查路由
echo "2. 默认路由:"
ip route show | grep default
echo ""

# 3. 检测 Windows 主机 IP
WSL_HOST_IP=$(ip route show | grep -i default | awk '{ print $3}' | head -1)
echo "3. WSL 网关 IP(Windows 主机): $WSL_HOST_IP"
echo ""

# 4. 测试 Clash 端口
echo "4. 测试 Clash 代理端口:"
for port in 7897 7890 7891 1080; do
    if timeout 2 bash -c "echo > /dev/tcp/$WSL_HOST_IP/$port" 2>/dev/null; then
        echo "  ✓ 端口 $port 可达"
        if [ $port -eq 7897 ]; then
            echo "    这是 Clash 混合代理端口(支持 HTTP 和 SOCKS5)"
        elif [ $port -eq 7890 ]; then
            echo "    这可能是 Clash HTTP 代理端口"
        elif [ $port -eq 7891 ]; then
            echo "    这可能是 Clash SOCKS5 代理端口"
        fi
    else
        echo "  ✗ 端口 $port 不可达"
    fi
done
echo ""

# 5. 检查环境变量
echo "5. 代理环境变量:"
echo "  http_proxy: ${http_proxy:-未设置}"
echo "  https_proxy: ${https_proxy:-未设置}"
echo "  HTTP_PROXY: ${HTTP_PROXY:-未设置}"
echo "  HTTPS_PROXY: ${HTTPS_PROXY:-未设置}"
echo "  all_proxy: ${all_proxy:-未设置}"
echo "  ALL_PROXY: ${ALL_PROXY:-未设置}"
echo ""

# 6. 测试 HTTP 连接
echo "6. 测试 HTTP 连接(通过代理):"
if [ -n "$http_proxy" ] || [ -n "$HTTP_PROXY" ]; then
    PROXY_URL=${http_proxy:-$HTTP_PROXY}
    echo "  使用代理: $PROXY_URL"
    curl -s --connect-timeout 5 --proxy "$PROXY_URL" https://www.google.com > /dev/null 2>&1
    if [ $? -eq 0 ]; then
        echo "  ✓ HTTP 代理工作正常"
    else
        echo "  ✗ HTTP 代理连接失败"
    fi
else
    echo "  未设置代理环境变量,测试直连..."
    curl -s --connect-timeout 5 https://www.google.com > /dev/null 2>&1
    if [ $? -eq 0 ]; then
        echo "  ✓ 直连成功(可能通过 TUN 模式自动代理)"
    else
        echo "  ✗ 连接失败"
    fi
fi
echo ""

# 7. 测试 hf.co 连接
echo "7. 测试 hf.co 连接:"
timeout 5 bash -c "echo > /dev/tcp/hf.co/443" 2>/dev/null
if [ $? -eq 0 ]; then
    echo "  ✓ hf.co:443 可达"
else
    echo "  ✗ hf.co:443 不可达"
fi
echo ""

# 8. 检查 SSH 配置
echo "8. SSH 配置:"
if [ -f ~/.ssh/config ]; then
    echo "  hf.co 配置:"
    grep -A 10 "Host hf.co" ~/.ssh/config || echo "  未找到 hf.co 配置"
else
    echo "  ~/.ssh/config 不存在"
fi