Введение

В этом пошаговом гайде вы создадите готовую к работе ферму мобильных прокси: соберёте оборудование, подготовите сервер, установите и настроите 3proxy и iProxy, организуете ротацию IP и мониторинг, а затем проверите качество соединений и рассчитаете окупаемость. Мы разберём всё от выбора модемов Huawei и ZTE до тонкостей настройки сети, чтобы вы уверенно получили результат.

Вы получите рабочий набор HTTP(S) и SOCKS5 прокси с авторизацией по логину и паролю, каждый из которых будет выходить в интернет через отдельный мобильный модем и SIM-карту. Вы научитесь управлять частотой смены IP-адресов, отслеживать работоспособность, быстро масштабировать стенд и понимать, как посчитать ROI и точку безубыточности.

Этот гайд подойдёт тем, кто начинает с нуля, но мы включили блоки и для продвинутых: альтернативная маршрутизация, автоматизация, улучшение отказоустойчивости, расчёт TCO и стратегии масштабирования. Предполагаем, что вы уверенно пользуетесь компьютером и готовы выполнять команды в терминале. Предыдущий опыт администрирования Linux не обязателен, все действия расписаны подробно.

Перед началом полезно знать базовые понятия сети: что такое IP-адрес, интерфейс, шлюз. Если это незнакомо, не волнуйтесь — мы объясним по ходу.

Сколько времени потребуется: на подготовку и закупки обычно 1-7 дней в зависимости от доставки оборудования, на сборку стенда и базовую настройку 4-8 часов, на тесты 1-2 часа. На доводку автоматизации и мониторинга заложите ещё 2-4 часа. В итоге за 1-3 дня вы получите рабочую ферму.

Совет: Если вы сомневаетесь в объёме первой партии модемов, начните с 2-4 штук. Это позволит отладить процесс без лишних затрат и сразу применить полученный опыт при масштабировании.

Предварительная подготовка

Перед сборкой убедитесь, что у вас есть всё необходимое. Это сэкономит часы и избавит от лишних пауз.

Необходимые инструменты и доступы

  • Доступ к серверу с Ubuntu (локальный мини-ПК, настольный ПК или удалённый сервер с подключенным через USB оборудованием).
  • Права администратора (sudo) на сервере.
  • Учётная запись для покупок оборудования и SIM-карт.
  • План помещения: где будет стоять стенд, как будет обеспечено питание и охлаждение.

Системные требования к серверу

  • Процессор: 2 ядра и выше.
  • ОЗУ: 4 ГБ минимум, 8 ГБ предпочтительно на 10-20 модемов.
  • Накопитель: SSD от 120 ГБ.
  • Порты USB: от 4, лучше 8-16 через USB-хабы с внешним питанием.
  • Сеть: стабильный Ethernet или Wi‑Fi для управления, лучше гигабитный Ethernet.

Что скачать и установить

  • ОС: Ubuntu Server 22.04 или 24.04 LTS.
  • 3proxy — для развёртывания HTTP(S)/SOCKS5 прокси.
  • iProxy — менеджер мобильных прокси и автоматизации ротации IP (как дополнительный инструмент).
  • ModemManager, libqmi, usb-modeswitch — для работы с USB-модемами.
  • Инструменты сети: iproute2, nftables или iptables, curl, dig, tcpdump, cron.
  • Опционально: tmux или screen для устойчивой работы в терминале.

Резервные копии и откаты

Резервное копирование на старте минимально: сохраняйте конфигурационные файлы 3proxy и ваши скрипты ротации. Достаточно хранить дубликаты в отдельной папке конфигов и на внешнем носителе.

⚠️ Внимание: Сохраните список логинов и паролей прокси отдельно и зашифруйте его. В случае компрометации смените пароли и обновите конфиги немедленно.

Совет: Создайте папку backup в домашнем каталоге и после каждого изменения копируйте туда конфиги с датой, например backup/2025-01-15/3proxy.cfg.

Базовые понятия

Чтобы уверенно двигаться дальше, зафиксируем ключевые термины простым языком.

  • Мобильный прокси — это HTTP(S) или SOCKS5 сервер, который отправляет ваш трафик в интернет через мобильную сеть (оператор сотовой связи). Внешний IP при этом чаще всего динамический и меняется при переподключении к сети.
  • Модем — USB-устройство (например Huawei E3372, ZTE MF79), обеспечивающее доступ к мобильной сети. Один модем = одна линия мобильного интернета.
  • SIM-карта — карта оператора, вставляется в модем и определяет тариф, лимиты, доступный трафик и поведение IP.
  • Ротация IP — смена внешнего IP-адреса путём переподключения модема или смены сотового узла. Управляется программно и по расписанию.
  • Интерфейс — сетевой «порт» в системе, например usb0, wwan0, eth0. За каждым интерфейсом стоит конкретный модем или сетевое подключение.
  • Binding — привязка исходящего трафика прокси к нужному интерфейсу, чтобы каждый прокси ходил в интернет через «свой» модем.
  • Policy routing — политика маршрутизации по портам или меткам пакетов, чтобы развести трафик по разным интерфейсам.

