github RixyPow/netzapret v0.4.0
NetZapret 0.4.0

latest releases: v1.2.1, v1.2.0, v1.1.1...
2 months ago

Редактор hosts

Новый пункт меню. Файл hosts бьёт любой наш маршрут — имя ищется в нём
до всякого DNS, — и проверка блокировок уже показывала, что там прибито.
Теперь такую запись можно выключить, не уходя под администратора в блокнот.

   1. 72.56.93.144      670    действует
   2. 149.154.167.220    41    действует

Выключение — комментарий, а не удаление: запись возвращается тем же
движением. Перед каждой правкой остаётся копия файла. Чужие строки
не трогаются — их ставит не только человек, но и редактор Zapret GUI.

Отдельная проверка («п») стучится по прибитым адресам и находит мёртвые —
ровно так когда-то нашёлся «умерший» ChatGPT: 670 имён на один переставший
отвечать адрес. Адреса, которые проверить нельзя (например IPv6 в сети без
IPv6), помечаются отдельно и не выдаются за молчащие.

Проверка и установка обновлений

Пункт «Ещё → Обновление» спрашивает GitHub и сравнивает версии по числам,
а не по строкам — иначе «0.10.0» оказался бы меньше «0.9.0» и десятый выпуск
подряд остался бы незамеченным.

Установка — отдельное согласие после показа списка изменений. Программа
не может заменить свой exe на ходу, поэтому новое скачивается в отдельную
папку, а подмену делает сценарий уже после выхода — он дожидается закрытия
процесса по идентификатору, не по таймауту, и запускает программу заново.

Настройки, свои правила и подставленные адреса не перезаписываются — их
в новом архиве просто нет.

Обслуживание

Пункт «Ещё → Обслуживание» собирает разовые действия, которые иначе искать
по инструкциям:

  • сброс настроек до заводских (подписку можно оставить);
  • сброс сетевого стека Windows;
  • добавление папки программы в исключения Microsoft Defender — не отключение
    антивируса, а именно исключение: Defender удаляет winws2.exe, опознавая
    в нём WinDivert, и один раз это стоило сорванной сборки;
  • перезапуск Discord после смены маршрута голоса — он держит голосовые
    серверы на сеанс и не замечает новый путь без перезапуска;
  • открыть папку программы, документация, выключатель журнала супервизора.

Что ещё изменилось

Пять игровых пресетов из поставки Zapret — Default v1–v5 (game filter).
Раньше они не доезжали до собранной копии по двум причинам сразу: программа
читала только один каталог пресетов, а сборка вдобавок удаляла второй
целиком.

Проверка блокировок отличает отказ сайта от блокировки. ChatGPT
не удавалось перевести на десинк, и причина была не в десинке: на настоящем
адресе рукопожатие проходило за доли секунды, а в ответ приходила страница
«недоступно в вашей стране». Десинк не может помочь там, где решение
принимает сам сайт, уже разобрав запрос.

Оборванное имя лечится подстановкой адреса, а не маршрутом. Раздача
превью Roblox — это имя, чья цепочка DNS обрывается без адреса. Файл
config\addresses.yaml подставляет адрес через наш резолвер, не трогая
системный hosts.

Отчёт проверки стало с чем сравнивать. Он открывается тем, чем снят:
режим, пресет, сервер, резолвер. Строки, чья цель уже идёт через туннель,
помечены — их показатели описывают туннель, а не сеть.

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

Обновление

Распакуйте новый архив поверх старого. Настройки и правила в config\
не перезаписываются — их в архиве нет. Начиная с этой версии можно обновляться
и через пункт меню «Ещё → Обновление».

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


Что это такое, как поставить с нуля, почему ругается антивирус и на каких
условиях распространяется — в README
и в файлах внутри архива.

Don't miss a new netzapret release

NewReleases is sending notifications on new releases.