Jump to content

DennoN

Forum Members
  • Posts

    221
  • Joined

  • Last visited

  • Days Won

    5

Everything posted by DennoN

  1. Работает. На роутере и adg home и bird с таблицами. Связи между ними не должно быть. Скорее всего дело в чем то другом. Может шлюз не тот указан или доступ в сеть для этого интерфейса запрещён
  2. @dsolo https://github.com/DennoN-RUS/Bird4Static/blob/master/etc/cron.daily/add-bird4_routes.sh вот в этом файле закоментируй пятую и пятнадцатую строку вот так: все остальные файлы верни в изначальное состояние. Так же надо заполнить файл https://github.com/DennoN-RUS/Bird4Static/blob/master/etc/bird4-vpn.txt списком адресов или доменов, которые тебе надо пустить через впн. После этого запускай скрипт /opt/etc/cron.daily/add-bird4_routes.sh
  3. @vitalik6243 Лучше разобраться почему не работает перенаправление через основной интернет. Последние версии скриптов лежат тут https://github.com/DennoN-RUS/Bird4Static там даже автоустановка прикручена.
  4. Все настройки хранятся в /opt/etc/AdGuardHome Просто не нужно их удалять или бекап на всякий случай сделать
  5. И как тесты прошли? uvloop все-таки лучше?
  6. А если остановить адгуард, и вернуть родной днс, то точно все работает? Адрес белый или серый? Кстати, если пакет уже давно лежит в http://bin.entware.net/mipselsf-k3.4/test/ то может уже из теста его в общий репозиторий кинуть? Было бы удобно обновлять его просто opkg upgrade...
  7. идешь на http://192.168.0.1/a где 192.168.0.1 - адрес роутера вводишь opkg dns-override system configuration save далее в ssh идешь в конфиг адгуадра vi /opt/etc/AdGuardHome/AdGuardHome.yaml Находишь строку port: (не bind_port:, а именно port:) меняешь на port: 53 потом /opt/etc/init.d/S99adguardhome restart Все готово! теперь адгуард слушает запросы на 53 порту, так что все локальные клиенты идут к нему. А вообще тут можно гораздо проще все это поставить Уже есть готовые пакеты адгуарда Нужно всего-лишь в консоли выполнить opkg install http://bin.entware.net/mipssf-k3.4/test/adguardhome_0.102.0-1_mips-3.4.ipk /opt/etc/init.d/S99adguardhome start Вот и вся установка, вместо собирания пакета вручную. Но днс все равно надо будет отключать на роутере, как я описал выше
  8. Спасибо за инструкцию! Поставил правда не на роутер, а на NAS, в котором развернута entware, там памяти побольше будет) Пара замечаний: для работы rss надо выполнить: opkg install php7-mod-dom а для запуска задач в кроне надо написать */30 * * * * root php-cli /opt/share/www/tm/engine.php >> /opt/var/log/torrent_monitor_error.log 2>&1 а не */30 * * * * php-cli /opt/share/www/tm/engine.php >> /opt/var/log/torrent_monitor_error.log 2>&1 А то я понять не мог, что за пользователь такой php-cli и почему идет запуск не от рута. В остальном в связке NGINX SQLite PHP7 все отлично! Завелось с первого раза.
  9. Ага, отличная идея. Понял, переправлю. А по поводу грепа, в принципе одно и тоже получается. В моем варианте я еще пробовал предусмотрел момент, что будут писать 88.42.12.32 #описание что за адрес Поэтому добавил awk '{print $1}' перед всем этим безобразием. А сам запрос можно сократить, до '^([0-9]{1,3}\.){3}[0-9]{1,3}($|/[0-9]{1,2}$)' Согласен.
  10. А, так это ваш скрипт я взял как начальную идею по резолвингу доменов из файла. Наконец-то нашел оригинальный пост Говорю огромное спасибо, за идею чтения файла построчно и резолвинга каждой строки. Сам бы с нуля я долго бы мучался с реализацией.
  11. В итоге набросал такой скрипт: ~ # cat /opt/etc/init.d/S98mountSMB.sh #!/bin/sh if [ -z "$(lsmod | grep cifs)" ]; then insmod /lib/modules/$(uname -r)/cifs.ko fi if [ -z "$(mount | awk '/^\\\\192.168.10.5\\backups/')" ]; then mount \\\\192.168.10.5\\backups /opt/mnt/NAS -o username=user,password=password fi Если будут предложения получше, то я весь в внимании
  12. так. частично разобрался нужно выполнить: insmod /lib/modules/4.9-ndm-4/cifs.ko mount \\\\192.168.10.5\\backups /opt/mnt/ -o username=user1,password=userpass Но при перезагрузке роутера монтирование исчезает (тут надо поковырять fstab и я буду благодарен за подсказку, как его проверить без ребута роутера) А так же сам модуль cifs.ko не загружается сам, нужно каждый раз выполнять команду. Можно было бы его запускать при старте роутера, но путь может поменяться и вообще это плохая идея. Есть варианты, как загружать модуль автоматически? Список модулей для загрузки лежит в /etc/modules.autoload Но файл только на чтение, добавить туда cifs я не могу
  13. vi /opt/etc/ndm/ifstatechanged.d/010-add_antizapret_route.sh сам скрипт: #!/bin/sh [ "$1" == "hook" ] || exit [ "$id" == "L2TP0" ] || exit case ${change}-${connected}-${link}-${up} in link-no-down-down) ip rule del table 1000 /opt/etc/init.d/S04bird1-ipv4 stop ;; link-yes-up-up) #НИЖЕ ИДЕТ ПРОВЕРКА if [ -z "$(ip rule | grep 1000)" ]; then ip rule add table 1000 fi /opt/etc/init.d/S04bird1-ipv4 start ;; esac по поводу резолва, отредактировал скрипт #!/bin/sh cut_local() { grep -vE 'localhost|^0\.|^127\.|^10\.|^172\.16\.|^192\.168\.|^::|^fc..:|^fd..:|^fe..:' } cat $1 | awk '{print $1}' | awk '/^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$/' | sed 's/^/route /' | sed 's/$/\/32 via "'$2'";/' >> $3 cat $1 | awk '{print $1}' | awk '/^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\/[0-9]{1,2}$/' | sed 's/^/route /' | sed 's/$/ via "'$2'";/' >> $3 echo 1 until ADDRS=$(dig +short google.com @localhost -p 5533) && [ -n "$ADDRS" ] > /dev/null 2>&1; do sleep 5; done echo 2 .... запустил скрипт /opt/etc/cron.daily/add-bird4_routes.sh скрипт вывел цифру 1 и завис. Ждал 5 минут. Потом открыл вторую сессию ssh, отредактировал dnsmasq и повесил его на порт 5533, перезапустил днс и скрипт, который висел все это время вывел цифру 2 Да и сам скрипт резолва изначально запускается по крону в 4 ночи. Так что он не должен выполняться при запуске роутера. Сейчас добавил его в скрипт, который запускается, когда ВПН поднялся, но это тоже происходит не сразу после запуска роутера.
  14. в файле addip.sh есть строка с ожиданием резолва google.com until ADDRS=$(dig +short google.com @localhost -p 53) && [ -n "$ADDRS" ] > /dev/null 2>&1; do sleep 5; done По поводу правила. Вы про какой скрипт? Если тот, который мониторит впн соединение, то там есть проверка на то, что бы не добавлять правило, если оно уже есть... На гитхабе обновление https://github.com/DennoN-RUS/Bird4Static сделал автоинсталяшку (кривую немного), добавил описание.
  15. Добрый день! Пытаюсь подключить расшаренную папку с НАСа к роутеру. Пробовал так: mount -t cifs //192.168.10.5/backups/ /opt/mnt/ -o username=user1,password=userpass получаю вывод failed: No such device Как подключить папку?
  16. ~ # dig A +short onlainfilm.co @localhost -p 53 | grep -Eo '([0-9]{1,3}\.){3}[0-9]{1,3}' | awk '{print "route "$1"/32 via \"ppp0\";"}' route 34.196.125.115/32 via "ppp0"; route 3.231.242.12/32 via "ppp0"; route 50.19.199.106/32 via "ppp0"; route 52.87.80.196/32 via "ppp0"; ~ # dig A +short 4pda2.ru @localhost -p 53 | grep -Eo '([0-9]{1,3}\.){3}[0-9]{1,3}' | awk '{print "route "$1"/32 via \"ppp0\";"}' ~ # dig A +short google.com @localhost -p 53 | grep -Eo '([0-9]{1,3}\.){3}[0-9]{1,3}' | awk '{print "route "$1"/32 via \"ppp0\";"}' route 108.177.14.139/32 via "ppp0"; route 108.177.14.102/32 via "ppp0"; route 108.177.14.101/32 via "ppp0"; route 108.177.14.138/32 via "ppp0"; route 108.177.14.100/32 via "ppp0"; route 108.177.14.113/32 via "ppp0"; ~ # Вообще я внес кое какие правки. Оказалось, что часть IP адресов (если после адреса стоит #комментарий) попадает в резолвинг. Ничего не происходит, они просто не отвечают, как несуществующий домен, так же как и 4pda2.ru в моем примере. Тут я свои старые сообщения редактировать не могу, так что создал "проект" на гитхабе https://github.com/DennoN-RUS/Bird4Static сам файл с правками https://github.com/DennoN-RUS/Bird4Static/blob/master/root/addip.sh Так же упрощается установка самих скриптов. opkg install git bird4 cron git clone https://github.com/DennoN-RUS/Bird4Static.git chmod +x Bird4Static/root/addip.sh chmod +x Bird4Static/etc/ndm/ifstatechanged.d/010-add_antizapret_route.sh chmod +x Bird4Static/etc/cron.daily/add-bird4_routes.sh cp -rf Bird4Static/etc/ /opt/ cp -rf Bird4Static/root/ /opt/ Остается править конфиги и можно запускать.
  17. Проверяли У меня все ок, строки без адреса не добавляются. Там греп отфильтровывает. Но конкретно эта строка не моя. Изначально скрипт был на форуме, но мне его просто скинули, так что кто автор я не знаю) dig A +short $line @localhost -p 53 | grep -Eo '([0-9]{1,3}\.){3}[0-9]{1,3}' Может конечно еще можно как-нибудь изуродовать файл с входными данными, но у меня идеи закончились. Базовую "защиту от дурака" я вроде бы сделал. Ну а если есть желание все поломать, то тут уже никакая защита не поможет 😁 По поводу крона, изначально я для себя сделал не 3 инклюда, а 5. в двух файлах указывал ip адреса для впн и исп, в два другие попадали адреса от доменов + общий от антифильтра. Но по итогу объединил все в одно. Не стал заморачиваться и решил пусть весь файл сразу читает и не проверяет, что уже было в нем, что нет. А так-то решение, которое я здесь выложил написано именно для моих нужд. То есть грузим весь список и добавляем пользовательские правила. Если кто-то не захочет грузить весь список, а использовать только свои адреса, то придется чуть чуть подправить крон комментированием строк curl $URL0 | sed 's/^/route /' | sed 's/$/ via "'$VPN'";/' > $ROUTE /opt/root/addip.sh $ISPTXT $ISP $ISPLST и из конфига bird убрать это include "/opt/etc/bird4-routes.list"; include "/opt/etc/bird4-isp.list";
  18. Нет, для меня первоисточником был https://keenetic-gi.ga/2019/01/22/bgp_routing.html Что можно через инклюд делать это я в мануале по берду углядел. По поводу оnслеживания впн, тут хорошо, если список не обобщенный. А если он с масками 24, 19 и тд, то часть ресурсов при падении впн просто перестанет открываться, хотя они через провайдера открываются нормально. А тут таблица грохается и маршруты идут просто через провайдера. Вот про killall -s SIGHUP bird4 спасибо, не знал, что так можно. Вот скрипт резолвинга доменов изначально был не мой, но в итоге он него осталось всего пара строк) Ну и к плюсу моего решения можно тупо не скачивать весь список, а добавить только необходимые домены/адреса и будет работать.
  19. Этот пост о старой версии, сейчас (25.03.2022) это уже не актуально, так как используются новые версии скриптов, и то что ниже не подходит к актуальной версии
  20. Изначально у меня была схема с BGP, настроенная по инструкции https://pimpmykeenetic.github.io/2019/01/22/bgp_routing.html Но потом она перестала работать, да и соединение по протоколу wireguard я так и не осилил как добавить в схему работы с BGP В итоге решил настроить через статические маршруты, через тот же самый bird4 После нескольких изменений в итоге проект был выложен в гит https://github.com/DennoN-RUS/Bird4Static/ А после некоторых изысканий и большего понимания что и как работает, появились и bgp и поддержка wireguard и прочее Установка: Обновление: Удаление: Возможные проблемы: ВАЖНО: Данные маршруты сработают только для Основного профиля (В веб интерфейса кинетика это Интернет - Приоритеты подключений - Основной профиль). Для всех других профилей будет использована маршрутизация в том виде, в котором у них задан приоритет в настройках этого профиля Назначение файлов: Bird4Static/lists/user-isp.list - для перенаправления трафика через провайдера Bird4Static/lists/user-vpn.list - для перенаправления трафика через VPN (в случае использования двух впн маршруты будут добавлены для обоих) Bird4Static/lists/user-vpn1.list и Bird4Static/lists/user-vpn2.list - появляется только при использовании двух впн, указывает к какому адресу идти с определенного впн (по умолчанию 2ip.ru отрывается через первый, yoip.ru через второй) Схема работы: Спасибо всем, кто давал идеи об оптимизации команд! Один бы я такое не осилил. Как поставить удобный вэб интерфейс - описано ТУТ (спасибо @nnm) Как скрыть траффик wg под shadowsocks - описано ТУТ 07.02.2023 - обновление 3.6.0, добавлен BGP режим, переделана логика работы bird, подробнее тут 08.02.2023 - 3.6.1 фикс скрипта установки, для определения id роутера для конфигов bird тут 18.02.2023 - 3.7.0 правки в логике установки и прочие мелкие улучшения тут 13.06.2023 - 3.8.0 bird1-ipv4 заменен на bird2, подробнее тут 14.06.2023 - 3.8.1 фикс скрипта установки, теперь номер версии обновляется, а не берется старый Остальной список изменений в кратком виде: Полный список изменений здесь
  21. У кого сейчас настроен bgp по той статье? У меня все работало, а сегодня заметил, что маршруты от сервера не получаю. Это у меня косяк? Или у них с сервером что-то?
  22. Видимо я не ясно выразился. Есть сайт https://dnscrypt.info Смотрим сервер циски: sdns://AQEAAAAAAAAADDIwOC42Ny4yMjAuMiC3NRFAIG8iXT4r2CLX_WkeocM8yNZmjQy-BL-rykP7eRsyLmRuc2NyeXB0LWNlcnQub3BlbmRucy5jb20 Далее смотрим сервер яндекса. sdns://AQQAAAAAAAAAEDc3Ljg4LjguNzg6MTUzNTMg04TAccn3RmKvKszVe13MlxTUB7atNgHhrtwG1W1JYyciMi5kbnNjcnlwdC1jZXJ0LmJyb3dzZXIueWFuZGV4Lm5ldA У вас в конфиге таких серверов нет. Ну ладно, не беда, на сайте есть калькулятор https://dnscrypt.info/stamps Его адрес и имя провайдера есть на https://kb.adguard.com/ru/general/dns-providers#yandex-dns 77.88.8.78:15353 2.dnscrypt-cert.browser.yandex.net подставляем эти данные и получаем sdns://AQcAAAAAAAAAEDc3Ljg4LjguNzg6MTUzNTMAIjIuZG5zY3J5cHQtY2VydC5icm93c2VyLnlhbmRleC5uZXQ Тоже самое проделываем с циской https://kb.adguard.com/ru/general/dns-providers#cisco-opendns 208.67.220.220 2.dnscrypt-cert.opendns.com Получаем sdns://AQcAAAAAAAAADjIwOC42Ny4yMjAuMjIwABsyLmRuc2NyeXB0LWNlcnQub3BlbmRucy5jb20 у вас в конфиге тоже такого нет. Так как о существовании такой фишки как DNS stamps я узнал только на днях, а вы, судя по всему начали их использовать аж в 2018 То у меня и вопрос, откуда вы брали вот эти сервера. Вопрос не с претензией, а с целью узнать чуть больше. Возможно я вообще не то смотрел и не правильно пользовался калькулятором.
  23. Вбивал эти tls://8.8.8.8 tls://8.8.4.4 tls://1.1.1.1 tls://1.0.0.1 После применения настроек буквально через секунд 10-20 процесс адгурада начинает выжирать 60-90 процентов процессора. А потом даже клиентам перестает резолвить имена и сам процесс командой stop не останавливается. Только kill После того как удаляю эти сервера из конфига, жор пропадает. Только что проверил еще раз. А можно поподробнее про DNS Stamps? Откуда вы их взяли? Нашел калькулятор какой-то, подставляю сервера яндекса и циски, а записи получаются совсем другие
×
×
  • Create New...