Важно понимать: мобильные операторы часто используют CGNAT, поэтому ваш «внешний» IP по сути может быть адресом общедоступного пула оператора, но на стороне сервисов это обычно распознаётся как мобильный трафик, что и делает такие прокси ценными для некоторых задач тестирования, локализации и автоматизации.

Совет: Планируйте частоту ротации IP с запасом: слишком частые переподключения могут вызвать ограничения у оператора и нестабильность.

Шаг 1: Спроектировать ферму и рассчитать экономику

Цель этапа

Определить, сколько модемов и SIM-карт вам нужно, какой сервер подобрать, какой метод ротации использовать и какова ожидаемая окупаемость.

Пошаговая инструкция

  1. Определите количество одновременных прокси. Пример: вам нужно 10 отдельных потоков — планируйте 10 модемов и 10 SIM-карт.
  2. Выберите частоту ротации IP. Начните с 15-30 минут для устойчивости. Позже подстройте под задачи.
  3. Подберите архитектуру: один сервер и несколько USB-хабов с модемами. На 10 модемов хватит 1 мини-ПК с 8 ГБ ОЗУ.
  4. Оцените энергопитание: каждому USB-модему требуется до 0.5 А на пике. Выберите хабы с внешним БП 5 В и запасом по току.
  5. Рассчитайте CAPEX: стоимость сервера, модемов, хабов, антенн, SIM-карт. Пример: сервер 300 у.е., 10 модемов по 30 у.е. = 300, хаб(ы) 60, сим-карты на старт 20, итого ~680 у.е.
  6. Рассчитайте OPEX: месячные расходы оператора (например 10 SIM по 5-10 у.е.), электричество (небольшое), интернет для управления. Пример: 10 SIM по 7 у.е. = 70 у.е./мес.
  7. Спрогнозируйте доход или экономию: оцените, зачем вам прокси и как они окупятся. Пример: если каждый прокси экономит 15 у.е./мес. на услугах или приносит сопоставимую выгоду, 10 прокси = 150 у.е./мес.
  8. Посчитайте срок окупаемости: ROI = (ежемесячная выгода − OPEX) / CAPEX. Пример: (150 − 70) / 680 ≈ 0.117, то есть около 8.5 месяцев до полной окупаемости.
  9. Заложите риски: замены SIM, брак модемов, возможные паузы. Планируйте +10-20% к бюджету.
  10. Подумайте о масштабировании: стойка на 20-40 модемов требует лучшего охлаждения и кабель-менеджмента. Сразу продумайте полки, кабели и маркировку.

⚠️ Внимание: Используйте мобильные прокси только в рамках закона и договоров с операторами связи. Запрещены злоупотребления трафиком и любые незаконные действия. Соблюдайте правила сервисов, где вы тестируете интеграции.

✅ Проверка: У вас есть таблица со списком модемов, SIM-карт, план ротации IP и ориентировочный расчёт окупаемости. Вы понимаете, сколько портов прокси вам нужно и какие ресурсы потребуется закупить.

Возможные проблемы и решения

  • Неясна доходная часть — начните с минимальной конфигурации в 2-4 модема и проверьте гипотезы.
  • Сложно оценить расход трафика — мониторьте ежесуточно первые 2 недели и подберите тариф.
  • Сомнения в нагрузке сервера — берите запас: 8 ГБ памяти и SSD, это увеличит стабильность.

Шаг 2: Выбрать и купить оборудование и SIM-карты

Цель этапа

Определить точные модели модемов, хабов, антенн и SIM-карт, чтобы обеспечить стабильную связь и гибкую ротацию IP.

