# Отчет о прозрачности: как работает блокировка доменов в сети Massive


Massive позволяет каждой учетной записи блокировать до 1 000 доменов в прокси-трафике через панель управления Massive Dashboard. Блокировка вступает в силу мгновенно, поддерживает шаблоны с подстановочными знаками и возвращает ошибку `452 (Disallowed Content)`, когда запрос попадает на один из заблокированных доменов. Они действуют в дополнение к блокировкам на сетевом уровне, которые Massive уже применяет. В данном отчёте объясняется, как работает список блокировок, каковы его ограничения и как обрабатывать ошибку 452 в вашем собственном коде. Вся информация о продукте взята из общедоступной [документации](https://docs.joinmassive.com/residential/domain-blocking) Massive.

*В данном выпуске описаны средства управления. В нём не приводятся статистические данные о применении блокировок.*

> **Основные выводы**
>
> - В панели управления Massive Dashboard допускается блокировка до 1 000 доменов на одну учетную запись; блокировка применяется к прокси-соединениям мгновенно ([Документация Massive](https://docs.joinmassive.com/residential/domain-blocking)).
> - Заблокированный запрос возвращает код `452 (Disallowed Content)`. Рассматривайте его как окончательный результат, а не как повод для повторной попытки.
> - Код `*.example.com` распространяется только на субдомены, поэтому заблокируйте также код `example.com`.
> - Реселлеры настраивают списки блокировки для подучётных записей через API для реселлеров, который принимает список из не более 100 доменов.

## Зачем публиковать информацию о том, как работает блокировка доменов?

У покупателей появилась более веская причина интересоваться средствами контроля прокси, чем год назад. В январе 2026 года группа Google по анализу угроз (Threat Intelligence Group) сообщила о ликвидации IPIDEA — сети прокси-серверов для частных пользователей, выходные узлы которой, по данным группы, использовались более чем 550 группами злоумышленников за один семидневный период ([Блог Google Cloud](https://cloud.google.com/blog/topics/threat-intelligence/disrupting-largest-residential-proxy-network), 2026). В своих рекомендациях провайдерам прокси-сервисов Google указала, что «любые заявления об „этичном источнике“ должны подкрепляться прозрачными и поддающимися аудиту доказательствами согласия пользователей».

Согласие касается того, как устройства подключаются к сети, и мы объяснили позицию Massive по этому вопросу в статье [«Как работает сеть Massive с добровольным подключением»](https://www.joinmassive.com/blog/how-massives-opt-in-network-works). Механизмы контроля определяют, какие действия разрешены трафику после его поступления в сеть. Специалисту по оценке безопасности необходимо, чтобы и то, и другое было зафиксировано в письменной форме в доступном для ознакомления месте. В настоящем отчёте рассматриваются меры контроля.

## Как работает список заблокированных доменов?

Список заблокированных доменов находится в панели управления Massive. Согласно документации, блокировки «мгновенно применяются к вашим прокси-соединениям» и дополняют блокировки на сетевом уровне, которые Massive уже обеспечивает.

![Поток запроса при блокировке доменов в Massive: запрос проходит через блокировки на сетевом уровне Massive, а затем — через список заблокированных доменов вашей учётной записи. Домен, включённый в список, возвращает код 452 «Запрещённый контент», который вы регистрируете и не повторяете попытку. Домен, отсутствующий в списке, достигает конечного адреса.](assets/blocklist-flow.png «Место, где останавливается заблокированный запрос».)

| Функция | Принцип работы |
|---------|--------------|
| Ограничение | До 1 000 заблокированных доменов на одну учетную запись |
| Добавление одного домена | Введите его в поле «Введите домен» и нажмите «Добавить» |
| Добавление нескольких | Загрузите файл CSV, в котором каждый домен указан в отдельной строке |
| Удаление | Удалите отдельные записи или очистите список за один раз |
| Что блокируется | Только домены; пути, такие как `example.com/path`, не блокируются |
| Реакция при блокировке | Код ошибки `452 (Disallowed Content)` |
| Кто управляет списком | Согласно документации, «каждый пользователь может управлять только своим собственным списком блокировки», а «администраторы могут применять глобальные списки блокировки, которые переопределяют личные настройки» (см. ограничения ниже) |

Источник: [Документация Massive, Блокировка доменов](https://docs.joinmassive.com/residential/domain-blocking).

## Шаблоны с подстановочными знаками, поддерживаемые Massive

Один подстановочный знак (`*`) на каждую запись позволяет одному правилу охватывать множество хостов. В документации приведены следующие шаблоны:

| Шаблон | Что он сопоставляет |
|---------|-----------------|
| `*.example.com` | Только поддомены example.com |
| `example.*` | example под любым доменом верхнего уровня |
| `ads.*.example.com` | Любой промежуточный элемент между ads и example.com |
| `*example*` | example в любом месте |

Записи, содержащие более одного подстановочного знака, например `ads.*.test.*.example.com`, отклоняются. Поскольку `*.example.com` соответствует только поддоменам, для блокировки всего сайта требуется две записи: `example.com` и `*.example.com`. Эту лазейку легко упустить при проверке.

![Краткий обзор правил с использованием подстановочных знаков: *.example.com соответствует shop.example.com, но не example.com; example.* соответствует example.net и example.org; ads.*.example.com соответствует ads.eu.example.com; *example* соответствует myexample.com. Чтобы заблокировать весь сайт, добавьте example.com и *.example.com.](assets/wildcard-rules.png «Один подстановочный символ на одну запись. Для блокировки всего сайта потребуется две записи.»)

## Что означает ошибка 452 и следует ли повторять попытку?

Ошибка 452 означает, что конечный ресурс заблокирован, поэтому повторная попытка не увенчается успехом. Именно код статуса позволяет реализовать блокировку в коде. Благодаря уникальному коду команда разработчиков может отличить блокировку по правилам от таймаута, блокировки целевого сайта или сетевой ошибки. Без него заблокированный запрос выглядит как нестабильный, и цикл повторных попыток продолжает обращаться к адресу, который вы намеренно исключили.

Клиент на Python, использующий `requests`, получает код 452 одним из двух способов. Для цели `http://` прокси возвращает 452 в качестве статуса ответа. Для цели `https://` клиент сначала открывает туннель через прокси с помощью запроса `CONNECT`, и отклоненный туннель отображается как `ProxyError`, сообщение которого содержит код статуса. Этот минимальный шаблон обрабатывает оба случая:

```python
import logging
import time
import requests

def fetch(url, proxies, max_retries=3):
    for attempt in range(max_retries):
        try:
            response = requests.get(url, proxies=proxies, timeout=60)
        except requests.exceptions.ProxyError as err:
            if "Tunnel connection failed: 452" in str(err):
                # HTTPS target: the CONNECT tunnel was refused by policy.
                logging.warning("Blocked domain, not retrying: %s", url)
                return None
            time.sleep(2 ** attempt)
            continue
        except requests.exceptions.RequestException:
            # Timeouts and connection errors: worth retrying.
            time.sleep(2 ** attempt)
            continue
        if response.status_code == 452:
            # HTTP target: Disallowed Content. Log it and stop.
            logging.warning("Blocked domain, not retrying: %s", url)
            return None
        if response.status_code >= 500:
            time.sleep(2 ** attempt)
            continue
        # Other statuses (including target-site 403 or 429) go back to the caller.
        return response
    return None
```

Правило простое: регистрируйте код 452 в журнале, не повторяйте попытку и отправляйте оповещение, если он появляется там, где вы этого не ожидали. Если вы обнаружите код 452 на домене, который вы сами никогда не блокировали, обратитесь в службу поддержки Massive, чтобы выяснить, какая блокировка была применена.

Начальный файл CSV для команды, желающей исключить из своих заданий сайт одного конкурента и одну рекламную сеть, выглядит следующим образом: по одному домену в строке, причём каждый корневой домен и его подстановочный знак указаны в отдельных записях:

```text
example-competitor.com
*.example-competitor.com
doubleclick.net
*.doubleclick.net
```

## Для чего нужна блокировка доменов?

- **Контроль затрат.** Страница часто загружает рекламные, аналитические и медиа-хосты, которые вам не нужны. Их блокировка на прокси позволяет сэкономить трафик для контента, ради которого вы зашли на сайт. Две записи, `doubleclick.net` и `*.doubleclick.net`, охватывают корневой домен рекламной сети и все хосты, находящиеся под ним.
- **Обеспечение соблюдения политик.** Убедитесь, что ни одно автоматизированное задание, независимо от команды, не достигает домена, который был исключён вашим юридическим отделом или отделом по обеспечению соответствия.
- **Безопасность агентов.** ИИ-агент, переходящий по ссылкам, может попасть куда угодно. Для трафика, маршрутизируемого через Massive, список блокировок устанавливает жесткие ограничения на то, куда могут направляться его запросы, независимо от решений модели. В нашей статье о [предоставлении ИИ-агентам доступа к веб-ресурсам в режиме реального времени](https://www.joinmassive.com/blog/how-to-give-ai-agents-live-web-access) подробно описаны остальные этапы этой настройки.

## Как реселлеры блокируют домены для своих клиентов?

Партнеры, занимающиеся перепродажей доступа к Massive, управляют списками блокировки для каждой суб-учётной записи через API для реселлеров, а не через панель управления. Конечная точка [обновления списка заблокированных доменов](https://docs.joinmassive.com/reseller-api-reference/update-domains-blocklist) (`PUT /accounts/{id}/blocklist`) описана в документации как способ «настроить, какие домены заблокированы для прокси-доступа данной учетной записи». Он принимает список из не более 100 доменов, каждый из которых может содержать до 253 символов. Для синхронизированных суб-аккаунтов «список заблокированных доменов объединяется со списком родительского аккаунта», поэтому правило, установленное партнёром на верхнем уровне, применяется ко всем синхронизированным клиентам ниже него.

## Чего не может сделать список заблокированных доменов Massive?

- **Он блокирует домены, а не пути.** Вы не можете заблокировать одну часть сайта и разрешить доступ к остальной.
- **Существует ограничение.** Панель управления допускает 1 000 записей на одну учетную запись. Использование подстановочных знаков позволяет значительно расширить этот список, но он не является неограниченным.
- **Область действия переопределения не прописана четко.** В документации указано, что «администраторы могут применять глобальные списки блокировки, которые имеют приоритет над личными настройками», однако не уточняется, какие именно администраторы и в каком объёме могут использовать эти списки. Если это имеет значение для вашей конфигурации, обратитесь в службу поддержки Massive, прежде чем полагаться на эту функцию.
- **Он добавляет ограничения, но не снимает их.** Список блокировки дополняет блокировки на сетевом уровне, реализуемые Massive. В документации не указано, что именно охватывают эти блокировки на сетевом уровне. По вопросам проверки безопасности в качестве отправной точки служит [Центр доверия Massive](https://trust.joinmassive.com/), либо обратитесь непосредственно в Massive.

## Место данного материала в серии публикаций Massive, посвящённых прозрачности

Данный отчёт является частью нашей серии публикаций по прозрачности, выходящих по четвергам. О том, как системы защиты от ботов оценивают трафик прокси-серверов и почему источник трафика имеет значение, читайте в нашей [статье, развенчивающей мифы о ротируемых пулах прокси](https://www.joinmassive.com/blog/myth-every-proxy-pool-is-the-same). Подробная информация о продукте для резидентной сети представлена на [странице «Резидентные прокси»](https://www.joinmassive.com/web-access).

## Часто задаваемые вопросы

### Сколько доменов можно заблокировать в Massive?

Каждая учетная запись может заблокировать до 1 000 доменов в панели управления Massive. Добавляйте их по одному или загрузите файл CSV, в котором каждый домен указан в отдельной строке. Реселлеры настраивают списки блокировки для субсчетов через API для реселлеров, который поддерживает списки длиной до 100 доменов.

### Что означает ошибка 452 в Massive?

Ошибка `452 (Disallowed Content)` означает, что запрос был отправлен на заблокированный домен. Не повторяйте попытку. Если вы не блокировали этот домен самостоятельно, обратитесь в службу поддержки Massive.

### Поддерживает ли функция блокировки доменов в Massive подстановочные знаки?

Да, по одному подстановочному знаку на каждую запись. Поддерживаются такие шаблоны, как `*.example.com`, `example.*`, `ads.*.example.com` и `*example*`. Записи, содержащие более одного подстановочного знака, отклоняются.

### Можно ли заблокировать конкретный путь URL?

Нет. Список блокировки действует на уровне домена. Пути, такие как `example.com/path`, не блокируются.

## Блокировка доменов: итог

- Добавляйте как `example.com`, так и `*.example.com`, если имеете в виду весь сайт, и считайте каждый 452 окончательным.
- Вся подробная информация по данному отчёту содержится в открытых документах Massive, поэтому вы можете проверить её самостоятельно, а не полагаться исключительно на наши слова.

## Источники

- Документация Massive, [«Блокировка доменов»](https://docs.joinmassive.com/residential/domain-blocking)
- Документация Massive, [«Обновление списка заблокированных доменов»](https://docs.joinmassive.com/reseller-api-reference/update-domains-blocklist)
- Блог Google Cloud (Google Threat Intelligence Group), [«Ликвидация крупнейшей в мире сети прокси-серверов, использующих частные IP-адреса»](https://cloud.google.com/blog/topics/threat-intelligence/disrupting-largest-residential-proxy-network), 2026 г.
- Massive, [«Центр доверия Massive»](https://trust.joinmassive.com/)
