qzeleza / kvas

vpn и shadowsocks клиент для роутеров keenetic
Other
649 stars 41 forks source link

Вопросы и наблюдения при чистой установке kvas 1.1.4 и 1.1.5 pr4 #74

Closed badigit closed 9 months ago

badigit commented 11 months ago

Описание проблемы. Удалил квас (версия 1.1.4) - командой kvas rm удалил руками все зависимые пакеты

после удаления пакетов почему то остался хвост - /opt/etc/cron.5mins/ipset.kvas удалил руками /opt/etc/init.d/S22shadowsocks удалил руками

Вопрос 1 - должно ли само удаляться?

  1. При установке новой версии, зависимые пакеты установились сами. Но при запуске kvas setup ошибка image /opt/bin/kvas: line 1379: /opt/etc/init.d/S22shadowsocks: not found видимо само оно не установилось

** Тут ремарка вообще стоит ли устанавливать shadowsocks если его не планируют использовать, и показывать все время его отключенный интерфейс***

  1. Почему то автоматом не подтянулся список разблокировки из
    /opt/etc/.kvas/backup/hosts.list но установился список по умолчанию

  2. После kvas setup - интернет заработал (DNS работает и сайты открывает), но обход блокировок - нет. (проверял через 2ip - вижу свой IP).

  3. сделал kvas purge и затем kvas import старого списка (у меня он без звездочек, под новый dnsmasq)

  4. Все еще не работает обход блокировок

  5. Сделал kvas debug - вижу ошибки (файл прикладываю) image 123.txt

Важный момент. Ошибки возникающие при выполнении kvas debug > 123.txt в сам файл не попадают (но они видны на скрине)

Итого:

  1. Не удаляются cron и /opt/etc/init.d/S22shadowsocks, не возвращается скриптS22shadowsocks
  2. Не восстанавливает сам прошлый список разблокировки
  3. Не работает обход на dnsmasq
  4. Ошибки grep: warning: stray \ before 0 в kvas debug
badigit commented 11 months ago

После вызова kvas test обход блокировок на базе dnsmasq начинает работать. Посмотрим сколько продержится)

badigit commented 11 months ago

Периодически отваливается обход блокировок. При вызове kvas update / reset обход не восстанавливается, и видна ошибка без подробностей.

image

При вызове kvas test ошибок нет, и обход блокировок восстанавливается..

Также - мои наблюдения что traceroute из окружения opkg не показывают обход блокировок никогда, traceroute с компьютера в сети покажет корректно трейс с обходом блокировки.

Получается с кинетика нельзя проверить что обход блокировок работает?

badigit commented 11 months ago

Добавлю что на текущий момент проблема воспроизводится просто выполнением kvas add. После этого обход блокировок перестает работать.

badigit commented 11 months ago

Добавлю, что если не трогать kvas add, и пока основные соединения работают - обход блокировок работает тоже стабильно. При kvas add ломается.

Связываю это с тем что вроде в последних версиях вы отключали автоматическое обновление таблиц через крон. Возможно там что то при обновлении проходит не-по-плану...

wildrun0 commented 11 months ago

Я рад что не только у меня не работает обход без kvas test :)

qzeleza commented 11 months ago

Спасибо за тикет - посмотрю в ближайшее время.

kilia07 commented 11 months ago

Всем привет! Также не работало после kvas add и периодически просто переставал работать обход блокировок через n-минут после kvas test. При этом если в приоритетах подключения VPN вынести вверх - все ок. Попробовал удалить rm /opt/etc/cron.5mins/check_vpn и вот уже 2 часа работает как надо.

badigit commented 9 months ago

Всем привет. с чем столкнулся при установке _1.5_preview2: (извиняюсь за длинный коммент. Возможно так будет лучше, для сохранения контекста всех моментов которые возникают при установке)_

Сначала сухо, а потом, ниже подробно

  1. Ошибка /opt/bin/kvas: line 1392: /opt/etc/init.d/S22shadowsocks: not found 2.а) Не нашел нужный интерфейс ikev2 VPN, нашел только со второй попытки (kvas vpn rescan) 2.б) Предлагает интерфейс SS, которым я не пользовался и не собираюсь.

  2. Нужна возможность прерывания setup, на шаге выбора интерфейса.

  3. При проблемах kvas setup пропадает интернет и ооочень сильно усложняет отладку, особенно неподготовленным.

  4. kvas.install.log пустой, там единственная строка ОШИБКА: Не отключено использование DNS провайдера. Скорее всего лог затерся, на каком то из шагов отладки.

  5. Kvas debug не записывает отладку, если не включен dns override

  6. Повторный запуск kvas setup завершился молча, после выбора интерфейса

Подробнее:

  1. В kvas_1.5_preview_2 также повторяется описанная тут проблема

/opt/bin/kvas: line 1392: /opt/etc/init.d/S22shadowsocks: not found

