Блокировка Discord (обсуждение + обход блокировки)

Дискорд вроде умеет в прокси. но не понятно голос идёт через него или нет. проверить сейчас не на чем Discord не работает: Как обойти блокировку все способы / Комментарии / Хабр

DiscordProxyStart не показал себя с хорошей стороны. Умеет только в http прокси, голос не работает.

Рабочий метод БЕЗ TUN:
sing-box (у меня nekoray на винде), у меня работает как без xudp так и с ним. Разницы не заметил.
Скачиваем ProxyCap
Создаём правила для Discord.exe и Update.exe включаем TCP и UDP, настраиваем socks5 прокси

Голос работает

все понятно же, голос идет через rtc - это udp, обычные прокси не работают с воисом. либо TUN режим использовать, либо ставить проксифаеры всякие который трафик оборачивают

У меня вышеупомянутой реализации Запрета Flowseal/zapret-discord-youtube почему-то совсем плохо стало, полегла, а вот zapret-only-ds от KDS робит. Правда, после его запуска Дискорд корёжит с минуту-полторы, пару раз вылетает обратно в загрузку, но как покорёжит, всё отлично работает. Напомните, плиз, что нужно добавить в #service_install_reinstall.cmd, чтобы KDS’овский zapret-only-ds стал не только онлидээсным, а ещё и ютубным (ну помимо заполнения list-youtube.txt, это само собой разумеется).
ЗЫ: прошу пардону, реплай не собирался оформлять, случайно вышло, а при редактировании реплайность сообщения почему-то не убирается :man_shrugging:

Подскажите пожалуйста что делаю не так.
Воспользовался zapret-discord-1.1.1 - конфиг идеально работает и для ютуба и для дискорда, пытаюсь повторить тот же самый конфиг на роутере, прописываю:

NFQWS_OPT_DESYNC="--filter-tcp=80 --dpi-desync=fake,split2 --dpi-desync-autottl=2 --dpi-desync-fooling=md5sig --new --filter-tcp=443 --dpi-desync=fake,split2 --dpi-desync-autottl=2 --dpi-desync-fooling=md5sig --dpi-desync-fake-tls=/opt/zapret/files/fake/tls_clienthello_www_google_com.bin"
NFQWS_OPT_DESYNC_QUIC="--filter-udp=443 --dpi-desync=fake --dpi-desync-udplen-increment=10 --dpi-desync-repeats=6 --dpi-desync-udplen-pattern=0xDEADBEEF --dpi-desync-fake-quic=/opt/zapret/files/fake/quic_initial_google_com.bin --new --filter-udp=50000-65535 --dpi-desync=fake,tamper --dpi-desync-any-protocol --dpi-desync-fake-quic=/opt/zapret/files/fake/quic_initial_google_com.bin"

Аргументы запуска zapret-discord:

start "zapret: discord" /min "%BIN%winws.exe" ^
--wf-tcp=80,443 --wf-udp=443,50000-65535 ^
--filter-udp=443 --hostlist="%~dp0list-general.txt" --dpi-desync=fake --dpi-desync-udplen-increment=10 --dpi-desync-repeats=6 --dpi-desync-udplen-pattern=0xDEADBEEF --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin" --new ^
--filter-udp=50000-65535 --dpi-desync=fake,tamper --dpi-desync-any-protocol --dpi-desync-fake-quic="%BIN%quic_initial_www_google_com.bin" --new ^
--filter-tcp=80 --hostlist="%~dp0list-general.txt" --dpi-desync=fake,split2 --dpi-desync-autottl=2 --dpi-desync-fooling=md5sig --new ^
--filter-tcp=443 --hostlist="%~dp0list-general.txt" --dpi-desync=fake,split2 --dpi-desync

Файлы прикрепляю:
discord_youtube.bat (1,2 КБ)
config (5,6 КБ)

Нет, сегодня, в 4 утра по мск еще работал, после перезагрузки телефона - перестал

Если в настройках SS некорея включить UoT(UDP over TCP), голос работает. Вопрос закрыт.
UPD. Я забыл что по умолчанию SS шлет UDP трафик напрямую и он тупо блокировался iptablets, прокинул порты и все заработало

В примерах в интернетах вроде было что оно и 5 носки принимает.
--proxy-server="socks5://172.16.10.18:7891"
UPD: промахнулся с ответом. @PawTrickBaitMan

В примерах в интернетах вроде было что оно и 5 носки принимает.
--proxy-server="socks5://172.16.10.18:7891"
UPD: промахнулся с ответом. @PawTrickBaitMan

