feat: issue #4 — geo-тест внешних IP в test_network.sh
Добавлен блок «7. Geo: внешние IP» — curl через прямой интерфейс и через дефолт (VPN). Показывает оба IP и проверяет что они разные. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -76,6 +76,21 @@ echo "=== 6. Краевые случаи ==="
|
||||
check "api.anthropic.com → amn0" "amn0" "ip route get $(dig +short api.anthropic.com A | head -1) 2>/dev/null"
|
||||
check "ya.ru → НЕ через amn0 (прямо)" "wl[pi]" "ip route get $(dig +short ya.ru A | head -1) 2>/dev/null"
|
||||
|
||||
echo ""
|
||||
echo "=== 7. Geo: внешние IP ==="
|
||||
DEV_DIRECT=$(ip route show default 2>/dev/null | awk '/default/ {print $5; exit}')
|
||||
ip_direct=$(curl -s --interface "$DEV_DIRECT" --max-time 10 https://ipinfo.io/ip 2>/dev/null)
|
||||
ip_vpn=$(curl -s --max-time 10 https://ipinfo.io/ip 2>/dev/null)
|
||||
echo " Прямой IP (через ${DEV_DIRECT:-?}): ${ip_direct:-недоступно}"
|
||||
echo " VPN IP (через amn0): ${ip_vpn:-недоступно}"
|
||||
if [ -n "$ip_direct" ] && [ -n "$ip_vpn" ] && [ "$ip_direct" != "$ip_vpn" ]; then
|
||||
echo -e " ${GRN}✓${CLR} IP разные — .ru идёт напрямую, остальное через VPN"
|
||||
pass=$((pass+1))
|
||||
else
|
||||
echo -e " ${YEL}!${CLR} IP одинаковые или недоступны — проверь маршрутизацию"
|
||||
fail=$((fail+1))
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "========================================="
|
||||
echo -e "Итого: ${GRN}$pass пройдено${CLR}, ${RED}$fail провалено${CLR}"
|
||||
|
||||
Reference in New Issue
Block a user