Воспроизведение:

kvas remove full
Все успешно

Перезагрузка роутера

Установка
opkg install kvas_1.5_preview_2_all.ipk

Выполнение kvas setup

-----------------------------------------------------------------------------------
Настройка пакета не завершена, запускаем настройку пакета
-----------------------------------------------------------------------------------
Установка пакета КВАС™ версии 1.1.5
-----------------------------------------------------------------------------------
Производим сканирование интерфейсов!
Сохраняйте терпение и спокойствие!
-----------------------------------------------------------------------------------
Выберите VPN интерфейс для работы пакета
-----------------------------------------------------------------------------------
/opt/bin/kvas: line 1392: /opt/etc/init.d/S22shadowsocks: not found
1. Интерфейс shadowsocks [78.47.125.180] [текущий]                  ОТКЛЮЧЕН
-----------------------------------------------------------------------------------
Выберите номер варианта VPN соединения [1-1]:
  1. В списке интерфейсов нет нужного интерфейса VPN Ikev2, который в предыдущей версии был виден. Ручной запуск kvas vpn rescan - нашел интерфейс ( и ошибка все еще висит)
# kvas vpn rescan
-----------------------------------------------------------------------------------
Настройка пакета не завершена, запускаем настройку пакета
-----------------------------------------------------------------------------------
Установка пакета КВАС™ версии 1.1.5
-----------------------------------------------------------------------------------
Обновить список интерфейсов [Y/N,Q]?                                y
-----------------------------------------------------------------------------------
Производим сканирование интерфейсов!
Сохраняйте терпение и спокойствие!
-----------------------------------------------------------------------------------
Выберите VPN интерфейс для работы пакета
-----------------------------------------------------------------------------------
/opt/bin/kvas: line 1392: /opt/etc/init.d/S22shadowsocks: not found
1. Интерфейс shadowsocks [78.47.125.180] [текущий]                  ОТКЛЮЧЕН
2. Интерфейс homedi ikev2 []                                        ГОТОВО
-----------------------------------------------------------------------------------
Выберите номер варианта VPN соединения [1-2]:
  1. При чистой установке пользователь может столкнуться с проблемой: Визард установки не предусматривает остановки\отмены на этапе выбора интерфейса. Если нет находишь нужный интерфейс в списке - не понятно что делать. Пользователь вынужден что-то выбрать, например не используемый SS (сделать заведомо неправильный выбор).

На этом этапе хорошо бы предусмотреть прерывание setup

  1. При прерывании настройки через Ctrl-C получаем себе не-рабочий интернет, и не очевидность того как его восстановить (чтобы написать issue:)) Происходит так, потому что opkg dns override уже включен, и dnsmasq запущен и занял 53 порт, но еще не настроен. (Интернет не работает)

Выполнение no opkg dns-override не восстанавливает системный DNS, поскольку порт 53 еще занят и в логах возникает ошибка failed to bind to 0.0.0.0:53 reason: address in use.

На мой взгляд тут можно подумать об:

-Какой то дефолтной конфигурации dnsmasq, чтобы dns хотя бы работал без-обхода-блокировок, в случае проблем на этапе установки

  1. kvas.install.log почему то пустой после установки..

  2. Очень болезненно составлять issue по проблемах, возникших на этапе setup, потому что: a) kvas debug требует opkg dns-override, который в свою очередь рвет все сессии и теряешь доступ к интернету и к github)

b) Запуск kvas debug вызывает запуск dnsmasq, который опять занимает 53 порт, и мешает восстановлению родного dns)) И нужно опять завершать руками dnsmasq, прежде чем выполнить no opkg dns-override.

Хорошо бы чтобы debug собирал информацию "по факту", а не останавливался на этапе требует opkg dns-override"

Как сейчас:

-----------------------------------------------------------------------------------
Настройка пакета не завершена, запускаем настройку пакета           
-----------------------------------------------------------------------------------
Установка пакета КВАС™ версии 1.1.5
-----------------------------------------------------------------------------------
Для корректной работы DNS сервера необходимо отключить использование DNS провайдера!
С этой целью зайдите в админ панель роутера по адресу: http://10.9.8.1/a
и выполните последовательно три следующих команды: 
-----------------------------------------------------------------------------------
1. opkg dns-override  - отключаем использование DNS провайдера,
2. system configuration save   - сохраняем изменения,
3. system reboot  - перегружаем роутер.
-----------------------------------------------------------------------------------
  1. Повторный запуск kvas setup, после выбора интерфейса произошел просто выход из скрипта, без информации.
  2. Третий запуск kvas setup, после выбора интерфейса скрипт отработал, написал что все готово.

Вот так выглядят пункты 7-8:

BusyBox v1.36.1 (2023-06-03 17:45:19 UTC) built-in shell (ash)

