# --- Proxy Settings --- # Переменные для прокси по умолчанию (если нужно, чтобы он был включен всегда) # export HTTP_PROXY="http://127.0.0.1:10809" # export HTTPS_PROXY="http://127.0.0.1:10809" # --- WSL Host Update (только WSL NAT) --- update_hproxy() { local script script="$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")/../scripts/setup-hproxy.sh" if [ ! -f "$script" ]; then echo "❌ Скрипт не найден: $script" return 1 fi if ! awk '/^\[boot\]$/{b=1;next} /^\[/{b=0} b && /^[[:space:]]*command[[:space:]]*=/ && /setup-hproxy\.sh/' \ "${WSL_CONF_PATH:-/etc/wsl.conf}" 2>/dev/null | grep -q .; then echo "⚠️ Boot command не настроен — update_hproxy работает только для WSL NAT" return 1 fi if ! sudo "$script"; then echo "❌ Ошибка обновления hproxy.local" return 1 fi echo "✅ hproxy.local -> $(getent hosts hproxy.local 2>/dev/null | awk '{print $1}')" } # Удобные функции-переключатели для терминала proxy_on() { export HTTP_PROXY="http://hproxy.local:12334" export HTTPS_PROXY="http://hproxy.local:12334" export ALL_PROXY="socks5://hproxy.local:12334" export NO_PROXY="hproxy.local,localhost,127.0.0.1,.concept-software.ru" echo "✅ Proxy enabled. Checking route..." # Подставляем результат выполнения curl прямо в строку echo "🌍 Current IP: $(curl -s --max-time 3 https://ifconfig.me)" } proxy_off() { unset HTTP_PROXY HTTPS_PROXY ALL_PROXY echo "❌ Proxy disabled. Checking route..." echo "🏠 Current IP: $(curl -s --max-time 3 https://ifconfig.me)" } # Заодно можно добавить алиас, чтобы быстро чекать IP в любой момент без переключения alias myip='echo "IP: $(curl -s --max-time 3 https://ifconfig.me)"'