В описании на GitHub написано, что DiscordProxyStart работает на том же принципе, что и discord-proxy, а тот , по описанию, socks не поддерживает.

Впрочем всё это уже не актуально, когда есть ProxiFyer на гитхабе создателя wiresock. У меня работает на ура, возможно даже лучше вышеупомянутого ProxyCap.

Ключи --wf-tcp, --wf-udp, --filter-udp, --filter-tcp вроде как относятся только к Windows версии. На линуксе для запуска через конфиг, да и через команду тоже, для таких параметров нужно одновременно поднимать правила файервола для соответствующих стратегий. Нужно писать custom script. Подробнее смотрите тут.

Очень не хватает бесплатной и простой программы, которая бы просто заворачивала TCP и UDP конкретной программы в локальный socks5. Аналог ProxyCap (платная) или SocksCap64 (заброшена 8 лет назад). А то везде какие-то сложные комбайны на сотню мегабайт с кучей ненужных функций. У меня уже есть комбайн для проксирования (какой-нибудь условный nekoray), но все эти комбайны не умеют работать точечно именно с процессами (без глобальных TUN).
В общем, острая нехватка максимально простой и бесплатной программы, где просто указываешь процесс и ip:port socks5.

Если вы, как и я, пользуетесь wireguard или amneziaWG, и не хотите прибегать ни к каким другим средствам, то есть способ сделать конфиг, который будет туннелировать трафик только для дискорда.

Для этого скопируйте свой текущий конфиг, а в секции AllowedIPs пропишите содержимое файла. Это IP всех войс и не войс-серверов, брал отсюда: GitHub - GhostRooter0953/discord-voice-ips: Discord Voice IPs

В клиенте надо не забыть снять галочку с “Блокировать нетунелированный трафик”

allowed_ips.txt (25,3 КБ)

Можно через netch завернуть конкретно дискорд в сокс5.

Подскажите, пожалуйста, с какими параметрами есть смысл поиграться в последней вариации запрета(YTDisBystro) от товарища @KDS чтобы заработал войс в дискорде?
Ситуация такая - у 4 из 5 человек ютуб и дискорд полетели без доп. действий через preset_russia.cmd, у одного ютуб работает, дискорд загружается, но при подключении к войсу говорит нет маршрута.
Причем при первом запуске в войс пустило, потом перезапустили и начались проблемы.
ipconfig /flushdns, netsh winsock reset делали

Сейчас строки с UDP выглядят так:

--filter-udp=443 --hostlist="%~dp0russia-youtubeQ.txt" --dpi-desync=fake --dpi-desync-repeats=4 --dpi-desync-fake-quic="%~dp0quic_initial_www_google_com.bin" --new ^
--filter-udp=50000-65535 --dpi-desync=fake --dpi-desync-any-protocol --dpi-desync-cutoff=n1 --dpi-desync-fake-quic="%~dp0quic_initial_www_google_com.bin" --new ^

И зачем вы сюда вкорячили строку для квика на Ютубе? Если вы туда перенесли домены дискорда - то сами себе злобное буратино, это все не так работает.

Так я и не вкорячивал ничего, это дефолтный батник из архива по вашей ссылке скачанный примерно в 12-13:00 по мск.
Домены по листам тоже не менял, только очистил всё из russia-blacklist.txt

Вас, видимо интересуют эти строчки, что в них подкрутить?

--filter-udp=443 --hostlist="%~dp0russia-discord.txt" --dpi-desync=fake,udplen --dpi-desync-udplen-increment=10 --dpi-desync-repeats=7 --dpi-desync-udplen-pattern=0xDEADBEEF --dpi-desync-fake-quic="%~dp0quic_initial_www_google_com.bin" --new ^
--filter-udp=50000-65535 --dpi-desync=fake --dpi-desync-any-protocol --dpi-desync-cutoff=n2 --dpi-desync-fake-quic="%~dp0quic_initial_www_google_com.bin" --new ^
--filter-tcp=443 --hostlist="%~dp0russia-discord.txt" --dpi-desync=fake,split2 --dpi-desync-split-seqovl=1 --dpi-desync-split-tls=sniext --dpi-desync-fake-tls="%~dp0tls_clienthello_www_google_com.bin" --dpi-desync-ttl=4

Можете начать с --dpi-desync-ttl=4 (от 1 до 7)

Почему никто никогда инструкции не читает? :roll_eyes:

Мне думалось, что за голосовые каналы отвечают строки с UDP, т.к. все остальное кроме войса работает корректно.
Попробую покрутить, спасибо)