Pull to refresh

Comments 20

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

О каком либо доверии многие даже не ведают, основной критерий для них это удобство.

Согласен с вами абсолютно

Кстати, все пароли в удобоваримом виде хранятся в файле /opt/outline/persisted-state/outline-ss-server/config.yml . Если уж задействовать консоль, можно оттуда вытащить

А кто может подсказать?

Есть у меня 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 на рутере

  1. Nslookup выдает DNS timeout

  2. DNS 8.8.8.8, 1.1.1.1 пингуются

  3. В логах сервера никаких записей об ошибках нет, в рутере в разделе System log такие записи "daemon.err dnsmasq[1975]: failed to send packet: Network unreachable"

  4. При указании DNS в свойствах сетевой карты ситуация, как оказалось, не меняется - всё выше перечисленное

  5. Все приложения связывающиеся по 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 жестко через один из интерфейсов

  1. DNS 8.8.8.8, 1.1.1.1 пингуются ; в случае shadowsocks пинг не самый лучший метод диагностики, т.к. ICMP пакеты через shadowsocks не идут.

  2. В логах сервера никаких записей об ошибках нет, в рутере в разделе System log такие записи "daemon.err dnsmasq[1975]: failed to send packet: Network unreachable" ; Здесь похоже что по какой-то причине udp трафик не достигает DNS сервера, я бы начал с проблем маршрутов. Боюсь что проблема может быть в Load Balancer, надо бы её исключить.

  3. Все приложения связывающиеся по 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

Все сделал по инструкции, работать не хочет. Может еще какие настройки необходимы?

В логах есть какие-то ошибки? Служба shadowsocks запускается? Интернет перестаёт работать или трафик не перенаправляется в Outline?

Все запустилось! Учетки быстропомирающие окзались. Вопрос остается по DNSу.

По ДНСу можете описать что именно происходит? Nslookup что выдаёт? Пингуется ли DNS? DNS серверы прописаны на интерфейсах или получаете по DHCP от провайдера?

Я прошу прощения, но не могу найти "службы" , версия 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.

про IPv4 ценное замечание, для того чтобы появились Службы - Shadowsocks-libev обычно достаточно перезагрузить страницу браузера (либо очистить кэш в крайнем случае), перезагрузка не требуется

А на каком этапе выбирается конкретный сервер? Если, например, необходимо через конкретную страну "выныривать" - то как?

Вы вот заспамили рунет этим текстом, но работоспособность этого способа или плохо проверяли, или проверяли только на роутере.

DNS в данном случае "не работает". Чтобы всё заработало, нужно после всех манипуляций поставить Unbound или Stubby с сайта openwrt.

Спасибо за комментарий! А не работает это как? Провайдер DNS подменяет? Для этого в статье описан способ с shadowsocks туннелем до Google DNS. Вообще да, DoH и DoT гарантия того что подмена не будет происходить, но отнюдь не у всех провайдеров это наблюдается, а провайдерским DNS по умолчанию пользоваться я бы не стал. А про заспамил вы что имеете ввиду?

Sign up to leave a comment.

Articles