Добавление сайта в zapret¶
Zapret — это свободное программное обеспечение для обхода блокировок интернет-ресурсов на уровне сетевого трафика, разрабатываемое российским разработчиком под псевдонимом bol-van. Программа работает на уровне драйвера Windows (WinDivert) или iptables/nftables в Linux и модифицирует содержимое сетевых пакетов, чтобы обходить DPI-системы (Deep Packet Inspection), применяемые провайдерами связи. В контексте работы с zapret термин «добавить сайт» означает включение домена или URL в список адресов, к которым применяется обфускация трафика — то есть в конфигурацию, определяющую, какой трафик должен маскироваться.
¶Принцип работы zapret
Zapret перехватывает исходящие и входящие TCP-соединения и изменяет заголовки пакетов (например, TTL, размер сегментов, порядок байтов в HTTP-заголовках), чтобы DPI-системы не могли корректно определить протокол и заблокировать соединение. Программа не является VPN и не подменяет IP-адрес: она лишь искажает содержимое трафика так, что блокирующая система не распознаёт запрос к заблокированному ресурсу.
Для работы zapret требуется:
- Windows 10/11 (с драйвером WinDivert) или Linux-система с поддержкой nftables/iptables;
- права администратора;
- запущенный сервис zapret (в Windows — служба
zapret, в Linux — юнит systemd).
¶Способы указания сайтов в zapret
В zapret адреса ресурсов указываются в конфигурационных файлах, которые передаются программе при запуске. Основные способы:
¶1. Файл списка доменов (list-auto)
Файл list-auto.txt (или иной, указанный в скрипте запуска) содержит список доменов и подсетей, к которым применяется обфускация. Каждая строка — один домен или подсеть. Поддерживаются маски и подстановочные символы. Пример содержимого:
`` domain:example.com domain:*.example.org ipset:1.2.3.0/24 ``
Префикс domain: указывает на доменное имя, ipset: — на диапазон IP-адресов. Файл подключается к запуску через параметр --filter-udp 443 --filter-tcp 443 --hostlist list-auto.txt (в зависимости от версии и выбранного скрипта).
¶2. Встроенный список hostlist
В дистрибутивах zapret обычно присутствует файл list-general.txt или list-hosts.txt с обобщённым списком заблокированных ресурсов. Пользователь может дополнить его своими доменами, добавив строки в конец файла.
¶3. Параметры командной строки
Некоторые варианты запуска zapret допускают передачу списка доменов напрямую через аргументы --hostlist или --filter-tcp с указанием файла. В дистрибутиве nfqws (основной компонент zapret) параметр --hostlist принимает путь к файлу со списком хостов.
¶Пошаговое добавление сайта
- Определить доменное имя ресурса (например,
example.com) и его поддомены. - Открыть файл списка доменов, используемый в конфигурации zapret — как правило,
list-auto.txtилиlist-general.txtв каталоге дистрибутива. - Добавить строку вида
domain:example.com(или*.example.comдля всех поддоменов). - Сохранить файл.
- Перезапустить службу zapret:
- Windows:
net stop zapretиnet start zapretот имени администратора; - Linux:
sudo systemctl restart zapret.
- Проверить доступность ресурса.
¶Типичные ошибки
- Неправильный синтаксис строки (отсутствие префикса
domain:там, где он требуется). - Отсутствие перезапуска службы после изменения списка — конфигурация читается при старте.
- Указание URL вместо домена (в списке должен быть домен, без протокола и пути).
- Использование устаревшего формата файла при обновлении zapret — структура конфигурации менялась между версиями.
¶Альтернативные инструменты
Для обхода блокировок помимо zapret используются GoodbyeDPI (Windows), SpoofDPI, а также VPN-сервисы и прокси. Выбор инструмента зависит от операционной системы и характера блокировок.
Источники:
- Документация проекта zapret (bol-van/zapret на GitHub)
- Справочник по DPI и методам обхода блокировок
- Руководства по настройке nfqws и WinDivert
