Compare commits

..

No commits in common. "4279f0271ef1ae614f753fc3a3952bce641e8cae" and "c9a8fcb3db143309a9b57255097cd2f70f4940d1" have entirely different histories.

4 changed files with 27 additions and 17 deletions

View File

@ -0,0 +1 @@
sdf

View File

@ -749,7 +749,7 @@ xxxws_curl_test_update()
shift shift
$xxxf $testf $dom "$@" $xxxf $testf $dom "$@"
code=$? code=$?
[ $code = 0 ] && strategy="${strategy:-$@}" [ $code = 0 ] && strategy="${WF:+$WF }${strategy:-$@}"
return $code return $code
} }
pktws_curl_test_update() pktws_curl_test_update()
@ -786,7 +786,7 @@ report_strategy()
if [ -n "$strategy" ]; then if [ -n "$strategy" ]; then
echo "!!!!! $1: working strategy found for ipv${IPV} $2 : $3 $strategy !!!!!" echo "!!!!! $1: working strategy found for ipv${IPV} $2 : $3 $strategy !!!!!"
echo echo
report_append "ipv${IPV} $2 $1 : $3 ${WF:+$WF }$strategy" report_append "ipv${IPV} $2 $1 : $3 $strategy"
return 0 return 0
else else
echo "$1: $3 strategy for ipv${IPV} $2 not found" echo "$1: $3 strategy for ipv${IPV} $2 not found"
@ -1383,7 +1383,7 @@ lookup4()
# $2 - DNS # $2 - DNS
case "$LOOKUP" in case "$LOOKUP" in
nslookup) nslookup)
nslookup $1 $2 2>/dev/null | sed -e '1,3d' -nre 's/^[^0-9]*(([0-9]{1,3}\.){3}[0-9]{1,3}).*$/\1/p' nslookup $1 $2 2>/dev/null | sed -n '/Name:/,$p' | sed -nre 's/^.*(([0-9]{1,3}\.){3}[0-9]{1,3}).*$/\1/p'
;; ;;
host) host)
host -t A $1 $2 | grep "has address" | grep -oE '([0-9]{1,3}\.){3}[0-9]{1,3}' host -t A $1 $2 | grep "has address" | grep -oE '([0-9]{1,3}\.){3}[0-9]{1,3}'

View File