Пошаговая инструкция

  1. Выберите модемы. Надёжные варианты: Huawei E3372h, E3372s, ZTE MF79, ZTE MF833, также аналогичные LTE USB-модемы. Берите одну модель на партию для унификации.
  2. Проверьте режим работы модемов: Hilink (с веб-интерфейсом, NAT) или Stick/NCM (сетевой интерфейс в ОС). Для управляемой ротации удобен Stick/NCM, но Hilink тоже подходит.
  3. Купите USB-хабы с внешним питанием. На 10 модемов подойдут 2 хаба по 7 портов с БП 5 В 3-5 А. Важен качественный блок питания.
  4. Подберите антенны. В большинстве случаев достаточно штатных, но если покрытие слабое, берите антенны с разъёмами CRC9 или TS9 под вашу модель.
  5. Заранее приобретите качественные кабели USB 2.0, короткие (0.3-0.5 м), чтобы снизить потери и помехи.
  6. Купите SIM-карты. Ищите тарифы со стабильным LTE, белым списком разрешённых сценариев, без жёстких ограничений по модему. Уточняйте поддержку tethering и объёма трафика.
  7. Возьмите охлаждение: компактные вентиляторы 80-120 мм и решётки для обдува всей стойки с модемами.
  8. Подготовьте маркировку: наклейки для модемов и SIM с номером и портом. Это сильно ускорит поддержку.

Совет: Если вы не уверены в выбранной модели, купите по 1-2 модема разных брендов и протестируйте при ваших условиях сигнала. Затем докупите остальную партию той же модели.

✅ Проверка: Оборудование получено: модемы, хабы, БП, кабели, SIM-карты, антенны, охлаждение. У вас есть список IMEI, серийных номеров и подписанные SIM-карты для дальнейшей привязки к портам.

Возможные проблемы и решения

  • Модемы перегреваются — обеспечьте обдув и расстояние между ними. Рассмотрите алюминиевые радиаторы.
  • Хаб «сыпется» при нагрузке — замените блок питания на более мощный или возьмите другой хаб с проверенной репутацией.
  • Слабый уровень сигнала — смените место установки, используйте внешнюю антенну, удлините вынос модема к окну.

Шаг 3: Собрать стенд и подключить всё физически

Цель этапа

Аккуратно собрать и запитать ферму, чтобы каждая линия связи и питание работали стабильно и предсказуемо.

Пошаговая инструкция

  1. Установите сервер на постоянное место, подключите к сети и интернету.
  2. Расположите USB-хабы так, чтобы к ним был доступ для обслуживания, и чтобы кабели не натягивались.
  3. Подключите хабы к серверу короткими качественными USB-кабелями.
  4. Подключите блоки питания к хабам и включите их.
  5. Вставьте SIM-карты в модемы. Проверьте правильную ориентацию SIM.
  6. Подпишите каждый модем с внешней стороны (например, 1..10) и соответствующую SIM.
  7. Подключайте модемы к хабам постепенно, по одному, наблюдая индикацию. Дайте 10-20 секунд на инициализацию каждого модема.
  8. Организуйте охлаждение: поставьте вентиляторы так, чтобы воздух проходил вдоль рядов модемов. Избегайте обдува прямо в разъёмы.
  9. Соберите кабели в жгуты и закрепите стяжками, оставив небольшой запас длины для сервисных операций.

Совет: Не заполняйте хаб всеми портами сразу. Оставляйте один свободный порт на каждый хаб для отладки и временных подключений.

✅ Проверка: Сервер видит подключённые хабы и модемы. При поочерёдном подключении индикаторы горят стабильно, перегрева нет, кабели не перегибаются. Оборудование шумит умеренно, охлаждение работает.

Возможные проблемы и их решения

  • Модем моргает и пропадает из системы — смените порт на хабе, попробуйте другой кабель, проверьте блок питания хаба.
  • Сильный шум от вентиляторов — уменьшите обороты или поставьте больше вентиляторов на меньших оборотах.
  • Хаб не определяется — подключите напрямую к серверу, проверьте кабель и порт, замените БП хаба.

Шаг 4: Подготовить сервер и базовую безопасность

Цель этапа

Установить и обновить ОС, включить базовую защиту, приготовить инструменты для работы с модемами.

Пошаговая инструкция

  1. Установите Ubuntu Server 22.04 или 24.04 LTS, создайте пользователя с правами sudo.
  2. Обновите систему: выполните команду sudo apt update, затем sudo apt upgrade -y.
  3. Установите инструменты: sudo apt install -y modemmanager usb-modeswitch libqmi-utils iproute2 nftables curl tcpdump cron tmux.
  4. Включите ModemManager: sudo systemctl enable --now ModemManager.
  5. Настройте базовый фаервол nftables: разрешите SSH доступ и порты будущих прокси. Создайте простой набор правил, который принимает уже установленные соединения и блокирует лишнее.
  6. Создайте пользователя proxyuser без привилегий для запуска 3proxy: sudo adduser --system --group --no-create-home proxyuser.
  7. Создайте папки для конфигов: sudo mkdir -p /etc/proxyfarm /var/log/proxyfarm /var/log/3proxy.
  8. Включите автоматическое обновление безопасности: sudo apt install -y unattended-upgrades, затем активируйте его.
  9. Синхронизируйте время: sudo apt install -y chrony и убедитесь, что clock синхронизирован.

