Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors

Скрипт проверки уникальности IPv6-прокси по портам

Linux и DevOps

Материал подходит администраторам сетей, self-hosting-инфраструктур и пользователям пулов IPv6-прокси. Скрипт позволяет проверить, действительно ли каждый порт возвращает собственный внешний адрес, что важно для систем распределённых прокси и автоматизированных инструментов.

Задачи скрипта

Для пулов IPv6-прокси важно удостовериться, что каждый порт выдаёт уникальный внешний адрес. Скрипт автоматически проходит по диапазону портов, делает запрос через каждый и собирает полученные IP для последующей проверки уникальности.

Bash-скрипт проверки IPv6-прокси

Создайте файл check-proxies.sh и вставьте содержимое. Перед запуском укажите параметры подключения — адрес сервера, диапазон портов и данные авторизации.

#!/usr/bin/env bash

# --- НАСТРОЙКИ ---

PROXY_HOST="SERVER_IPv4_OR_DOMAIN"
START_PORT=30000
COUNT=100
PROXY_USER="proxy_login"
PROXY_PASS="proxy_password"

CHECK_URL="https://api64.ipify.org"

# --- ЛОГИКА ---

declare -A IPS
ok=0
fail=0

for ((i=0; i<COUNT; i++)); do
  port=$((START_PORT + i))
  proxy_url="http://$PROXY_USER:$PROXY_PASS@$PROXY_HOST:$port"

  echo "[$((i+1))/$COUNT] Проверяю порт $port ..."

  ip=$(curl -sS --max-time 10 -x "$proxy_url" "$CHECK_URL")

  if [[ -z "$ip" ]]; then
    echo "  Ошибка: невозможно получить IP через порт $port"
    ((fail++))
    continue
  fi

  echo "  Получен адрес: $proxy_url → $ip"

  IPS["$ip"]=1
  ((ok++))
done

echo
echo "----------------------"
echo "Успешных запросов: $ok"
echo "Неуспешных:        $fail"
echo "Уникальных IP:     ${#IPS[@]}"
echo "Ожидаем уникальных: $ok"
echo "----------------------"

if [[ ${#IPS[@]} -eq $ok ]]; then
  echo "Все IP уникальны. Конфигурация работает корректно."
else
  echo "Обнаружены повторяющиеся адреса. Требуется диагностика."
fi

Как использовать

1. Настройте параметры

Укажите адрес сервера, диапазон портов и данные авторизации прокси.

2. Сделайте файл исполняемым

chmod +x check-proxies.sh

3. Запустите проверку

./check-proxies.sh

Время работы зависит от количества проверяемых портов.

Пример результата

[1/100] Проверяю порт 30000 ...
  Получен адрес: 30000 → 2a00:xxxx:xxxx:xxxx::1
[2/100] Проверяю порт 30001 ...
  Получен адрес: 30001 → 2a00:xxxx:xxxx:xxxx::2
...
----------------------
Успешных запросов: 100
Неуспешных:        0
Уникальных IP:     100
Ожидаем уникальных: 100
Все IP уникальны. Конфигурация работает корректно.

Заключение

Скрипт позволяет оперативно проверить корректность распределения IPv6-адресов по портам и выявить проблемы в конфигурации, что важно при обслуживании крупных пулов прокси и автоматизации сетевых процессов.

Оцените статью
ctrllife.ru
Подписаться
Уведомить о
guest
0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x