gSpotx2f / ruantiblock_openwrt

Обход блокировок в OpenWrt с помощью Tor или VPN
GNU General Public License v3.0
218 stars 20 forks source link

Sing-box TProxy #89

Closed deathspank666 closed 3 weeks ago

deathspank666 commented 1 month ago

Не удается настроить работу ruantiblock с sing-box в режиме trpoxy. В настройках ruantiblock указывается режим прозрачного прокси, в настройках sing-box прописывается "inbounds":

    {
      "tag": "tproxy-in",
      "type": "tproxy",
      "listen": "127.0.0.1",
      "listen_port": 1100,
      "tcp_fast_open": true,
      "udp_fragment": true,
      "sniff": true,
      "domain_strategy": "prefer_ipv4"
    }

В tun режим sing-box сам по себе медленный, а сейчас возникла необходимость гнать большие объемы трафика из-за блокировок youtube и discord (возможно еще стриминговые сервисы в будущем). Поддержка успешна trpoxy реализована в https://github.com/itdoginfo/podkop , но проект только создался и под сомнением создания функционал, присутствующий в ruantiblock (например подгружаемые пользовательские списки, у автора свое видение на этот счет). Буду признателен за советы по настройке или любые другие рекомендации.

gSpotx2f commented 1 month ago

Режим прозрачного прокси в ruantiblock применяет действие redirect в правилах nftables. Для sing-box нужно правило с действием tproxy (и ещё прописать маршрутизацию для локальных пакетов). Изначально режим прозрачного прокси (правила nftables) создавался для tor (а также shadowsock-libev, redsocks и пр.), ему нужен именно redirect. Про проблему с sing-box я в курсе, просто раньше все использовали режим tun и не было необходимости заморачиваться с TProxy... Добавлю поддержку tproxy в следующей версии ruabtiblock.

Кстати, "listen": "127.0.0.1", будет принимать только трафик исходящий от самого роутера.

gSpotx2f commented 3 weeks ago

Добавил поддержку tproxy в новой версии.

deathspank666 commented 3 weeks ago

Спасибо, sing-box через tproxy работает отлично!