bol-van / zapret

DPI bypass multi platform
8.56k stars 642 forks source link

Ютуб не работает через VPN к owrt c zapret #761

Closed drova326 closed 2 weeks ago

drova326 commented 2 weeks ago

Поcтавил на роутер с OpenWRT zapret v68. На настройках из коробки работает хорошо. Огромное спасибо автору!

Но есть один проблемный кейс: На роутере установлен VPN-клиент sing-box, на котором поднят shadowsocks туннель. Пока телефон подключен к роутеру напрямую через wifi доступ к заблокированным сайтам есть, ютуб не тормозит, но если подключиться к роутеру через vpn, то ютуб работать перестаёт, хотя доступ к заблокированным сайтам есть.

Сперва подумал, что трафик из vpn-туннеля пошел мимо zapret, но тогда бы и к заблокированным ресурсам доступа бы небыло...

Нет идей почему такое быть может и как можно поправить?

Starting daemon 3: /opt/zapret/nfq/nfqws --qnum=200 --user=daemon --dpi-desync-fwmark=0x40000000
--filter-tcp=80 --dpi-desync=fake,split2 --dpi-desync-fooling=md5sig  --new
--filter-tcp=443 --dpi-desync=fake,disorder2 --dpi-desync-fake-tls=/opt/zapret/files/fake/tls_clienthello_www_google_com.bin --dpi-desync-fooling=md5sig  --new
--filter-udp=443 --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-fake-quic=/opt/zapret/files/fake/quic_initial_www_google_com.bin  --new
bol-van commented 2 weeks ago

На роутере установлен VPN-клиент подключиться к роутеру через vpn

Эти 2 фразы не стыкуются. VPN клиент где находится ? А где VPN сервер ? Кто к кому через что подключается ?

drova326 commented 2 weeks ago

Извиняюсь за неточность. На роутере установлен sing-box, который используется как сервер (inbound shadowsocks с базовым набором параметров - IP, port, uuid, key). На телефоне клиент hiddify.

На роутере открыт порт для tcp udp для shadowsocks.Телефон успешно соединяется с роутером, после чего на а телефоне становятся доступными Facebook, Instagram, rutracker, а вот YouTube не робит. Отключаюсь от VPN, подключаюсь по WiFi на прямую - начинает работать, т.е. сам запрет работает корректно, а вот в связке с sing-box проблема.

Fenrir-0xFF commented 2 weeks ago

т.е. сам запрет работает корректно, а вот в связке с sing-box проблема.

Для Zapret wan интерфейс указал?

а вот YouTube не работает.

Такто персонально для ютюба есть отдельный конфиг, но раз у тебя он через wifi всёравно работает тогда ХЗ, единственное что могу посоветовать в --filter-tcp=443 добавь --wssize=1:6 по крайней мере у меня на телефоне без него все приложения кроме браузера не работают. Ещё странная хрень с NewPipe а именно если присутствует --dpi-desync-fooling=md5sig попробуй на badsum заменить.

bol-van commented 2 weeks ago

sing-box насколько я понимаю это не VPN, а прокси хотя для подобных решений часто есть завороты в TUN, но приницпиально важно понимать это действительно VPN или какой-то прозрачный заворот портов. VPN значит, что создается интерфейс на уровне linux. от этого зависит очень многое

drova326 commented 2 weeks ago

Для Zapret wan интерфейс указал?

Ничего не указывал, только бинарники в dpi-desync-fake прописал. По wifi все ок, да и через sing-box заблокированные сайты открываются. Проблема только с youtube в режиме VPN. Пробовал и через приложение и через броузер - всё загружается, а видео не идет.

drova326 commented 2 weeks ago

sing-box насколько я понимаю это не VPN, а прокси VPN значит, что создается интерфейс на уровне linux.

Вообще да, Sing-box это правильнее сказать прокси клиент/сервер, с возможностью поднимать туннели и маршрутизировать трафик. Но в данном случае никаких туннелей или интерфейсов я не поднимаю, просто настраиваю shadowsocks сервер, а в правилах маршрутизации указываю все что на него приходит выпускать напрямую с роутера. Примерно так:

"inbounds": [
    {
      "type": "shadowsocks",
      "tag": "in_ss",
      "listen": "0.0.0.0",
      "listen_port": xxxx,
      "method": "method",
      "password": "yyyy",
      "users": [
        {
          "name": "username",
          "password": "zzzz"
        }
      ]
    }
],
"outbounds": [
    {
      "type": "direct",
      "tag": "direct"
    }
],
"route": {
    "rules": [
        {
          "inbound": ["in_ss"],
          "outbound": "direct"
        }
    ]
}
drova326 commented 2 weeks ago

Так, кажется проблема не столько в связке zapret + sing-box, сколько в самом shadowsocks-сервере... Просто с такими же настройками поднял ss на зарубежном VPS (правда там xray, а не sing-box в качестве бекенда) и чет не работает. Видимо настройки ss-сервера, или настройки hiddify на телефоне неверные.

drova326 commented 2 weeks ago

В общем проблема была в sing-box. Просто заменил его на xray-core и теперь связка "VPN к роутеру с zapret" работает лучше чем связка "VPN к зарубежному VPS" - ютуб не тормозит сайты разблокированы, арендовать за бугром сервер не нужно ну и бонусом что сервисы в РФ больше не ругаются на "вражеский" ip