Найти тему
Technology News

Ютуб снова работает! Но что для этого нужно сделать.

Оглавление

Как воскресить Ютуб?

Для возобновления работы привычного для нас видеохостинга нам понадобится одна интересная программа под названием GoodBaeDPI.

Что такое GoodBaeDPI?

Это программное обеспечение предназначено для обхода систем глубокой проверки пакетов, используемых многими интернет-провайдерами, которые блокируют доступ к определенным веб-сайтам.

Она обрабатывает DPI, подключенные с помощью оптического разветвителя или зеркального отображения портов (пассивный DPI), которые не блокируют какие-либо данные, а просто отвечают быстрее, чем запрошенный адресат, и активный DPI, подключенный последовательно.

Требуется Windows 7, 8, 8.1, 10 или 11 с правами администратора.

Быстрый запуск

Эти скрипты запускают GoodbyeDPI в рекомендованном режиме с перенаправлением DNS resolver на DNS Яндекса на нестандартном порту (для предотвращения отравления DNS).
Если это сработает — поздравляем! Вы можете использовать ее как есть или настроить дополнительно.

Как использовать?

Загрузите последнюю версию со страницы Выпусков и запустите.

-2

Чтобы проверить, можно ли обойти DPI вашего интернет-провайдера, сначала убедитесь, что ваш провайдер не искажает ответы DNS, включив опцию "Безопасный DNS (DNS через HTTPS)" в вашем браузере.

  • Chrome: Настройки → Конфиденциальность и безопасность → Использовать защищенный DNS → С помощью: NextDNS
  • Firefox: Настройки → Сетевые настройки → Включить DNS через HTTPS → Использовать провайдера: NextDNS

Затем запустите goodbyedpi.exe исполняемый файл без каких-либо опций. Если это сработает — поздравляем! Вы можете использовать ее как есть или настроить дополнительно, например, с помощью --blacklist опции, если список заблокированных веб-сайтов известен и доступен для вашей страны.

Если ваш провайдер перехватывает DNS-запросы, вы можете захотеть использовать --dns-addr опцию общедоступного DNS-распознавателя, работающего на нестандартном порту (например, Яндекс DNS 77.88.8.8:1253) или настроить DNS через HTTPS / TLS с помощью сторонних приложений.

Проверьте .cmd скрипты и измените их в соответствии с вашими предпочтениями и условиями сети.

-3

Как это работает?

Пассивный DPI

Большинство пассивных DPI отправляют перенаправление HTTP 302, если вы пытаетесь получить доступ к заблокированному веб-сайту по HTTP, и TCP сбрасывается в случае HTTPS быстрее, чем веб-сайт назначения. Пакеты, отправляемые DPI, обычно имеют поле идентификации IP, равное 0x0000 или 0x0001, как показано у российских провайдеров. Эти пакеты, если они перенаправляют вас на другой веб-сайт (страницу цензуры), блокируются GoodbyeDPI.

Активный DPI

Активный DPI обмануть сложнее. В настоящее время программное обеспечение использует 7 методов обхода активного DPI:

  • Фрагментация первого пакета данных на уровне TCP
  • Фрагментация на уровне TCP для постоянных HTTP-сессий (keep-alive)
  • Замена Host заголовка на hoSt
  • Удаление пробела между именем заголовка и значением в Host заголовке
  • Добавление дополнительного пространства между HTTP-методом (GET, POST и т.д.) И URI
  • Случай смешивания значений заголовка хоста
  • Отправка поддельных пакетов HTTP / HTTPS с низким значением времени действия, неверной контрольной суммой или неправильными номерами последовательности TCP / подтверждения, чтобы обмануть DPI и предотвратить доставку их адресату

Эти методы не должны нарушать работу любого веб-сайта, поскольку они полностью совместимы со стандартами TCP и HTTP, но этого достаточно для предотвращения классификации данных DPI и обхода цензуры. Дополнительное пространство может нарушать работу некоторых веб-сайтов, хотя это допустимо по спецификации HTTP / 1.1 (см. 19.3 Толерантных приложений).

Программа загружает драйвер WinDivert, который использует платформу фильтрации Windows для установки фильтров и перенаправления пакетов в пространство пользователя. Она работает до тех пор, пока видно окно консоли, и завершается, когда вы закрываете окно.

-4

Как создать из исходного кода

Этот проект может быть собран с использованием GNU Make и mingw. Единственная зависимость - это WinDivert.

Для сборки x86 exe запустите:

make CPREFIX=i686-w64-mingw32- WINDIVERTHEADERS=/path/to/windivert/include WINDIVERTLIBS=/path/to/windivert/x86

И для x86_64:

make CPREFIX=x86_64-w64-mingw32- BIT64=1 WINDIVERTHEADERS=/path/to/windivert/include WINDIVERTLIBS=/path/to/windivert/amd64

Как установить в качестве службы Windows

Проверьте примеры в service_install_russia_blacklist.cmd, service_install_russia_blacklist_dnsredir.cmd и service_remove.cmd скриптах.

Измените их в соответствии с вашими собственными потребностями.