Совет: Используйте tmux при длительных настройках. Запустите tmux перед началом, чтобы случайный разрыв SSH не прервал процесс.

✅ Проверка: Команда lsb_release -a показывает корректную версию Ubuntu, ModemManager активен, папки для конфигов и логов существуют, вход по SSH работает стабильно, базовый фаервол включён, время синхронизировано.

Возможные проблемы и решения

  • Недоступен SSH — проверьте правила фаервола и сетевой интерфейс. Откатите изменения, если заблокировали доступ.
  • ModemManager не стартует — пересоздайте сервис: sudo systemctl restart ModemManager и проверьте journalctl -u ModemManager.
  • Система перезагружается из-за питания USB — перенесите часть модемов на другой хаб, проверьте блок питания хаба.

Шаг 5: Настроить модемы и сеть

Цель этапа

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

Пошаговая инструкция

  1. Определите, как видится модем в системе. Подключите один модем и выполните команду для просмотра интерфейсов. Если модем работает в Hilink, вы увидите сетевой интерфейс типа ethX или enX и локальный шлюз. В режиме Stick/NCM появится интерфейс wwanX или usbX.
  2. Если модемы в Hilink и вас это устраивает, оставьте как есть. Если вам нужен Stick/NCM, используйте инструменты модема для переключения режима, либо приобретайте модемы сразу в нужном режиме. На этом этапе избегайте перепрошивок без опыта.
  3. Проверьте регистрацию в сети: для Stick/NCM режимов используйте ModemManager. Сначала выполните команду для просмотра списка модемов. Найдите индекс модема (например 0). Активируйте соединение командой с указанием APN оператора. Узнайте правильный APN у вашего оператора.
  4. Проверьте наличие IP: выведите адреса интерфейсов и убедитесь, что у wwan0 или usb0 есть адрес и маршрут по умолчанию для этого интерфейса.
  5. Подключайте модемы по одному. После каждого подключения повторяйте проверку появления нового интерфейса (wwan1, usb1 и так далее) и регистрации в сети. Для Hilink убедитесь, что у каждого интерфейса свой локальный шлюз (например 192.168.8.1, 192.168.9.1 и так далее, в зависимости от модели).
  6. Настройте уникальные метрики маршрутов, чтобы основной маршрут сервера не перехватывался модемами. Сделайте так, чтобы default route для серверного интерфейса имел приоритет. Для модемов будет использоваться policy routing по портам.
  7. Создайте таблицы маршрутизации для каждого модема. Предположим у вас два интерфейса: usb0 и usb1. Назначьте каждому свою таблицу. Добавьте маршруты по умолчанию, указывающие на шлюзы этих интерфейсов.
  8. Настройте маркировку пакетов по портам прокси. Допустим, вы хотите чтобы порт 31000 шёл через usb0, а 32000 через usb1. Создайте правила маркировки для входящих пакетов на эти порты и правила ip rule для отправки помеченных пакетов в соответствующие таблицы маршрутизации.
  9. Сохраните правила и сделайте их загрузку при старте системы. Используйте systemd unit или скрипт в /etc для применения при reboot.
  10. Проведите тест маршрутизации без прокси. Запустите произвольный запрос через порт на локальном сервере (например пробный слушатель) и используйте отладку tcpdump на интерфейсе usb0, чтобы увидеть исходящие пакеты, привязанные к вашему правилу. Затем повторите для usb1.

Альтернативный путь

Можно использовать привязку исходящего интерфейса силами 3proxy (параметр -e), тогда policy routing по портам можно упростить. Однако policy routing остаётся более универсальным и независимым от конфигурации 3proxy.

Совет: Для большого числа модемов автоматизируйте генерацию правил по списку портов и интерфейсов с помощью простого скрипта. Структура может быть такой: порт = 30000 + номер модема, интерфейс = usb + номер модема.

✅ Проверка: Для каждого модема существуют отдельные таблицы маршрутизации и правила. Тест с маркировкой показывает, что пакеты к порту 31000 идут через usb0, а к 32000 через usb1. Основное подключение сервера не ломается при отключении модема.