~ # kvas setup
-----------------------------------------------------------------------------------
Настройка пакета не завершена, запускаем настройку пакета
-----------------------------------------------------------------------------------
Установка пакета КВАС™ версии 1.1.5
-----------------------------------------------------------------------------------
Обновить список интерфейсов [Y/N,Q]?                                y
-----------------------------------------------------------------------------------
Производим сканирование интерфейсов!
Сохраняйте терпение и спокойствие!
-----------------------------------------------------------------------------------
Выберите VPN интерфейс для работы пакета
-----------------------------------------------------------------------------------
/opt/bin/kvas: line 1392: /opt/etc/init.d/S22shadowsocks: not found
1. Интерфейс shadowsocks [78.47.125.180] [текущий]                  ОТКЛЮЧЕН
2. Интерфейс homedi ikev2 []                                        ГОТОВО
-----------------------------------------------------------------------------------
Выберите номер варианта VPN соединения [1-2]:                       2

//Тут происходит просто выбрасывание обратно в терминал
// опять набираем kvas setup

~ # kvas setup
-----------------------------------------------------------------------------------
Настройка пакета не завершена, запускаем настройку пакета
-----------------------------------------------------------------------------------
Установка пакета КВАС™ версии 1.1.5
-----------------------------------------------------------------------------------
Обновить список интерфейсов [Y/N,Q]?                                n
-----------------------------------------------------------------------------------
Выберите VPN интерфейс для работы пакета
-----------------------------------------------------------------------------------
/opt/bin/kvas: line 1392: /opt/etc/init.d/S22shadowsocks: not found
1. Интерфейс shadowsocks [78.47.125.180]                            ОТКЛЮЧЕН
2. Интерфейс homedi ikev2 [] [текущий]                              ОТКЛЮЧЕН
-----------------------------------------------------------------------------------
Выберите номер варианта VPN соединения [1-2]:                       2
Интерфейс homedi ikev2 подключен                                    ГОТОВО
-----------------------------------------------------------------------------------
Копируем файл со списком разблокировки по умолчанию                 ГОТОВО
Останавливаем сервис dnsmasq...                                     ГОТОВО
Заменяем файл конфигурации dnsmasq...                               ГОТОВО
Настройка файлов конфигурации dnsmasq                               ГОТОВО
Настраиваем dnscrypt-proxy2...                                      ГОТОВО
-----------------------------------------------------------------------------------
Устанавливаем проверку зависания VPN соединения в cron.             ГОТОВО
Запускаем КВАС в работу                                             УСПЕШНО
-----------------------------------------------------------------------------------
Установка КВАСа завершена.
Для общей справки наберите kvas help
-----------------------------------------------------------------------------------
qzeleza commented 9 months ago

Предварительно, взял тикет в работу. Благодарю за столь подробный отчет об ошибке.

drfischer2 commented 9 months ago

По поводу неработающего интернета полностью поддерживаю! Сам в такой ситуации отказался. В результате через мобильный интернет, с телефона, пытался выяснить в чем проблема, читая гитхаб и мануал по КВАСу. В общем масса приключений тогда у меня было)

badigit commented 9 months ago

Спасибо за фиксы по текущему issue. Апну, наверное последние две проблемы которые остались при обновлении на новые версии. При обновлении pr3 > pr4 (adh включен)

  1. Затирается список хостов дефолтным, приходится заново настраивать (purge + import) было бы замечательно оставлять существующий список хостов.

  2. Ошибка /opt/bin/kvas: line 1379: /opt/etc/init.d/S22shadowsocks: not found при сканировании интерфейсов (issue #87)

Обновляю через update последней версии.

qzeleza commented 9 months ago
  1. Затирается список хостов дефолтным, приходится заново настраивать (purge + import) было бы замечательно оставлять существующий список хостов.

В финальной версии 1.1.5 - сделаю

2. Ошибка /opt/bin/kvas: line 1379: /opt/etc/init.d/S22shadowsocks: not found при сканировании интерфейсов (issue pr4 Ошибка при сканировании интерфейсов - S22shadowsocks: not found и пустой лог установки #87)

Прокомментировал решение в тикет #87

Если еще какие либо вопросы по данной ошибке - жду до 26 числа.

wildrun0 commented 9 months ago

cp: can't create '/opt/etc/adblock/sources.list': No such file or directory при установке крайней версии кваса после kvas remove full предыдущей

wildrun0 commented 9 months ago

image При kvas update

qzeleza commented 9 months ago

cp: can't create '/opt/etc/adblock/sources.list': No such file or directory при установке крайней версии кваса после kvas remove full предыдущей

Подправил в крайней версии - проверьте пожалуйста.

При kvas update

Пока не могу сказать в чем проблема, но на работу она не влияет.

qzeleza commented 9 months ago

Доработал код 1.1.5-final Если ошибка появится - повторно откройте тикет. Сейчас его закрываю.