Skip to content

Latest commit

 

History

History
412 lines (351 loc) · 60.3 KB

HISTORY.md

File metadata and controls

412 lines (351 loc) · 60.3 KB

1.1.9 beta 9

  • Внесены измения по заявкам:
  • #213 Перехват DNS не работает в отдельных случаях
  • #215 Доводка debug
  • #220 Получение сетевых интерфейсов без рестарта всех подключений + внесены доработки в функции get_router_ip и get_local_inface
  • #222 Dnscrypt: включение и отключение
  • #224 ipset команды в консоли
  • Внесено испралвение при генерации записей в /opt/etc/dnsmasq.d/kvas.dnsmasq - вместо \. теперь только точка. Отдельная благодарность AltGrF13.

1.1.9 beta 8

  • Внесены измения по заявкам:
  • #211 Dnsmasq настройки + принудительное удаление предыдущей версии и установка новой, с целью поддержания новых опций filter-AAAA и filter-rr=HTTPS.
  • #205 Определение версии прошивки (доработка)
  • #194 Добавлена команда kvas debug ikev2 - для тестирования ikev2 за что отдельная благодарность AltGrF13.
  • Устранена проблема отсутствия реакции на команду установки AdGuardHome на удаленном устройстве.
  • Удален запрос на добавление хоста с wildcard при его добавлении kvas add <host>.
  • Исправлена ошибка, приводящая к невозможности ввода vless ссылки
  • После удаления пакета, теперь по умолчанию, устанавливается DNS от Яндекса - 78.88.8.8, чтобы возобновить подключение к сети Интернет.
  • Добавлена новая команда kvas vless new, которая позволяет обновить Вашу ссылку, если та была введена неправильно.

1.1.9 beta 7

  • Внесены изменния по заявкам:
  • #189 1.1.9-beta_6: wildcard у хостов при импорте или добавлении теряется,
  • #194 IKEv2 не работает в некоторых случаях,
  • #195 1.1.9-beta_6: вопросы DNS,
  • #199 Расшаривание гостевых,
  • #205 Определение версии прошивки,
  • #206 1.1.9-beta_6: триггерные файлы,
  • #207 1.1.9-beta_6: Межсетевой экран,
  • #208 Оптимизация старта списка,
  • #209 Оптимизация работы с IP в списке. Отдельная благодарность AltGrF13.
  • Добавлена закваска для xbox, отдельное спасибо ssavickiy
  • Доработана поддержка протокола vless

