Compare commits

...

8 Commits

Author SHA1 Message Date
bol-van
4279f0271e windows: bundle info 2024-04-28 16:09:45 +03:00
bol-van
19b97c04c5 blockcheck: fix multiple wf-pf options in result 2024-04-28 12:48:21 +03:00
bol-van
5bac3f3ced quick_start_windows: pre-built windows bundle 2024-04-28 12:10:40 +03:00
bol-van
4db9c414ad quick_start_windows: pre-built windows bundle 2024-04-28 12:08:58 +03:00
bol-van
4e77f514a6 blockcheck: windows compatible nslookup 2024-04-28 11:32:38 +03:00
bol-van
b6b6abeae3 blockcheck: windows compatible nslookup 2024-04-28 11:29:22 +03:00
bol-van
4c0b7f630f blockcheck: windows compatible nslookup 2024-04-28 11:28:32 +03:00
bol-van
3e1cd91b74 rm bad file 2024-04-28 09:46:04 +03:00
4 changed files with 17 additions and 27 deletions

View File

@ -1 +0,0 @@
sdf

View File

@ -749,7 +749,7 @@ xxxws_curl_test_update()
shift shift
$xxxf $testf $dom "$@" $xxxf $testf $dom "$@"
code=$? code=$?
[ $code = 0 ] && strategy="${WF:+$WF }${strategy:-$@}" [ $code = 0 ] && strategy="${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 $strategy" report_append "ipv${IPV} $2 $1 : $3 ${WF:+$WF }$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 -n '/Name:/,$p' | sed -nre 's/^.*(([0-9]{1,3}\.){3}[0-9]{1,3}).*$/\1/p' 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'
;; ;;
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,26 +40,13 @@
Имейте в виду, что антивирусы могут плохо реагировать на windivert. Если это имеет место , используйте исключения. Имейте в виду, что антивирусы могут плохо реагировать на windivert. Если это имеет место , используйте исключения.
2) Скачайте zip архив проекта с github, распакуйте его куда-нибудь. 2) Убедитесь, что у вас отключены все средства обхода блокировок, в том числе и сам zapret.
3) Убедитесь, что у вас отключены все средства обхода блокировок, в том числе и сам zapret. 3) Если вы работаете в виртуальной машине, необходимо использовать соединение с сетью в режиме bridge. nat не подходит
4) Если вы работаете в виртуальной машине, необходимо использовать соединение с сетью в режиме bridge. nat не подходит 4) Скачайте и распакуйте архив https://github.com/bol-van/zapret-win-bundle/archive/refs/heads/master.zip
5) Выполните установку cygwin. Желательно устанавливать windows 7 совместимую версию, под которой и был собран проект. 5) Запустите blockcheck\blockcheck.cmd. blockcheck в начале проверяет DNS. Если выводятся сообщения о подмене адресов, то
Скачайте 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), либо в случае перехвата провайдером обращений
@ -68,7 +55,8 @@ cygwin нужен только для поиска стратегии обход
Новые билды win10 и win11 поддерживают системные DoH из коробки. Они не настроены по умолчанию. Новые билды win10 и win11 поддерживают системные DoH из коробки. Они не настроены по умолчанию.
Гуглите как их настроить и включить. Гуглите как их настроить и включить.
9) blockcheck позволяет выявить рабочую стратегию обхода блокировок. 6) blockcheck позволяет выявить рабочую стратегию обхода блокировок.
Лог скрипта будет сохранен в blockcheck\blockcheck.log.
Запомните найденные стратегии. Запомните найденные стратегии.
Следует понимать, что blockcheck проверяет доступность только конкретного домена, который вы вводите в начале. Следует понимать, что blockcheck проверяет доступность только конкретного домена, который вы вводите в начале.
@ -94,16 +82,17 @@ badseq может работать только на https и не работа
может на одних провайдерах работать стабильно, на других потребуется выяснить при каких параметрах может на одних провайдерах работать стабильно, на других потребуется выяснить при каких параметрах
она стабильна, на третьих полный хаос, и проще отказаться. она стабильна, на третьих полный хаос, и проще отказаться.
10) Протестируйте найденные стратегии на winws. winws следует брать из binaries/win64/zapret-winws. 7) Протестируйте найденные стратегии на winws. winws следует брать из binaries/win64/zapret-winws.
Для этого откройте командную строку windows от имени администратора и зайдите в директорию zapret-winws.
11) Обеспечьте удобную загрузку обхода блокировок. 8) Обеспечьте удобную загрузку обхода блокировок.
В binaries/win64/zapret-winws есть командные файлы task_*, предназначенные для управления задачами планировщика. В binaries/win64/zapret-winws есть командные файлы task_*, предназначенные для управления задачами планировщика.
Там следует поменять содержимое переменной WINWS1 на свою стратегию. Там следует поменять содержимое переменной WINWS1 на свою стратегию.
Если вы не можете обьединить несколько стратегий для разных протоколов в одну, дублируйте код в каждом из cmd Если вы не можете обьединить несколько стратегий для разных протоколов в одну, дублируйте код в каждом из cmd
для поддержки нескольких задач : winws1,winws2,winws3. для поддержки нескольких задач : winws1,winws2,winws3.
После создания задач запустите их. Проверьте, что обход встает после перезагрузки windows. После создания задач запустите их. Проверьте, что обход встает после перезагрузки windows.
12) Если ломаются отдельные незаблокированные ресурсы, используйте хост-листы. 9) Если ломаются отдельные незаблокированные ресурсы, используйте хост-листы.
Где они будут находиться - решайте сами. Где они будут находиться - решайте сами.
Параметры управления хост-листами точно такие же, как в *nix. Параметры управления хост-листами точно такие же, как в *nix.

View File

@ -100,14 +100,16 @@ 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 "/cygdrive/c/Users/vasya" Корректный вариант 2 : cd "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
---------------- ----------------