Возможные проблемы и решения

  • Случайно пропал интернет на сервере — удалите временно правила policy routing, восстановите основной маршрут, проверьте метрики.
  • Интерфейсы «прыгают» по названиям — закрепите имена через udev по VID/PID или по последовательному номеру USB-порта.
  • Интерфейс без IP — проверьте APN и регистрацию в сети, перезапустите ModemManager или переподключите модем.

Шаг 6: Установить и настроить 3proxy и iProxy

Цель этапа

Развернуть прокси-сервер для выдачи HTTP(S)/SOCKS5 прокси, настроить авторизацию и привязку выходного трафика каждого порта к соответствующему модему. Подготовить iProxy для удобного управления и автоматизации ротации.

Пошаговая инструкция: 3proxy

  1. Установите 3proxy. На Ubuntu удобно собрать пакет из репозитория или установить готовый бинарь. Разместите бинарь в /usr/local/bin, создайте системный юнит для запуска от имени proxyuser.
  2. Создайте конфиг /etc/proxyfarm/3proxy.cfg. Укажите глобальные настройки: auth strong, список пользователей и паролей, путь логов, ротацию логов, таймауты.
  3. Добавьте прокси-сервисы. Пример: для каждого модема создайте HTTP-прокси на порту 31000, 32000, 33000 и так далее. Если используете policy routing по портам, достаточно указать прослушивание на 0.0.0.0 и базовые параметры. Если хотите привязывать исходящий интерфейс через 3proxy, добавьте параметр -e с IP интерфейса модема.
  4. Включите логирование CONNECT и ошибок, укажите папку /var/log/3proxy с правами для proxyuser.
  5. Создайте systemd unit 3proxy.service, укажите ExecStart с конфигом, User=proxyuser, Group=proxyuser, Restart=always, установите LimitNOFILE достаточно высоким (например 65535).
  6. Запустите сервис: sudo systemctl daemon-reload, затем sudo systemctl enable --now 3proxy.
  7. Проверьте, что порты слушаются, и авторизация по логину и паролю работает. Проверьте несколько портов, соответствующих разным модемам.

Пошаговая инструкция: iProxy

  1. Установите iProxy как дополнительный менеджер. Это инструмент, который помогает управлять профилями модемов, автоматизировать ротацию IP и переключения, а также предоставлять удобный интерфейс управления. Разместите бинарь в /usr/local/bin и создайте конфигурационную папку /etc/proxyfarm/iproxy.
  2. Инициализируйте конфигурацию. Запустите команду инициализации, выберите каталог конфигов, пользователя для запуска и формат логов. Укажите, что прокси-порты уже поднимает 3proxy, а iProxy будет управлять ротацией и мониторингом.
  3. Добавьте модемы в iProxy. По очереди выберите интерфейсы usb0, usb1 и так далее, укажите для каждого: APN, таймауты подключения, порты прокси, которые логически относятся к этому модему, а также команду ротации (для Hilink — HTTP API модема или отключение интерфейса, для Stick/NCM — перезапуск соединения через ModemManager).
  4. Настройте триггеры ротации: по расписанию (например каждые 20 минут), по количеству запросов, по коду ответа или по ручной команде. Начните с расписания каждые 15-30 минут.
  5. Включите мониторинг доступности: периодический HTTP-запрос через каждый порт. При падении доступности iProxy должен перезапускать соединение и писать в лог.
  6. Создайте systemd unit для iProxy (например iproxy.service) с User=proxyuser и Restart=always. В стартовой команде укажите путь к конфигам и журналам.
  7. Запустите iProxy и убедитесь, что он видит все модемы и корректно управляет ими. Проверьте, что запускается ротация и не мешает 3proxy.

Совет: Начните с простой схемы — policy routing по портам и 3proxy без параметра -e. Когда убедитесь в стабильности, добавляйте альтернативные привязки или дополнительные параметры.

✅ Проверка: 3proxy запущен, порты прокси слушаются, авторизация работает. iProxy видит все модемы, умеет инициировать ротацию по расписанию. Маршрутизация по портам сохраняется после перезапуска системы.

Возможные проблемы и решения

  • 3proxy не стартует — проверьте права на конфиг и логи, запустите вручную с выводом ошибок, исправьте опечатки в конфиге.
  • Порты заняты — измените номера портов или найдите процесс, занимающий порт, и остановите его.
  • iProxy не видит модем — проверьте наличие интерфейса, права пользователя, доступ к ModemManager или к Hilink API.

Шаг 7: Автоматизировать ротацию IP и мониторинг

Цель этапа