@ -40,13 +40,26 @@
Имейте в виду, что антивирусы могут плохо реагировать на windivert. Если это имеет место , используйте исключения. Имейте в виду, что антивирусы могут плохо реагировать на windivert. Если это имеет место , используйте исключения.
2) Убедитесь, что у вас отключены все средства обхода блокировок, в том числе и сам zapret. 2) Скачайте zip архив проекта с github, распакуйте его куда-нибудь.
3) Если вы работаете в виртуальной машине, необходимо использовать соединение с сетью в режиме bridge. nat не подходит 3) Убедитесь, что у вас отключены все средства обхода блокировок, в том числе и сам zapret.
4) Скачайте и распакуйте архив https://github.com/bol-van/zapret-win-bundle/archive/refs/heads/master.zip 4) Если вы работаете в виртуальной машине, необходимо использовать соединение с сетью в режиме bridge. nat не подходит
5) Запустите blockcheck\blockcheck.cmd. blockcheck в начале проверяет DNS. Если выводятся сообщения о подмене адресов, то 5) Выполните установку cygwin. Желательно устанавливать windows 7 совместимую версию, под которой и был собран проект.
Скачайте https://www.cygwin.com/setup-x86_64.exe
Выполните его с параметрами : setup-x86_64.exe --allow-unsupported-windows --no-verify --site http://ctm.crouchingtigerhiddenfruitbat.org/pub/cygwin/circa/64bit/2024/01/30/231215
Установите cygwin, выбрав в списке пакетов curl.
cygwin нужен только для поиска стратегии обхода блокировки. После этого он не нужен.
6) Запустите cygwin.bat из директории установки cygwin от имени администратора.
В нем нужно пройти в директорию с zapret. Буква диска windows X: отображается как /cygdrive/x.
Используейте команды как в *nix
7) Однократно выполните ./install_bin.sh
8) Запустите blockcheck.sh. blockcheck.sh в начале проверяет DNS. Если выводятся сообщения о подмене адресов, то
первым делом нужно решить эту проблему, иначе ничего не будет работать. первым делом нужно решить эту проблему, иначе ничего не будет работать.
Решение проблемы DNS выходит за рамки проекта. Обычно она решается либо заменой DNS серверов Решение проблемы DNS выходит за рамки проекта. Обычно она решается либо заменой DNS серверов
от провайдера на публичные (1.1.1.1, 8.8.8.8), либо в случае перехвата провайдером обращений от провайдера на публичные (1.1.1.1, 8.8.8.8), либо в случае перехвата провайдером обращений
@ -55,8 +68,7 @@
Новые билды win10 и win11 поддерживают системные DoH из коробки. Они не настроены по умолчанию. Новые билды win10 и win11 поддерживают системные DoH из коробки. Они не настроены по умолчанию.
Гуглите как их настроить и включить. Гуглите как их настроить и включить.
6) blockcheck позволяет выявить рабочую стратегию обхода блокировок. 9) blockcheck позволяет выявить рабочую стратегию обхода блокировок.
Лог скрипта будет сохранен в blockcheck\blockcheck.log.
Запомните найденные стратегии. Запомните найденные стратегии.
Следует понимать, что blockcheck проверяет доступность только конкретного домена, который вы вводите в начале. Следует понимать, что blockcheck проверяет доступность только конкретного домена, который вы вводите в начале.
@ -82,17 +94,16 @@ badseq может работать только на https и не работа
может на одних провайдерах работать стабильно, на других потребуется выяснить при каких параметрах может на одних провайдерах работать стабильно, на других потребуется выяснить при каких параметрах
она стабильна, на третьих полный хаос, и проще отказаться. она стабильна, на третьих полный хаос, и проще отказаться.
7) Протестируйте найденные стратегии на winws. winws следует брать из binaries/win64/zapret-winws. 10) Протестируйте найденные стратегии на winws. winws следует брать из binaries/win64/zapret-winws.
Для этого откройте командную строку windows от имени администратора и зайдите в директорию zapret-winws.
8) Обеспечьте удобную загрузку обхода блокировок. 11) Обеспечьте удобную загрузку обхода блокировок.
В binaries/win64/zapret-winws есть командные файлы task_*, предназначенные для управления задачами планировщика. В binaries/win64/zapret-winws есть командные файлы task_*, предназначенные для управления задачами планировщика.
Там следует поменять содержимое переменной WINWS1 на свою стратегию. Там следует поменять содержимое переменной WINWS1 на свою стратегию.
Если вы не можете обьединить несколько стратегий для разных протоколов в одну, дублируйте код в каждом из cmd Если вы не можете обьединить несколько стратегий для разных протоколов в одну, дублируйте код в каждом из cmd
для поддержки нескольких задач : winws1,winws2,winws3. для поддержки нескольких задач : winws1,winws2,winws3.
После создания задач запустите их. Проверьте, что обход встает после перезагрузки windows. После создания задач запустите их. Проверьте, что обход встает после перезагрузки windows.
9) Если ломаются отдельные незаблокированные ресурсы, используйте хост-листы. 12) Если ломаются отдельные незаблокированные ресурсы, используйте хост-листы.
Где они будут находиться - решайте сами. Где они будут находиться - решайте сами.
Параметры управления хост-листами точно такие же, как в *nix. Параметры управления хост-листами точно такие же, как в *nix.

View File

@ -100,16 +100,14 @@ blockcheck.sh написан на posix shell и требует некоторы
Для этого требуется скачать и установить cygwin так , как описано в предыдущем разделе. Для этого требуется скачать и установить cygwin так , как описано в предыдущем разделе.
Следует запустить от имени администратора cygwin shell через cygwin.bat. Следует запустить от имени администратора cygwin shell через cygwin.bat.
В нем нужно пройти в директорию с zapret. В нем нужно пройти в директорию с zapret.
Обратные слэши путей windows нужно удваивать, менять на прямые слэши, либо использовать отображение на unix path. Обратные слэши путей windows нужно удваивать, либо использовать отображение на unix path.
Корректный вариант 1 : cd "C:\\Users\\vasya" Корректный вариант 1 : cd "C:\\Users\\vasya"
Корректный вариант 2 : cd "C:/Users/vasya" Корректный вариант 2 : cd "/cygdrive/c/Users/vasya"
Корректный вариант 3 : cd "/cygdrive/c/Users/vasya"
Далее все как в *nix : 1 раз ./install_bin.sh , затем ./blockcheck.sh. Далее все как в *nix : 1 раз ./install_bin.sh , затем ./blockcheck.sh.
WSL использовать нельзя, это не то же самое. WSL использовать нельзя, это не то же самое.
cygwin для обычной работы winws не нужен. Разве что вы хотите посылать winws SIGHUP для перечитки листов без перезапуска. cygwin для обычной работы winws не нужен. Разве что вы хотите посылать winws SIGHUP для перечитки листов без перезапуска.
Можно не возиться с cygwin, а взять готовый пакет, включающий в себя cygwin и blockcheck : https://github.com/bol-van/zapret-win-bundle
автозапуск winws автозапуск winws
---------------- ----------------