65 lines
2.0 KiB
Bash
Executable File
65 lines
2.0 KiB
Bash
Executable File
#!/bin/bash
|
||
|
||
echo "=== СТАТУС ПРОКСИ ==="
|
||
echo ""
|
||
|
||
# Проверка Shadowsocks
|
||
echo "1. Shadowsocks сервис:"
|
||
if launchctl list | grep -q shadowsocks; then
|
||
echo " ✅ Запущен"
|
||
else
|
||
echo " ❌ Не запущен"
|
||
fi
|
||
|
||
# Проверка порта
|
||
echo ""
|
||
echo "2. Порт 1080:"
|
||
if lsof -i :1080 | grep -q LISTEN; then
|
||
echo " ✅ Слушает"
|
||
else
|
||
echo " ❌ Не слушает"
|
||
fi
|
||
|
||
# Проверка системного прокси
|
||
echo ""
|
||
echo "3. Системный прокси:"
|
||
INTERFACE=$(networksetup -listallnetworkservices | grep -E "Wi-Fi|Ethernet" | head -1)
|
||
PROXY_STATUS=$(networksetup -getsocksfirewallproxy "$INTERFACE" | grep "Enabled:" | awk '{print $2}')
|
||
if [ "$PROXY_STATUS" = "Yes" ]; then
|
||
SERVER=$(networksetup -getsocksfirewallproxy "$INTERFACE" | grep "Server:" | awk '{print $2}')
|
||
PORT=$(networksetup -getsocksfirewallproxy "$INTERFACE" | grep "Port:" | awk '{print $2}')
|
||
echo " ✅ Включен: $SERVER:$PORT"
|
||
else
|
||
echo " ❌ Выключен"
|
||
fi
|
||
|
||
# Проверка через curl
|
||
echo ""
|
||
echo "4. Тест подключения:"
|
||
SS_IP=$(curl -s --socks5 127.0.0.1:1080 --max-time 5 ifconfig.me 2>/dev/null)
|
||
DIRECT_IP=$(curl -s --max-time 5 ifconfig.me 2>/dev/null)
|
||
|
||
if [ -n "$SS_IP" ]; then
|
||
echo " Через Shadowsocks: $SS_IP"
|
||
if [ "$SS_IP" = "209.38.32.21" ]; then
|
||
echo " ✅ Правильный IP"
|
||
else
|
||
echo " ⚠️ Неправильный IP"
|
||
fi
|
||
else
|
||
echo " ❌ Shadowsocks не отвечает"
|
||
fi
|
||
|
||
if [ -n "$DIRECT_IP" ]; then
|
||
echo " Прямое подключение: $DIRECT_IP"
|
||
fi
|
||
|
||
echo ""
|
||
echo "=== РЕКОМЕНДАЦИИ ==="
|
||
if [ "$PROXY_STATUS" != "Yes" ]; then
|
||
echo "❌ Включите системный прокси: toggle-shadowsocks-proxy.sh"
|
||
fi
|
||
if [ -z "$SS_IP" ] || [ "$SS_IP" != "209.38.32.21" ]; then
|
||
echo "❌ Shadowsocks не работает, проверьте: launchctl list | grep shadowsocks"
|
||
fi
|