Сделать предсказуемую ротацию IP без ручного вмешательства и обеспечить автоматический перезапуск при сбоях.

Пошаговая инструкция

  1. Выберите стратегию ротации: по времени (каждые N минут), по объёму запросов, по команде. Рекомендуем начать с ротации каждые 20 минут на ночь и в рабочий день сокращать интервал до 10-15 минут при необходимости.
  2. Для модемов в Stick/NCM настройте ротацию через ModemManager: по расписанию выполняйте последовательность отключить и включить соединение для конкретного модема. Добавьте задержку 5-15 секунд между командами.
  3. Для Hilink используйте мягкую перезагрузку соединения: отключение мобильных данных, затем включение. Если модель поддерживает API, настройте запросы через iProxy или ваш скрипт.
  4. Сделайте случайные задержки в ротации разных модемов, чтобы избежать одновременного пика отключений.
  5. Включите мониторинг доступности: каждые 30-60 секунд проверяйте, что прокси-порт отвечает аутентификацией и выдаёт внешний IP (проверку внешнего IP делайте через любой сервис определения IP-адреса). При ошибке три раза подряд запускайте локальный перезапуск интерфейса модема.
  6. Логируйте каждую ротацию: время, модем, старый и новый внешний IP, длительность простоя. Это поможет отлаживать качество связи и спорить с провайдером при проблемах.
  7. Настройте алерты: при падении модема более чем на X минут отправляйте уведомление на e-mail или в мессенджер. Сделайте это через cron и утилиту отправки сообщений.

Совет: Ротация «слишком часто» может ухудшать стабильность. Найдите баланс, начав с 20 минут, и двигайтесь в сторону 10-15 минут только при необходимости.

✅ Проверка: Ротация срабатывает по расписанию, прокси после ротации отвечает за 15-60 секунд, мониторинг фиксирует смену IP и не даёт «молчать» порту более заданного порога. Уведомления приходят, когда модем недоступен.

Возможные проблемы и решения

  • Ротация «подвешивает» интерфейс — увеличьте задержки между операциями отключения и включения.
  • Частые флаппинги модема — проверьте питание хаба, замените кабель, снизьте частоту ротации.
  • IP не меняется — попробуйте более долгую паузу перед переподключением, переместите модем, используйте другой диапазон частот или оператора.

Шаг 8: Тестировать, выдавать доступ и документировать

Цель этапа

Проверить, что каждый прокси работает, правильно привязан к своему модему, и можно безопасно передавать доступ пользователям или сервисам.

Пошаговая инструкция

  1. Подготовьте список прокси в формате хост:порт:логин:пароль. Например: 192.0.2.10:31000:user1:pass1, 192.0.2.10:32000:user2:pass2 и так далее. Хостом укажите внешний IP вашего сервера.
  2. Проверьте аутентификацию для каждого порта. Используйте любой HTTP-клиент или curl с указанием логина и пароля. Убедитесь, что ответ приходит без задержек и без ошибок доступа.
  3. Проверьте привязку портов к модемам. Сделайте одновременный трафик на 2-3 порта и посмотрите tcpdump на usb0, usb1, чтобы убедиться, что пакеты выходят через нужные интерфейсы.
  4. Проверьте смену IP при ротации. Запишите IP до ротации, дождитесь события ротации, проверьте IP снова.
  5. Проверьте устойчивость при отключении одного модема: временно отключите модем от хаба, убедитесь, что остальные прокси продолжают работать.
  6. Подготовьте документ для пользователей: как подключаться, какие ограничения, кому обращаться при вопросах.

Совет: Сделайте единообразные логины и пароли по шаблону user01, user02 и так далее, а пароли генерируйте случайно. Это упростит поддержку и ротацию доступа.

✅ Проверка: Все прокси отвечают, ротация меняет внешний IP в заданные интервалы, при выключении одного модема остальные продолжают работать. Документ для пользователей готов.

Возможные проблемы и решения

  • Часть портов не отвечает — проверьте 3proxy конфиг и слушающие порты, убедитесь, что фаервол пропускает трафик.
  • Аутентификация проходит, но трафик не идёт — проверьте policy routing по портам, убедитесь, что соответствующая таблица маршрутов существует и активна.
  • Большие задержки — проверьте уровень сигнала, переместите модемы, добавьте охлаждение, замените хаб или БП.

Шаг 9: Масштабировать, оптимизировать и ввести в эксплуатацию

Цель этапа

Перевести ферму из пилота в прод, увеличить количество модемов, улучшить стабильность и прогнозируемость, и закрепить процессы эксплуатации.