1.1.9 beta 6

  • Произведена замена имени ipset таблицы unblock на фирменное название kvas и файла iflayerchanged.d/100-unblock-vpn в iflayerchanged.d/100-kvas-vpn
  • Произведена замена файла hosts.list на kvas.list
  • Удалено регулярное 5 мин. добавление в ipset таблицу адресов, вместо этого изменен параметр ttl для ipset таблицы и DNS-серверов (Благодарность avn).
  • Небольшие правки кода по issue #162
  • Добавлены команды для работы с файлом /opt/etc/hosts: hosts del ip|domain и hosts prune
  • Из-за высокого уровня загрузки процессора, секция server_names = ['google', 'yandex', 'cloudflare'] в dnscrypt-proxy2 теперь отключена по умолчанию, каждый сам может ее активировать в настройках /opt/etc/dnscrypt-proxy2.toml.
  • Добавлена закваска для Telegram
  • Добавлены закваски по различным тематикам
  • Добавлена проверка наличия библиотеки libmbedtls
  • Добавлена возможность при сканировании интерфейсов отображать OpenConnect
  • Исправлена ошибка, связанная с проверкой ssr соединения (см. заявка #171)

1.1.9 release 2

  • Исправлены незначительные ошибки 1.1.9 release 1

1.1.9 release 1

  • Список хостов по умолчанию добавлены домены для chatgpt и dockerhub и для работы с играми от компании Supercell (Brawel Stars, сlash royal, clash of clends )
  • Теперь, при выводе статуса adguard виден адрес и порт по которому доступен сервер ADGH.
  • С текущего релиза для удаления пакета Квас будет использоваться только команда uninstall, чтобы не производить путаницы команда remove - удалена.
  • Для команды debug, теперь добавлена команда ipset, которая позволяет проверить в цикле все IP доменных имен на наличие в списке ipset: kvas debug ipset
  • При исполнении команды debug, теперь для безопасности выводятся вместо доменных имен и IP адресов звездочки для первых 5 символов.
  • Доработан код скрипта kvas/bin/main/dnsmasq, с целью исключить дубрирование записей в файл kvas.dnsmasq
  • Добработан механизм добавления/удаления гостевых сетей для команд 'kvas vpn net add/del'
  • При установке пакета добавлена функция удаления пакета nano, в случае его наличия, так как вместо него будет установлен пакет nano-full
  • Добавлены теги для доменных имен. Теперь можно добавлять сразу все доменные имена помеченные в файле тегов одним из них. Подробно см. справку.
  • Доработана обработка ssr ссылок, теперь код корректно обрабатывает ссылки со знаком ? в ссылке.
  • Добавлена возможность вводить спецсимволы при вводе shadowsocks пароля.
  • Доработан код файла kvas.dnsmasq. Учетна возможность отключенного dnscrypt-proxy2. Особая благодарность attacco
  • Добавлен еще один интерфейс Proxy, который можно подключить через WUI (Благодарность romka777).
  • Исправляет ошибку, когда интерфейсов более 9-ти (ломается регулярка [1-${total}] когда становится [1-10] (от символа "1" до символа "1" и символ "0") (Благодарность Ponywka)
  • При активации dnscrypt-proxy2 теперь автоматически подклчается секция server_names = ['google', 'yandex', 'cloudflare'] для работы с указанными серверами (Благодарность MonoBOY).
  • При установке пакета, теперь есть возможность сразу выбрать и подключить одну домашнюю сеть к Квасу.
  • К команде kvas test добавлен флаг "--no-check". При активном флаге не будет выполняться функция ipset_site_visit_check и тест будет завершаться без участия пользователя (По просьбе @dnstkrv).
  • Благодаря @PsychodelEKS, появилась возможность отключить использование DNS провайдера в автоматическом режиме при установке и удалении пакета (пока в стадии тестирования).
  • Доработан процесс удаления пакета, внесен новый ключ при удалении "develop", при использовании которого останавливаются и удаляются все связанные с Квасом сервисы и их файлы конфигурации (Благодарность @dimbady).

1.1.8 release 2

  • В случае введения кодированной SSR ссылки с # внутри - правая часть ссылки будет отсекаться вместе со знаком #.
  • Обновлены функции определения типа ускорения работы роутера (программного или аппаратного) для KeenticOS 4.1 и выше
  • Добавлены дополнительные механизмы очистки правил для команд: vpn set, vpn net add, vpn net del, del

1.1.8 release 1

  • Доработана функция get_entware_ikev2_inface коррекции работы IKEv2 + SS [issue #114]
  • Перепроверена работа функции обновления программы AdGuardHome - все работает штатно [запрос от pavelts].
  • Внесены доработки в код для устранения ошибок, связанных с отсутствием /opt/etc/hosts
  • Внесены изменения для коррекции правил iptables, согласно предложенным изменениям в [issue #116]
  • Внесены изменения в код для исправления ситуаций с возникновением ошибок, типа sh: bad number [issue #114]
  • Внесены изменения в код для решения проблемы с очисткой правил и таблиц при обрыве соединения провайдера [issue #97 ]
  • Доработан код для корректного внесения правок переменной port в файл конфигурации AdGuardHome [запрос от Shvedoffsky]
  • Появилась возможность вводить для SSR соединения кодированную ссылку вместо набора данных в ручную.
  • Появилась возможность быстро проверить, есть ли в списке конкретный домен или его часть при помощи команды kvas list domen, это эквивалент команды kvas list | grep domen

1.1.7 release 8

  • Доработан код, который исправляет ошибку "таблица ipset пуста" при запуске kvas test. [issue #108].
  • Доработан код обновления пакета с целью предотвратить перезапись архивных данных [issue #106].
  • Отключен вывод в лог роутера сообщения "Сброс пакета КВАС в исходное состояние ЗАВЕРШЕН!", а так же, проверен на ошибки код в файле /opt/etc/ndm/netfilter.d/100-vpn-mark [issue #104].

1.1.7 release 7

  • Из файла ndm для ssr соединений были обратно возвращены правила для обоих протоколов tcp и udp [issue #104].
  • Доработан фильтр при добавлении домена. Теперь при проверке наличия домена в списке - домен проверяется с начала сроки [issue #105].

1.1.7 release 6

  • Переработана функция обновления пакета, добавлен режим rollback для "отката" на предыдущие выпуски с GitHub
  • Исправлена ошибка при установке пакета в следствии лишнего оператора sed (issue #103)
  • Исправлены ошибки в работе функции сохранения настроек и их восстановления при установке или обновлении пакета (issue #102)
  • Исправлен слой срабатывания с ctrl на ipv4, для активации режима очищения правил iptables при обрыве соединения с провайдером (issue #97)

1.1.7 release 5

  • В правилах iptables удалено разделение на tcp и udp трафик. Сейчас правила устанавливаются для всех типов протоколов без их разделения.
  • Исправлена ошибка в коде при добавлении доменных имен, ранее запрос не появлялся и не отсутствовало уведомление о добавлении единичного домена.
  • Отключено двойное кеширование, которое ранее происходило за счет работы этого механизма как в dnsmasq, так и в dnscrypt-proxy2
  • Произведена установка в файле конфигурации dnscrypt-proxy2 параметра cache_min_ttl в ноль, для исключения подмены TTL.
  • Из архива удалены старые версии собранных пакетов, для того чтобы была возможность уложиться в лимиты GitHub
  • Исправлена ошибка, которая приводила к выводу сообщений при отсутствии файла соответствия интерфейсов /opt/etc/inface_equals

1.1.7 release 4

  • Доработан код файлов iflayerchanged.d/kvas-ips-reset и ifstatechanged.d/100-kvas-vpn для решения #issue 97
  • Доработан код для предотвращения случайного удаления пакета в следствии передачи аргументов содержащих букву или слово "y|yes", при исполнении команды kvas remove
  • Доработан код по архивации и восстановлению конфигурационных файлов пакета.
  • Доработан код функции восстановления гостевых интерфейсов после обновления пакета.
  • Исправлена ошибка в коде при добавлении гостевых интерфейсов, вследствие которой, необходимые правила для ikev2 не добавлялись в iptables.

1.1.7 release 3

  • Исправлена ошибка при импорте доменных имен из файла #issue 100
  • Добавлена возможность автоматического добавления гостевых сетей при обновлении пакета
  • Исправлена ошибка в файле kvas-ips-reset #issue 97

1.1.7 release 2

  • Исправлена ошибка при обновлении пакета, когда номер версии не менялся, а оставался прежним.
  • Исправлена ошибка при сканировании интерфейсов при исполнении команды vpn set
  • Доработана функция сканирования интерфейсов, в случае наличия ошибок теперь выводятся сообщения об ошибках.
  • Добавлены статусы текущих настроек при исполнении команды debug

1.1.7 release 1

  • Добавлена возможность для команды help <команда> - выводит все о встречающейся команде - эквивалент kvas help | grep <команда>
  • Добавлена перезагрузка всех используемых сервисов при выполнении команды update
  • Добавлена проверка на недопустимые символы в вводе пароля для shadowsocks соединений
  • Изменена команда с dns hosts * на hosts *. Сделано это с целью удобства использования и запоминания.

1.1.7

  • Добавлена поддержка доменных имен в файле /opt/etc/hosts, что позволяет быстро добавлять собственные доменные имена для локальной сети и не только; При этом, данный список атоматически добавяется в конфигурацию одного из DNS серверов, установленных Квасом: dnsmasq или AdGuardHome.
  • Добавлена команда dns hosts, которая отображает список хостов и их IP добавленные Вами в /opt/etc/hosts
  • Добавлена команда dns hosts edit, которая позволяет редактировать список хостов и их IP в файле /opt/etc/hosts
  • Добавлена команда dns hosts add или dns hosts add , которая добавляет один хост в файл /opt/etc/hosts
  • Реализована возможность добавлять клиентов SSTP сетей для подключения к Квасу командой vpn net add.
  • Реализовано автоматическое обновление списка VPN интерфейсов, при их создании или удалении (кроме IPSpec)
  • Реализован механизм очистки правил iptables для интерфейсов PPTP и L2TP, через которые происходит подключение к провайдеру, с целью решить вопрос возобновление работы Кваса при обрыве соединения такого рода #issue.
  • Осуществлен переход на новый механизм ndm для отслеживания состояний интерфейсов - iflayerchanged.d (для прошивок >= 4.0), вместо предыдущего вариант - ifstatechanged.d(для прошивок < 4.0).
  • Исправлена ошибка при обновлении пакета AdGuardHome для роутеров с архитектурой процессора ARM (Keenetic KN-1811 и KN-2710) при исполнении команды adgurad update

1.1.6 stable-6

  • Произведена замена записи 'conf-file=/opt/etc/kvas.dnsmasq' на 'conf-dir=/opt/etc/dnsmasq.d/,*.dnsmasq', а сам файл kvas.dnsmasq перенесен в папку /opt/etc/dnsmasq.d/, с целью включения в работу dnsmasq любых файлов находящихся в папке /opt/etc/dnsmasq.d/
  • Добавлена возможность восстановления предыдущих гостевых сетей при обновлении пакета. Работает, только при обновлении текущего релиза.
  • Доработан механизм обновления пакета, теперь, в случае только обновления пакета, устанавливается предыдущий вариант vpn интерфейса без запроса его выбора. Работает, только при обновлении текущего релиза.
  • Окончательно отключены команды period, которые обновляли IP адреса доменны имен по cron-у. Вместо этого, используется адаптивный вариант регулярного сканирования адресов. Удалены упоминания в WIKI и в справке по команде.

1.1.6 stable-5

  • Доработан механизм связанный с "утечкой памяти" при работе с AdGuardHome.

1.1.6 stable-4

  • Доработан файл /opt/etc/init.d/S99adguardhome с целью улучшить диагностику запуска сервиса AdGuardHome. Теперь в случае ошибок при запуске сервиса выводятся строки с ошибками из лога запуска AdGuardHome.
  • Решен вопрос с "утечкой памяти" при работе с AdGuardHome, который происходил в следствии сбоя при работе DNS сервера.

1.1.6 stable-3

  • Данная версия по факту мало чем отличается от 1.1.5 final-34 и выпущена с целью подвести черту под всеми имеющимися исправлениями, как версия со стабильным и проверенным результатом.
  • Доработан код установки пакета dnscrypt-proxy2, при его отсутствии на устройстве, когда запускаем команду kvas adguard off, тикет #93. Спасибо за труды badigit
  • Изменен код получения локального IP роутера на более универсальный вариант, при котором маска в адресе может быть любой и состоит из 2 цифр
  • Доработан механизм добавления хоста в ipset список для AdGuardHome.
  • Доработан механизм добавления хоста/IP/сети. Сейчас при добавлении можно использовать третьим аргументом yes/no, чтобы сразу задавать необходимый режим добавления домена. Если 'yes/y/wild' - включаем режим wildcard, если 'import/no/n' - без режима wildcard. Например, kvas add domain.ru yes.
  • Появилась возможность добавлять из буфера обмена сразу ссылку на страницу, Квас позаботится и оставит от адреса только доменное имя: https://dom1.dom2.domain.com/art/ останется только dom1.dom2.domain.com .
  • Доработан механизм проверки наличия IP и сетей при исполнении команд kvas debug и kvas test. Ранее их поиск в таблице ipset не происходил, сейчас происходит.

1.1.5 final-33

  • В скрипт обновления пакета ipk/update.sh добавлена информация о версии удаляемого пакета.
  • В скрипте ipk/update.sh в режиме обновления пакета устанавливается прежний файл с хостами (ранее происходило слияние файла по умолчанию с предыдущими доменами из списка);
  • Исправлена ошибка при выводе на экран всех VPN интерфейсов в системе (тикет #74):
  • При ручной установке пакета, в случае наличия файла /opt/etc/kvas.list, данный файл не переписывается на файл kvas.list по умолчанию;
  • Исправлена ошибка при импорте хостов, приводившая к зависанию процедуры.
  • Доработан механизм обновления хостов в защищенный список.
  • При вводе неизвестной команды теперь выводится справка.
  • Теперь порядок включения AdGuard Home соответствует описанию в Wiki (тикет #69)
  • Доработан файл справки при выводе команды kvas help
  • Упрощена проверка статуса AGH.
  • Теперь, добавить клиентов серверной VPN сети можно командой kvas vpn net add. Теперь net стала эквивалентом guest (устарело).
  • Доработана функция добавления клиентов серверной VPN сети. В списке сетей теперь отображается VPN-сервер с поддержкой IKEv2.
  • В скрипт установки пакета добавлена функция удаления кеша, наличие которого приводило к установке старых версий при обновлении пакета.
  • Обновлен режим upgrade в пакете. Теперь, при запуске происходит проверка на версию и если не совпадают - обновляемся, если upgrade c параметром force - то обновляемся без оглядки на версию, если параметр full - удаляем пакет полностью
  • Исправлена ошибка приводившая к сбою нумерации в списке гостевых сетей в командах 'vpn net ...'
  • Доработан механизм добавления хоста в список. Добавление хоста происходит в списки ipset и в соответствущий DNS-сервер.
  • Доработан механизм добавления клиентов гостевых сетей. Добавлены правила PREROUTING для DNS.
  • Изменен адрес проверки работы Кваса на клиентах на более быстрый вариант: с 2ip.ru на myip2.ru
  • Исправлены ошибки при добавлении клиентов гостевых сетей.
  • Все функции запроса Да/Нет в пакете заменены на функцию с таймером, при завершении которого будет выбран ответ по умолчанию.
  • Доработана функция реакции на вопросы Y/N, теперь ответ принимается как с большой, так и с малой буквы.
  • Доработана функция обновления пакета при удалении кеша.
  • Исправлены ошибки в функции ip4_add_route_table, которая заботится о добавлении vpn сети в таблицу 1001
  • Исправлены ошибки в функциях ikev2_net_access_del и ikev2_net_access_add и переписана функция ip4_add_selected_guest_to_ssr_network
  • Внесены правки в код по тикету #53, которые улучшают логику работы с гостевой сетью ikev2
  • Внесены правки в код по тикету #92, которые правильно добавляют домены с тире внутри их имен.
  • Для вывода команды debug теперь можно использовать аргумент в виде имени файла, в который следует сохранить вывод команды.
  • Для adguard добавлен код, который проверяет точно ли локальный сервер добавлен в список прослушки на 53 порту, если нет, то добавляет его.
  • Добавлена команда adguard restart, для ручного перезапуска adguard (по просьбе badigit)
  • Доработана функция ip4_add_selected_guest_to_ssr_network по тикету #53
  • Сделаны доработки по коду согласно предложению в тикете #53. Отдельная благодарность ALTernateF13.

1.1.5 pre-release 4

  • В скрипт обновления пакета [ipk/update.sh] добавлены дополнительные проверки для корректной его работы.
  • Проведена работа над ошибками для блока блокировки рекламы adblock.
  • Доработан механизм проверки ipset таблицы при ssr соединении
  • Изменен механизм добавления гостевых сетей, чтобы избежать ошибок, сейчас все сети при добавлении/удалении выбираются только из списка!

1.1.5 pre-release 3

  • Исправления и доработки закрывают тикеты #69, #73, #74, #79, #82:
  • Исправлена проблема с поддержкой поддоменов (wildcard) для dnsmasq.
  • Исправлена проблема с остановкой работы обхода через VPN при добавлении и/или удалении доменого имени.
  • Доработана функция вывода информации о номере версии пакета.
  • В процедуру установки пакета добавлены опции Q-выход и S-повторное сканирование интерфейсов, а так же при нажатии на Q, останавливается dnsmasq и выводится инструкция по восстановлению интернета.
  • Исправлена ошибка возникающая при старте или перезагрузке AdguardHome сервиса, на шаге 'Очищаем все ранее созданные iptables правила для VPN'. Так же, исправлена ошибка определения статуса Adguard сервиса.
  • Теперь нет необходимости ставить * перед доменым именем. При добавлении Квас сделает запрос - добавлять ли поддомены или оставить как есть.
  • Обновлен код скрипта обновления пакета ipk/update.sh

1.1.5 pre-release 2

  • Исправление старых ошибок, указанных в issues.
  • Плюс доработка механизма добавления гостевых сетей для работы в тандеме с защищенным списком.

1.1.5 beta

  • В данной версии, для соединения ssr теперь не происходит переподключение интернета.
  • Добавлен скрипт, который проверяет работу VPN соединения и в случае, если соединение зависло - пытается восстановить его. Проводится трехразовая попытка восстановления VPN соединения - в случае неудачи, попытки прекращаются.
  • Исправлена ошибка при удалении хоста - поставлен фильтр на удаление записей ipset из файла конфигурации AGH только при его наличии (AGH) в системе.
  • Добавлен флаг upgrade для ручного обновления пакета до новой версии.

1.1.4

  • Доработана функция при обновлении правил, после которой происходил разрыв соединения тикет 48.
  • Доработана функция получения entware интерфейса по IP, из-за чего происходило неверное распознавание данных.
  • Доработана функция перезапуска основного ISP подключения - reset_ISP_connection.
  • Решена проблема #38. Команда rm теперь отвечает за удаление пакета (при удалении пакета, Вы должны подтвердить действие), а команда del - за удаление хоста из списка.
  • Решена проблема #40. Теперь, все данные доменных имен блока ipset заносятся в отдельный фейл /opt/etc/AdGuardHome/kvas.ipset, а в файле конфигурации AdGuardHome меняется только ссылка на этот файл в переменной ipset_file.
  • Решена проблема #52. Изменен порядок работы с гостевыми сетями. Команда bridge удалена, вместо нее теперь добавить и удалить гостевую сеть можно командой 'vpn guest add/rm'. Решение работает как для SSR, так и для VPN.
  • При установке пакета, происходит автоматическое обновление iptables (актуально для новой прошивки).
  • Для SSR соединений добавлен "костыль" в случае отказа загрузки ssr сервиса при загрузке роутера.
  • Решена проблема #68 с отключением шифрования при трафика при его проверке.
  • Попытка решить проблемы с отсутствием обхода при переподключением VPN (тикеты #45 и #73)
  • Доработан код функции по добавлению гостевых сетей (kvas vpn guest add all).
  • Добавлена возможность удалять пакет безусловно при помощи ключа "y|yes|да". Теперь можно удалить пакет
  • Добавлена возможность обновления пакета через скрипт командой curl -sOfL https://bit.ly/kvas_update && sh ./kvas_update

1.1.3

  • Доработана функция получения локального entware интерфейса по ip. Спасибо за помощь @Aleksandr Akimov.
  • Доработана функция импорта данных из файла. Теперь хосты со звездочкой впереди обрабатываются корректно.
  • Доработан механизм отображения списка в случае, если этот список пуст.

1.1.2

  • Отключено принудительное переподключение основного соединения при обновлении данных через cron [тикет от evgeny1503]
  • Снижен уровень логирования в журнал роутера, убраны излишние сообщения необходимые для отладки пакета.
  • Косметическая доработка кода. Замена имен файлов их кодовым эквивалентом.

1.1.1

  • Исправлена ошибка при добавлении и удалении диапазона IP-адресов из защищенного списка (тикет #32)
  • Реализована возможность добавления доменного имени с начальными 'http[s]://', которая порой требуется при добавлении домена из буфера обмена. При этом сам доменный суффикс 'http[s]://' подлежит отсечению.
  • Добавлены предупреждения, в случае запуска команд для работы с dnsmasq и dnscrypt-proxy с активированным AdGuardHome о том, что работает только один из вариантов, либо AdGuardHome, либо связка dnsmasq+dnscrypt-proxy

1.1

  • Косметические изменения в документации, теперь документацией по пакету можно ознакомиться по ссылке https://github.com/qzeleza/kvas/wiki
  • Доработан механизм обновления ssr соединения при редактировании его данных посредством команд kvas ssr *
  • Доработан механизм составления отчета об ошибке при подаче его через GitHub.

1.0. beta 22

  • Изменен механизм установки пакета - процесс настройки выделен в отдельную функцию. Добавлена новая команда kvas setup для первичной настройки пакета.
  • Изменен механизм удаления пакета - процесс удаления выделен в отдельную функцию. Добавлена новая команда kvas uninstall для удаления пакета и его архивных данных. Команда kvas uninstall full удаляет пакет вместе со всеми, установленными пакетами.
  • Изменен механизм установки пакета AdGuardHome. Теперь для установки пакета AdGuardHome, необходимо просто выполнить команду kvas adguard on. В случае отсутствия пакета - он будет установлен и обновлен до крайней версии автоматически.
  • Исправлена ошибка, которая приводила к тому, что при отсутствии архивной копии ssr настроек соединения не происходило запроса на новые настройки;
  • Осуществлен перенос нескольких глобальных переменных в общий файл конфигурации kvas.conf, с целью повысить стабильность работы пакета.
  • Внесены исправления в процесс инициализации и проверки соединения. Сейчас в случае проблем с интернетом происходит переподключение основного подключения к провайдеру.

1.0. beta 21

  • Доработаны правила срабатывания создания iptables правил в библиотеке ndm
  • Исправлена ошибка приводящая к обращению к службе dnsmasq при запущенном сервисе adguard (issues #17, #15)
  • Откатились на паузу в 1 сек. (как было в 19 бете) при сканировании интерфейсов и отображении их списка с целью корректного отображения названий интерфейсов.
  • Исправлена ошибка #22, приводящая к отсутствию запроса на ввод данных при выборе Shadowsocks соединения.
  • Добавлена новая команда kvas uninstall для удаления пакета и его архивных данных. Команда kvas uninstall full удаляет пакет вместе со всеми, установленными пакетами.

1.0. beta 20

  • При выполнении проверки kvas test теперь, в случае, если IP домен отсутствует в ipset таблице, осуществляется не просто ее перезаполнение, а выполняется полная переустановка правил заново функцией cmd_kvas_init, что повышает надежность восстановления списка и приведением его в норму.
  • Добавлена новая команда kvas adguard update, которая позволяет в ручном режиме обновлять версию пакета AdGuardHome в зависимости от Вашей платформы. Выражаю благодарность @avn за идею и сам скрипт.
  • В защищенный список по умолчанию добавлено несколько популярных доменов.
  • Добавлены новые команды kvas adblock add и kvas adblock del , которые оперируют со списком исключений и удаляют домены в этом списке из списка блокировки рекламы.
  • Добавлена команда для удаления обновления информации о доменных ip из cron: 'kvas period del|clear'
  • Исправлена ошибка приводящая к неверной работе установки периода обновления данных.
  • Переписан код скрипта ipset, добавлены сообщения в лог роутера и добавлен запуск скрипта в cron каждые 5 минут, для регулярного обновления IP адресов для доменных имен.
  • Оптимизирована функция установки/удаления iptables правил для shadowsocks соединений.
  • Исправлена ошибка возникающая при запуске обновления - переставал работать обход блокировок.
  • Доработан механизм обновления версии пакета AdGuardHome по команде kvas adguard update.

1.0. beta 19

  • Меняем в файле конфигурации AdGuard Home DNS его адрес, в случае если он равен 0.0.0.0. Это предотвращает зависание пакета при его установке (см. issue#9 ). '
  • Логирование в механизме прерываний ndm теперь производится только в случае ошибок, а не свершения каких либо действий.
  • Произведено обновление iptables правил для SHADOWSOCKS на более эффективные.
  • Создан новый файл /opt/apps/kvas/etc/config/excluded.net c именами локальных сетей, обращения к которым будет игнорироваться при запросах к SHADOSOCKS/VPN подключениям.
  • Полностью переработан механизм очистки установки правил iptables (кроме VPN правил для случая, когда программное и аппаратное ускорение ОТКЛЮЧЕНО)
  • Изменен порядок добавления хостов в защищенный список, в случае наличия домена в списке. Теперь происходит замена домена. Например, если в списке был домен test.com, а добавляем *test.com, то просто произойдет замена домена на *test.com.
  • Добавлен домен *fburl.com в защищенный список по умолчанию для работы сайта лицокнига.
  • Добавлена новая команда reset|init которая пересоздает все правила в случае сбоя или проблем с разблокировкой.
  • Введено новое правило при добавлении домена без звездочки - проверка на доступность домена осуществляться будет, а при синтаксисе добавляемого домена *domain.dom, проверка на доступность осуществляться не будет.
  • Добавлена возможность тестировать любой введенный домен при исполнении команды 'kvas dns test domain.com'. По умолчанию, тестируется домен facebook.com.
  • Дополнены файлы справки и документация по проекту.
  • Добавлены дополнительно к ключу 'help', ключи '-h' и '--h' для вызова справки.
  • Теперь, при добавлении любого из доменов в защищенный список, в случае подключенной опции блокирования рекламы, добавляемые доменные имена проходят проверку на наличие их в списке блокировки рекламы и в случае их наличия они удаляются от туда. Причем, если добавлен домен в виде *domain.com, то будут удалены все доменные имена с основанием domain.com, выше второго уровня, т.е. удалению подлежат, все имена от domain.com до dm5.dm4.dm3.domain.com и выше. Но удалению НЕ подлежат такие имена, которые не заканчиваются на domain.com, как например domain.com.ru.org.

1.0. beta 18

  • Исправлена ошибка при установке пакета в режиме установки dnsmaqs, когда установка пакета завершалась с ошибкой
  • Исправлена ошибка отсутствия вывода версии пакета kvas ver
  • Исправлена ошибка работы при исполнении команды kvas ssr port, сейчас выводит все правильно - версию порта.
  • Добавлена новая команда vpn rescan/scan принудительное сканирование интерфейсов роутера, в случае, появления нового подключения, например wireguard или openvpn.
  • Исправлена ошибка повторного создания правил маршрутизации и маркировки трафика VPN подключений
  • Изменен формат обработки журналирования в лог роутера при ошибках в процессе создания правил маркировки и маршрутизации
  • Добавлены тесты для функций создания правил маркировки и маршрутизации (файл ndm)
  • Обновлен порядок запуска пакета и созданы правила для очистки всех правил и таблиц при запуске (как для adguard, так и для dnsmasq)
  • Обновлены файлы справки по всем разделам
  • Внесены новые правила для маркировки VPN подключений, которые являются более эффективными, относительно предыдущих (благодарность @avn).
  • Ликвидирована проблема, приводившая к неверному определению подключения интерфейсов при их сканировании.
  • Ликвидирована проблема, приводившая к зависанию процесса установки пакета на заключительной стадии проверки работы пакета.
  • Изменен порядок установки пакета, теперь в первую очередь происходит выбор VPN интерфейса и затем все остальные действия.
  • Исправлена ошибка, которая приводила к обнулению списка блокировки рекламы при его сканировании (благодарю @Килелева Николая)

1.0. beta 17

  • Удалены строки с комментариями и пустые строки при выводе отладочной и тестовой информации из файлов конфигурации.
  • Исправленные ошибки при выборе shadowsocks подключения во время установки
  • Изменилось поведение при исполнении команды kvas без аргументов - вместо вывода справки, сейчас выводит БС (исполняет свое предназначение)
  • Внесены изменения в работу команды adguard off - сейчас Adguard отключается в принудительном порядке (ранее сначала проверялся по статусу)
  • Добавлена дополнительная проверка на наличие /opt/etc/kvas.dnsmasq при проверке работы dnsmasq
  • Добавлена возможность архивировать и восстанавливать настройки для dnscrypt-proxy2
  • Изменен принцип проверки работы службы AdGuardHome - ориентация на наличие запущенной службы и соответствующей записи в файле настроек Кваса

1.0 beta 16

  • доработан скрипт маркировки VPN трафика [100-vpn-mark], теперь скрипт автоматически определяет как ему маркировать трафик (с включенным или отключенным ускорением)
  • теперь команда kvas ssr port отображает текущий номер локального порта shadowsocks соединения
  • исправлена ошибка при установке локального порта по команде kvas ssr port
  • при использовании adguard и выводе команды kvas debug, секция ipset теперь выводится полностью
  • удален запрос на удаленную установку AdGuard Home для избежания последующих недоразумений.
  • устранена ошибка при повторном удалении AdGuard Home: 'sed: /opt/etc/AdGuardHome/AdGuardHome.yaml: No such file or directory'
  • изменена структура и наименования исполняемых файлов по функциональному признаку для удобочитаемости файлов проекта
  • добавлена возможность подключать гостевую сеть к VPN подключению, отличное от shadowsocks. Команда kvas vpn guest ent_network

1.0 beta 15

  • покрытие тестами составляет 27% (33/121)
  • доступна новая команда bridge выводит список доступных гостевых интерфейсов
  • исправлена ошибка, возникавшая при чтении данных из архива shadowsocks соединения
  • в скрипте kvas_ipset адрес 0.0.0.0 убран из добавления в таблицу ipset
  • доработан механизм установки AdGuard Home на локальное устройство
  • при запуске команды kvas dns, теперь выводится сервис-владелец DNS: dnsmasq, dnscrypt_proxy2, AdGuard Home
  • доработан скрипт kvas_adblock по обновлению списков рекламы в разрезе отработки различных ошибок.

1.0 beta 14

  • исправлена ошибка, которая приводила к невозможности запустить adguard после перезагрузки роутера.
  • исправлена ошибка восстановления из архивной копии shadowsocks, которая приводила к невозможности ввода новых данных
  • переписан код определения состояния AdGuard Home и код по его установке

1.0 beta 13

  • исправлена ошибка зависания при удалении пакета на стадии очистки правил iptables.
  • исправлена ошибка при зависании при установке пакета на стадии тестирования соединения.
  • переписан скрипт формирования списка ipset для AdGuard Home

1.0 beta 12

  • реализованы новые команды

    • 'bridge add all' - разрешаем доступ к VPN всем существующим гостевым сетям
    • 'bridge del all' - запрещаем доступ к VPN для всех гостевых сетей.
    • 'ssr new' - меняет настройки учетной записи shadowsocks сервера на другие настройки, в случае смены сервера или иных данных учетной записи
    • 'adguard on' - подключает использование AdGuard Home к КВАСу
    • 'adguard off' - отключает использование AdGuard Home в КВАСе
    • 'adguard test' - тестирует правила создания ipset для AdGuard Home
  • упразднены следующие команды - 'ssr set', вместо нее используйте 'vpn set' - 'dns adguard', вместо нее используйте 'adguard on' - 'ssr flush' за ненадобностью, вместо нее используйте 'ssr reset' - 'vpn flush' за ненадобностью, вместо нее используйте 'vpn reset'

  • обновлена справка по новым командам

  • возможность сохранения защищенного списка при обновлении/переустановке пакета

  • команда смены DNS сервера на AdGuard Home теперь работает как положено. AdGuard Home слушает 53 порт, а записи ipset формируются для него скриптом. При этом отключаются службы dnsmasq и dnscrypt_proxy2, так как AdGuard Home имеет полную замену всему их функционалу + WUI интерфейс.

  • в случае отсутствия AdGuard Home на роутере, теперь скрипт может его автоматически скачать.

  • полностью переписан скрипт сборки проекта с учетом нововведений выше.

  • добавлена проверка, при установке пакета, на включение IPv6 на интерфейсе для интернета В случае ее наличии - отключает.

  • оптимизирован код отвечающий за тесты и отладку пакета

  • в целях отладки ведется сбор данных при установке пакета в файл /opt/tmp/kvas.install.log

  • при удалении пакета, теперь очищаются все правила и таблицы, которые были созданы пакетом для своей работы

  • упразднено большинство вопросов при установке, все делается по умолчанию и в случае необходимости может быть отключено вручную соответствующими командами

  • внесены правки в код для проверки работоспособности пакета AdGuard Home в связке с КВАСом.

  • исправлены синтаксические ошибки.

  • теперь, исходный код пакета Вы сможете посмотреть по этой ссылке https://github.com/qzeleza/kvas.git