Comments 22
Лучше не доверять декодирование строки с паролем сторонним сервисам, а заюзать свою консоль

А кто может подсказать?
Есть у меня Outline сервер, уже 2 года ему. На всех девайсах пользовался клиентом - на десктопе, мобильном. Все работает нормально.
Также в наличии OpenWRT рутоер.Сделал по инструкции из этой статьи, но не работает в полной мере. Не работает DNS. Пинги по айпи самое главное идут, но по доменному имени ни один сайт не доступен. В Outline Manager по роутеровскому клиенту трафик виден, видно что идут пакеты. Я могу конечно в настройках сетевой карты прописать DNSы, но хочется чтобы без костылей работало.
Nslookup что выдаёт? dns сервер пингуется? При отключении shadowsocks всё снова начинает работать? В логах какие-то ошибки есть? Если DNS руками прописываете на компьютере работает? Если проблема только с DNS это должно быть несложно исправить. Shadowsocks работает только с TCP, UDP трафиком, ICMP идёт через ваш шлюз по умолчанию.
Для начала окружение: ОС Windows 11 со всеми обновами, роутер OpenWrt 19.07.6, Outline server 7 месячной давности (не знаю как версию посмотреть) в виде докера контейнера (их 2 - shadowbox и watchtower) с тегом stable. В рутер заходят 2 канала интернета от разных провайдеров с LoadBalancer, DNSы (8.8.8.8 и 1.1.1.1) прописаны в интерфейсах - от провайдера их не получаю
При установленном и включенном shadowsocks на рутере
Nslookup выдает DNS timeout
DNS 8.8.8.8, 1.1.1.1 пингуются
В логах сервера никаких записей об ошибках нет, в рутере в разделе System log такие записи "daemon.err dnsmasq[1975]: failed to send packet: Network unreachable"
При указании DNS в свойствах сетевой карты ситуация, как оказалось, не меняется - всё выше перечисленное
Все приложения связывающиеся по IP со своими удаленными серверами - работают. Например telegram
При выключенном shadowsocks:
1. Все работает
Кстати вот этой настройки по умолчанию нет и в статье о ней ни слова:
config ss_tunnel
option server 'sss0'
option local_address '0.0.0.0'
option mode 'tcp_and_udp'
option timeout '60'
Пришлось ее вносить руками.
Спасибо за верное замечание, config ss_tunnel это отдельный туннель к заданному узлу, например можно использовать как некоторую альтернативу https-dns-proxy если добавить строки
option local_port '8053'
option tunnel_address '8.8.8.8:53'
и дописать в dnsmasq настройку 127.0.0.1#8053 то dns запросы к Google DNS будут идти через отдельный туннель shadowsocks. в случае конфига в статье это просто заготовка под туннель которая не используется.
По вашему кейсу, LoadBalancer это mwan3 или что-то другое используете?
Какая политика используется? balanced или резервирование? Я бы попробовал задать статический маршрут для сервера Outline жестко через один из интерфейсов
DNS 8.8.8.8, 1.1.1.1 пингуются ; в случае shadowsocks пинг не самый лучший метод диагностики, т.к. ICMP пакеты через shadowsocks не идут.
В логах сервера никаких записей об ошибках нет, в рутере в разделе System log такие записи "daemon.err dnsmasq[1975]: failed to send packet: Network unreachable" ; Здесь похоже что по какой-то причине udp трафик не достигает DNS сервера, я бы начал с проблем маршрутов. Боюсь что проблема может быть в Load Balancer, надо бы её исключить.
Все приложения связывающиеся по IP со своими удаленными серверами - работают. Например telegram ; Идёт ли трафик в телеграм через shadowsocks или в обход? Есть ли у вас возможность это проверить? Посмотреть в логах telegram с какого IP произведен вход например. По описанию у меня создаётся ощущение что не работает сам shadowsocks из-за того что в mwan3 по умолчанию режим sticky назначен только для TCP трафика на 443 порту, а весь остальной трафик в случае балансирования будет идти с двух интерфейсов, а для туннеля один и тот же интерфейс может быть нужен.
Всё что я написал это к сожалению только догадки, если нужна более предметная помощь можете обратиться и в личку, возможно смогу чем-то помочь.
Можно так же попробовать использовать туннель для DNS как я описал выше, но это будет работать только если shadowsocks работает и проблема в настройках DNS что маловероятно
Кстати, увидел ваш апдейт насчет daemon.err /usr/bin/ss-redir[1016]: accept: No file descriptors available. У меня тоже в логах они появляются после включения shadowsocketsю Этих логов очень много
Версия 19.07
Все сделал по инструкции, работать не хочет. Может еще какие настройки необходимы?
Я прошу прощения, но не могу найти "службы" , версия 22.03. Что в английском интерфейсе (local instances -верно?) что в русском. Вот этот пункт инструкции " Переходим в раздел Службы - Shadowsocks-libev" .
В английском варианте службы именуются Services, local instances это уже внутри shadowsocks. Чтобы настраивать shadowsocks в Luci, убедитесь что установили пакет luci-app-shadowsocks-libev
Тут автору надо добавить пункт, что после установки luci-app-shadowsocks-libev необходимо перезагрузить роутер и тогда настройка " Переходим в раздел Службы - Shadowsocks-libev" появится. В моё случае именно так.
А ещё как дополнение и проблемы с dns. Идя по первому варианту в моей прошивки 23.05 вшит сразу IPv6. И часть устройств пытается получить адрес с IPv6 из-за чего часть приложений начинают неверно работать. В целом то вроде ничего, но тут можно поправить путём Network -> Firewall и для двух Зон lan->wan и wan->reject подправить конфиг во вкладке Advanced Settings параметр Restrict to address family сменить на IPv4.


А на каком этапе выбирается конкретный сервер? Если, например, необходимо через конкретную страну "выныривать" - то как?
Вы вот заспамили рунет этим текстом, но работоспособность этого способа или плохо проверяли, или проверяли только на роутере.
DNS в данном случае "не работает". Чтобы всё заработало, нужно после всех манипуляций поставить Unbound или Stubby с сайта openwrt.
Спасибо за комментарий! А не работает это как? Провайдер DNS подменяет? Для этого в статье описан способ с shadowsocks туннелем до Google DNS. Вообще да, DoH и DoT гарантия того что подмена не будет происходить, но отнюдь не у всех провайдеров это наблюдается, а провайдерским DNS по умолчанию пользоваться я бы не стал. А про заспамил вы что имеете ввиду?
Вопрос на засыпку. В OpenWRT 24.10 больше нет этих пакетов. Чем заменить?
Ничем. Возможно через какое-то время появится альтернативный ss-rust.
shadowsocks-libev: drop the package by yousong · Pull Request #24540 · openwrt/packages · GitHub
Настройка клиента Outline VPN на OpenWRT (все версии) на базе пакета shadowsocks-libev и tun2socks