Пошаговая инструкция

  1. Закрепите схему портов. Например: модем №1 = порты 31000-31001 (HTTP и SOCKS), модем №2 = 32000-32001 и так далее. Это поможет в поддержке.
  2. Автоматизируйте генерацию конфигов. Сделайте шаблон 3proxy и скрипт, который подставляет порты и пользователей. То же для policy routing и iProxy.
  3. Разделите питание по группам: держите не более 6-8 модемов на одном БП, чтобы избежать просадок напряжения. Установите ИБП на сервер и хабы.
  4. Внедрите мониторинг графиков: пинг, доступность портов, частота ротаций, температура воздуха у стойки. Настройте дашборд.
  5. Оптимизируйте ротацию: найдите минимальную частоту, которая обеспечивает достаточную смену IP без потерь стабильности. Обычно 10-30 минут.
  6. Оцените экономику. Снимайте отчёты: сколько портов активны, сколько времени в аптайме, процент успешных проверок, расход трафика по SIM. Сравните с планом ROI и при необходимости скорректируйте число модемов.
  7. Заложите стратегию замены SIM: готовьте запасные SIM и регламент перевыпуска при блокировке или проблемах. Храните документы и номера в учётной системе.
  8. Подготовьте регламенты: «как добавить модем», «как заменить SIM», «как заменить хаб», «как обновить 3proxy», «как проверить маршрут» и «как отладить ротацию».

Совет: При росте свыше 20-40 модемов перейдите на несколько серверов или используйте USB PCIe карты с выделенными контроллерами, чтобы распределить нагрузку по шинам USB.

✅ Проверка: Вся ферма стабильно держит заданное количество портов, падения редки и автоматически чинятся, отчёты показывают предсказуемые показатели, добавление нового модема занимает не более 15-20 минут.

Возможные проблемы и решения

  • Узкое место USB — перераспределите модемы по разным хабам и контроллерам, сократите длину кабелей.
  • Повышенный расход SIM — проанализируйте трафик, уменьшите частоту ротации, оптимизируйте проверки доступности.
  • Сложно управлять конфигами — храните их в системе контроля версий, заведите шаблоны и переменные окружения.

Проверка результата

Чек-лист: что должно работать

  • Сервер стабильно работает и доступен по SSH.
  • Каждый модем регистрируется в сети, у интерфейса есть IP.
  • 3proxy слушает порты по плану, авторизует пользователей.
  • Policy routing разводит трафик портов по интерфейсам модемов.
  • iProxy выполняет ротацию по расписанию и пишет логи.
  • Мониторинг фиксирует доступность прокси и отправляет алерты.

Как протестировать

  1. Проверить ответ прокси по каждому порту: выполнить запрос с авторизацией и убедиться, что код ответа корректен, без таймаутов.
  2. Проверить маршрутизацию: запустить параллельные запросы на 2-3 порта и через tcpdump увидеть трафик на разных интерфейсах.
  3. Проверить ротацию: дождаться события ротации и сравнить внешний IP до и после с помощью любого сервиса определения IP.
  4. Проверить отказоустойчивость: отключить один модем и убедиться, что остальные порты работают, а мониторинг сигналит о падении.

Показатели успешного выполнения

  • Время появления трафика после ротации: 15-60 секунд.
  • Доля успешных проверок доступности портов: 99% и выше в течение суток.
  • Средняя задержка ответа через прокси: приемлемая для ваших задач (фиксируйте базовый уровень на старте).

Совет: Снимайте контрольные метрики каждый день в одно и то же время. Это поможет быстро выявлять деградации.

Типичные ошибки и решения

  • Проблема: Прокси авторизует, но нет трафика. Причина: Policy routing по портам не настроен или не применился. Решение: Проверьте правила маркировки и ip rule, убедитесь, что таблицы маршрутов содержат default route для интерфейса модема.
  • Проблема: Все соединения резко упали. Причина: Блок питания хаба просел под нагрузкой. Решение: Поставьте более мощный БП, разделите модемы по хабам, сократите одновременные ротации.
  • Проблема: IP не меняется при ротации. Причина: Оператор держит сессию, недостаточная пауза. Решение: Увеличьте интервал между отключением и включением данных, протестируйте ночью и днём, при необходимости смените локацию или оператора.
  • Проблема: Имена интерфейсов меняются после перезагрузки. Причина: Динамическое назначение. Решение: Закрепите имена через udev-правила по адресу USB-порта или уникальному идентификатору.
  • Проблема: Сильный нагрев модемов. Причина: Плотная установка и плохое охлаждение. Решение: Разведите модемы, добавьте вентиляцию, используйте радиаторы и качественные хабы.
  • Проблема: Пользователь жалуется на периодические таймауты. Причина: Синхронная ротация нескольких модемов. Решение: Разведите расписания ротации по времени, добавьте случайные задержки.
  • Проблема: Логи переполняют диск. Причина: Подробное логирование без ротации. Решение: Включите ротацию логов и очистку старых, перенесите логи на отдельный раздел при необходимости.

Дополнительные возможности

Продвинутые настройки

  • Альтернативная привязка трафика: используйте одновременно policy routing и параметр -e в 3proxy для подстраховки в сложных сценариях.
  • Группировка модемов: объединяйте модемы в пулы и переключайте порты между пулами на лету для балансировки.
  • Контроль качества сигнала: периодически считывайте уровень RSSI/RSRP через ModemManager и записывайте в логи, чтобы выявлять «слабые» места.

Оптимизация

  • Снижение задержек: укоротите USB-кабели, выведите модемы ближе к окну, используйте внешние антенны и ферритовые фильтры.
  • Стабильность питания: поставьте ИБП, разделите питание хабов по разным линиям, проверяйте температуру БП.
  • Снижение нагрузки на сервер: поднимите 3proxy с оптимизированными таймаутами, увеличьте nscache, используйте SSD с хорошими IOPS.

Что ещё можно сделать

  • Сегментация сети: вынесите управление в отдельную VLAN или подсеть, чтобы исключить влияние служебного трафика.
  • Учёт и биллинг: добавьте учёт по пользователям, ограничьте скорость и сессию, если делитесь доступом.
  • Сценарии отката: скрипт, который полностью сбрасывает правила маршрутизации к базовым, если что-то пошло не так.

⚠️ Внимание: Не используйте ферму для обхода ограничений, нарушающих законы или договоры с провайдерами и сервисами. Придерживайтесь этичных сценариев: тестирование, локализация, обеспечение качества.

Совет: Ведите инвентаризацию: модем, SIM, порт, интерфейс, местоположение, дата покупки. Это экономит время при инцидентах.

FAQ

  • Сколько модемов можно повесить на один сервер? Безопасно начинайте с 10-20 на один хост с 8 ГБ ОЗУ и качественными хабами. Дальше масштабируйте горизонтально на второй сервер.
  • Как часто менять IP? Для стабильности стартуйте с 15-30 минут. Если нужно чаще — пробуйте 10-15 минут и следите за ошибками.
  • Какие модемы лучше? Популярные и надёжные — Huawei E3372 и ZTE MF79/MF833. Берите одну модель на партию для унификации.
  • Нужны ли статические IP? Нет, мобильные прокси ценятся именно динамикой и мобильным ASN. Статический IP тут не обязателен.
  • Можно ли объединять несколько модемов для скорости? В рамках прокси обычно нет. Важнее стабильность и предсказуемая ротация.
  • Как понять, что оператор режет скорость? Снимайте графики скорости и задержек по каждому модему, сравнивайте по времени суток и при смене местоположения.
  • Что делать при бане SIM? Иметь запасные SIM, вести аккуратный профиль трафика, уменьшать частоту ротации, при необходимости менять оператора.
  • Можно ли обойтись без iProxy? Да. 3proxy + скрипты ротации через ModemManager или Hilink API достаточно. iProxy упрощает управление и мониторинг.
  • Как оценить окупаемость? Сопоставьте ежемесячную выгоду от использования прокси с OPEX и разделите CAPEX на чистый ежемесячный профит. Получите срок окупаемости.
  • Нужно ли журналировать доступ? Да. Включайте логи доступа и ротаций. Это помогает в отладке и доказательной базе при спорах.

Заключение

Вы прошли полный путь: спроектировали ферму мобильных прокси, выбрали и собрали оборудование, подготовили сервер и базовую безопасность, настроили модемы и маршрутизацию, развернули 3proxy и iProxy, включили ротацию и мониторинг, протестировали работоспособность и рассчитали окупаемость. Теперь у вас есть практический, воспроизводимый процесс и рабочая инфраструктура, которую можно масштабировать.

Дальше развивайтесь в трёх направлениях: стабильность (охлаждение, питание, мониторинг), управляемость (шаблоны конфигов, система учёта, автоматизация) и экономика (оптимальные тарифы SIM, обоснованная частота ротации, расширение при подтверждённом спросе). Добавьте резервирование и регламенты — и ваша ферма станет предсказуемым и управляемым активом.

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