Jump to content

Сергей Грищенко

Forum Members
  • Posts

    40
  • Joined

  • Last visited

Posts posted by Сергей Грищенко

  1. В 08.04.2024 в 21:14, Drafted сказал:
    vi /etc/ndm/netfilter.d/010-bypass-table.sh

    Тут вот ошибка мелкая, нужно /opt/etc/ndm/netfilter.d/010-bypass-table.sh

    А так огромное вам спасибо, ошибок в журнале больше нет, установил тоже на внутрянку памяти. По скорости работы разницы не заметил, возможно потому что роутер другой. Но однозначно рекомендую ваше решение 👍

    • Thanks 1
  2. 1 час назад, keenet07 сказал:

    А зачем вы всякую ерунду туда вводите?

    Статический маршрут до сети позволяет настроить правило маршрутизации трафика для диапазона IP адресов заданных маской подсети через выбранный интерфейс. Как вам выше показали. С DNS это не связано. К примеру вы нашли где-то/выяснили на каких IP адресах хостится определенный сайт или несколько и хотите чтобы трафик на них шёл через выбранный VPN. 

    Не нужно никакой адрес шлюза указывать. Достаточно интерфейса.

    Это будет работать когда ваш VPN подключен.

    Спасибо! 

    Если кто будет тупить так же как и я, то вот пример рабочих настроек

    image.thumb.png.8aa4f6a0f96b0f6e37f73343b9bf3a09.png

  3. 10 часов назад, Drafted сказал:

    Кстати, диапазон или конкретный IP для роутинга в нужный интерфейс можно указать в UI, через панель Статические маршруты. Вот например 111.111.111.X

    Не выходит :(, по какой логике добавлять?

    chrome_qklj8geqNm.png

    chrome_v2cIzWpql1.png

  4. @Александр Рыжов здравствуйте! Подскажите пожалуйста, как можно сделать, что бы можно было указывать диапазон IP адресов?

    Я предположил, что раз не выходит в штатный-интернет фильтр, то нужно создать свой txt файл, с указанием диапазонов IP адресов, а дальше добавлять проверку в 

    [ "$type" == "ip6tables" ] && exit
    [ "$table" != "mangle" ] && exit
    [ -z "$(ip link list | grep $VPN_NAME)" ] && exit
    [ -z "$(ipset --quiet list bypass)" ] && exit

    Верно ли я мыслю? 

    Если подскажете как доработать, буду очень благодарен)

    P.S. нужно для приложений, которые редко используют домены и чаще IP адреса, например тот же телеграм

  5. 13 часа назад, Drafted сказал:

    2. При попытке использовать прошивочный DoT/DOH резолвер в логах спамятся ошибки:

    При использовании DoT (127.0.0.1:40500 -> CloudFlare 1.1.1.1):

    Мар 11 19:21:20 stubby
    Could not get qname from query: A helper function for dicts had a name argument that for a name that is not in the dict.

    При использовании DoH (127.0.0.1:40508 -> CloudFlare https://cloudflare-dns.com/dns-query)

    Мар 11 19:05:21 https-dns-proxy
    0000: 0000: 49 6e 76 61 6c 69 64 20 71 75 65 72 79 2e Invalid query.

    При этом вроде все работает, странно. 

    Да, у меня в логах точно так же.

  6. 28 минут назад, keenet07 сказал:

    Домены для резолва прописаны в прошивочном окружении/интерфейсе. IPSET-DNS резолвит их прописанным в своем конфиге DNS. Который при подключенном VPN также маршрутизируется через него. Т.е. утечки быть не должно. Если только он не резолвит их ещё и тогда когда не поднят VPN (временно отключен или недоступен), т.е. через провайдера. Вот тогда в таблицу могут попасть не верные/перехваченные значения ip адресов для некоторых доменов. И соответственно ресурс открываться будет либо через раз, либо совсем не будет, в зависимости от количества этих адресов на одном домене.

    Видимо да, во всяком случае могу точно подтвердить, что мой метод сработал и помог решить проблему.

  7. 4 минуты назад, keenet07 сказал:

    А кто у вас его перехватывает? ДНС запросы ведь по умолчанию в этом решение идут внутри ВПН.

    Запрос ДНС идёт в ipset-dns. DNS прописан в /opt/etc/bypass.conf. Если делать обычный прямой конфиг wireguard клиент телефон -> wireguard сервер, то тогда да, ДНС будет внутри VPN. В случае с решением от ТС это так не работает, иначе роутеру не будут видны адреса и он не будет понимать какие нужно гнать под ВПН, а какие нет.

     

  8. С сегодняшнего дня у меня начали перехватывать DNS (информация выше) и перестал работать VPN. Если вы столкнулись с этим, проверить можно очень легко, добавляем в обход 2ip.ru и смотрим, если его обойти удалось, а остальные сайт нет, значит вероятнее всего вы столкнулись с этим тоже или сделайте трассеровку, как я постом выше.

    Как обойти перехват DNS для данного решения, чтобы VPN вновь работал:

    1. Устанавливаем и настраиваем по инструкции DOH и DOT. Список доступных DOH и DOT тут.

    2. Заходим в консоль порт 222, смотрим под какими портами у нас DOH и DOT, вводим команду

    ~ # cat /tmp/ndnproxymain.stat

    Total incoming requests: 19
    Proxy requests sent:     19
    Cache hits ratio:        0.000 (0)
    Memory usage:            20.75K
    
    DNS Servers
    
                          Ip   Port  R.Sent  A.Rcvd  NX.Rcvd  Med.Resp  Avg.Resp  Rank  
                 192.168.1.1   5354       0       0        0       0ms       0ms     2  
                 192.168.1.1   5353       0       0        0       0ms       0ms     4  
                   127.0.0.1  40500       0       0        0       0ms       0ms     5  
                   127.0.0.1  40501       1       1        0      78ms      78ms     4  
                   127.0.0.1  40502       0       0        0       0ms       0ms     3  
                   127.0.0.1  40503       0       0        0       0ms       0ms     2  
                   127.0.0.1  40508       0       0        0       0ms       0ms     3  
                   127.0.0.1  40509      18      18        0      10ms      20ms    10  

    Всё что с портами 40500-405++ как раз doh или dot. Запоминаем любой порт.

    3. Меняем DNS в ipset-dns

    ~ # nano /opt/etc/bypass.conf

    DNS=127.0.0.1:40509

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

    Дополнительно, как выбрать наиболее быстрый DOH и DOT. Меняем только порт, проверяем какой будет быстрее.

    while true; do dig google.com @127.0.0.1 -p 40509 | grep time; sleep 1; done

    P.S. DOH и DOT можно настроить на весь трафик, я так делать не стал, сделал только для обхода. Смотрите скрин.

    chrome_XlBISLsyi0.png

  9. В 20.02.2024 в 22:43, soldout5918 . сказал:

    Прошу помощи. Просто перестало работать... Несколько дней твиттер и инста просто плохо грузили картинки. Приходилось обновлять несколько раз, прежде чем прогружалось. Фейсбук перестал открываться вообще. Решил перезагрузить роутер, теперь не открывается тупо ничего кроме рутрекера. Причём он работает так, будто блокировка снята) Пробовал прописывать вместо 8.8.8.8 1.1.1.1, как тут советовали ранее - не помогает. Куда копать?

    Тоже столкнулся с этим, простая проверка через трассировку показывает следующее:

    Цитата

      9     *       71 ms     *     10.73.249.66
     10    71 ms    71 ms    71 ms  fra-fr5-sbb1-nc5.de.eu [91.121.215.116]
     11    90 ms    90 ms    90 ms  be103.waw-wa2-sbb1-nc5.pl.eu [213.251.128.114]
     12    90 ms    90 ms    90 ms  10.200.0.83
     13   122 ms   134 ms   128 ms  msk-ix.ertelecom.ru [195.208.209.132]
     14   149 ms   143 ms   134 ms  188x186x145x2.static.cc-perm.ertelecom.ru [188.186.145.2]
     15   140 ms   138 ms   140 ms  188x186x145x1.static.cc-perm.ertelecom.ru [188.186.145.1]

    думал может днс как то перехватывают, подключение dot и doh не помогло. Странно что не работает именно на роутере, напрямую подключение телефона и сервера через wg всё ок.

  10. Помогите советом), пытаюсь настроить следующую цепочку:

    устройства -> роутер -> выход в интернет с обходом заблокированных сайтов.

    • Белый IP есть;
    • Локальный доступ сделать получилось, есть доступ к админке;
    • «ipset-dns для выборочного роутинга» уже успешно работает на роутере.

    Но не выходит сделать выход в интернет. Делал всё как в статье «Доступ в Интернет через WireGuard-туннель», однако после команды

    interface Wireguard0 security-level private

    перестает работать обход заблокированных сайтов. 

    А после того как я меняю приоритет подключений как в инструкции

    вовсе пропадает интернет везде. Тут я предполагаю я не верно настраиваю маршрутизацию, хотя делал как в инструкции

  11. Вообщем написал в поддержку, попросил увеличить количество записей (сейчас ограничено 64), дали ответ:

    Цитата

     

    Здравствуйте.

    Принципиальных возражений против такого увеличения не возникло. Создал задачу для разработчиков NDM-3077, чтобы увеличить число записей. Пожалуйста, ожидайте.

     

    Надеюсь увеличат и тогда не нужно будет ничего менять 👍

    • Upvote 2
  12. 22 минуты назад, Александр Рыжов сказал:

    Вот в этом всё дело. Придётся отказаться от прошивочного сервиса с его плюшками.

    А от каких именно плюшек придётся отказаться? Для меня самый плюс вашего решения в его лёгкости и том что он "на лету" ловит новые IP адреса с сайтов) 

  13. В 17.12.2023 в 11:04, keenet07 сказал:

    Если только просить разрабов увеличить это число до 128. Если немного не хватает.

    Мне бы этого хватило, запрос в поддержку отправил, но скорее всего этого не сделают)

    В 17.12.2023 в 10:35, Александр Рыжов сказал:

    Никак, это решение для точечного обхода. На первой странице темы можно найти детали обсуждения.

    Мне и нужно для точечного обхода, просто список больше чем 64. Можно ли это решить с помощью DNSMasq?

    Помогите пожалуйста, как это сделать с помощью DNSMasq, вот как я вижу:

    1. Установить 

    opkg install dnsmasq-full

    2. Настроить конфиг

    cat /dev/null > /opt/etc/dnsmasq.conf
    mcedit /opt/etc/dnsmasq.conf
    user=nobody
    bogus-priv
    no-negcache
    clear-on-reload
    bind-dynamic
    listen-address=192.168.0.1
    listen-address=127.0.0.1
    min-port=4096
    cache-size=1536
    expand-hosts
    log-async

    3. Отключить штатный DNS кинетика 

    opkg dns-override
    system configuration save
    system reboot

    И если я не написал бред, то в dnsmasq.conf добавлять уже свой список:

    address=/yandex.ru/192.168.1.1:5353

    ?

  14. 12 часа назад, ok5id сказал:

    Изменение списка доменов не применяется налету нужно перезагрузить роутер прошивка 4.0.7. Есть способ исправить?

    Не заметил такой проблемы.

    У меня работают два wg подключения, для разных стран и оба прекрасно работают.

    image.thumb.png.a44cceb90fafda6072162701f3bf7ce2.png

  15. 13 минуты назад, V.A.S.t сказал:

    Что то я не пойму... Добавил rutracker.org и instagram.com. Рутрекер в браузере открывается, инстаграм - нет (нет ответа). При этом трейс идет как положено через ВПН и там и там. ЧЯДНТ?

    Сделайте tracert instagram.com в cmd

  16. Спасибо за решение! Установил, работает. 

    Можете подсказать, почему может не работать на iphone? На андроиде и ПК всё ок. Я пока добавил два сайта для теста, 2ip.ru и www.dw.ru, и www.dw.ru не хочет работать на iphone.

    Скрытый текст

    chrome_2TU0i1aNY3.png

    photo_2023-11-29_08-44-21.jpg

     

    • Thanks 1
  17. Во всех инструкциях по выборочному роутингу предлагают создать txt файл с нужным списком для себя доменов, которые должны работать. Будь то обход через VPN или TOR. Проблема в том, что у домена может быть множество IP адресов и даже перезапуск каждые 5 минут скрипта может не помогать.

    Вот пример такого домена www.dw.com, а вот его IP адреса

    Скрытый текст

    104.102.41.203
    104.103.89.204
    104.79.31.150
    104.83.106.244
    104.96.144.12
    23.197.146.18
    23.210.121.236
    23.214.234.40
    23.214.31.90
    23.50.97.31
    23.51.74.24
    23.54.132.149
    88.221.63.244
    92.122.63.61

    Я для себя решил это так, сделал универсальный скрипт, который в теории должен подойти для большинства обходов, он проверяет IP адрес и сохраняет его, попутно удаляя дубли. 

    Установка:

    # opkg update
    # opkg install nano bind-dig cron
    # nano /opt/etc/get_all_ip.sh

    Сам скрипт. Поменяйте в нём путь до вашего файла со списком доменов, у меня это /opt/etc/unblock-vpn.txt

    #!/bin/sh
    
    cut_local() {
      grep -vE 'localhost|^0\.|^127\.|^10\.|^172\.16\.|^192\.168\.|^::|^fc..:|^fd..:|^fe..:'
    }
    
    while read line || [ -n "$line" ]; do
       [ -z "$line" ] && continue
       [ "${line:0:1}" = "#" ] && continue
    
       # echo "$line","domain_name" >> /opt/etc/unblock-vpn.txt
       rowcnt=$(dig A +short $line | grep -Eo '^([0-9]{1,3}\.){3}[0-9]{1,3}$' | cut_local | awk '{if(system("echo "$1" >> /opt/etc/unblock-vpn.txt") == 0) {print $1}}' | wc -l)
    done < /opt/etc/get_all_ip.txt
    
    # удаляем одинаковые IP адреса
    awk '!a[$0]++' /opt/etc/unblock-vpn.txt > tmp
    mv tmp /opt/etc/unblock-vpn.txt

    Даём права

    # chmod +x /opt/bin/get_all_ip.sh

    Создаем список доменов, без IP адресов

    # nano /opt/etc/get_all_ip.txt

    И я рекомендую удалить из вашего списка доменов (у меня это /opt/etc/unblock-vpn.txt) все домены, оставив только IP адреса если они были.

    Добавляем в cron

    # ln -s /opt/bin/get_all_ip.sh /opt/etc/cron.hourly/01get_all_ip

    Каждый час скрипт будет проверять IP адреса из списка доменов /opt/etc/get_all_ip.txt, добавляя в ваш файл /opt/etc/unblock-vpn.txt и удалять одинаковые IP адреса.

    Возможно есть другие варианты? Буду рад вашему совету или доработке) 

  18. (config-comp)> components install cloudcontrol
    Core::Configurator error[1179653]: components install: EULA not accepted [cli].
    E [Nov 13 18:36:26] ndm: Http::Nginx: there are errors in config, reconfigure.
    E [Nov 13 18:36:26] ndm: Http::Manager: unable to update configuration, retry.
    E [Nov 13 18:36:27] ndm: Http::Nginx: there are errors in config, reconfigure.
    E [Nov 13 18:36:27] ndm: Http::Manager: unable to update configuration, retry.

    Вот лог

    7 часов назад, admin сказал:

    Проблема временно лечится установкой компонента cloudcontrol (клиент мобильного приложения). Режим public можно не включать, достаточно просто установить.

    Задачу создали, будет исправлено в ближайшем выпуске Alph

    Можете подробнее рассказать как восстановить доступ? Сброс до заводских не помогает.

     

     

  19. 22 minutes ago, TheBB said:

    Остаётся "хвост" - "dropbear.pid". Сбой ФС, некорректное размонтирование, питание (отключение, скачки напряжения, ...), ...

    
    . /opt/etc/profile

    ^служит для обновления рабочего окружения (в моём случае - "PATH")

    
    / # echo $PATH
    /bin:/sbin:/usr/bin:/usr/sbin
    / #
    / # ls -al /opt/var/run/
    /opt/bin/sh: ls: not found
    / #

     

    Спасибо вам за помощь!

    Проблему смог решить следующим способом:

    запустил вручную /opt/sbin/dropbear -p 222 -P /opt/var/run/dropbear.pid и дал права cmod 777 на все файлы в папке ls -al /opt/var/run/

  20. 4 minutes ago, TheBB said:

    проверяйте сервис, проверяйте pid

    если сервиса нет в процессах, а pid-файл остался - удаляйте pid и стартуйте сервис... вариантов поломки, как и вариантов решения - много.

     

    Login: admin
    Password: *************
    
    THIS SOFTWARE IS A SUBJECT OF KEENETIC LIMITED END-USER LICENCE AGREEMENT. BY USING IT YOU AGREE ON TERMS AND
    CONDITIONS HEREOF. FOR MORE INFORMATION PLEASE CHECK https://keenetic.com/legal
    
    (config)> exec /opt/bin/sh
    
    
    BusyBox v1.31.0 () built-in shell (ash)
    
    / # ls -al /opt/var/run/
    drwxr-xr-x    2 root     root          4096 Feb 20 06:17 .
    drwxrwxrwx    8 root     root          4096 Feb 19 19:15 ..
    -rw-r--r--    1 root     root             5 Feb 20 06:16 cron.pid
    -rw-r--r--    1 nobody   nobody           5 Feb 20 06:17 dnsmasq.pid
    -rw-r--r--    1 root     root             0 Feb 19 19:15 dropbear.pid
    -rw-r--r--    1 root     root             5 Feb 20 06:17 tor.pid
    / # . /opt/etc/profile 
    / # ls -al /opt/var/run/
    drwxr-xr-x    2 root     root          4096 Feb 20 06:17 .
    drwxrwxrwx    8 root     root          4096 Feb 19 19:15 ..
    -rw-r--r--    1 root     root             5 Feb 20 06:16 cron.pid
    -rw-r--r--    1 nobody   nobody           5 Feb 20 06:17 dnsmasq.pid
    -rw-r--r--    1 root     root             0 Feb 19 19:15 dropbear.pid
    -rw-r--r--    1 root     root             5 Feb 20 06:17 tor.pid
    / # ps | grep -v grep | grep drop
      585 root      1616 S    /usr/sbin/dropbear                                                                      
    / # 

    запустил вруную и смог войти. 

    / # /opt/sbin/dropbear -p 222 -P /opt/var/run/dropbear.pid
    / # ps | grep -v grep | grep drop
      585 root      1616 S    /usr/sbin/dropbear                                                                      
    15610 root      2724 S    /opt/sbin/dropbear -p 222 -P /opt/var/run/dropbear.pid

    Но почему он не стартует после рестарта и как починить это?

  21. 1 hour ago, TheBB said:

    дальше починяйте то, что сломалось. start, restart, pid, и т.д.

    Вошел, правда дальше моих знаний не хватает в понятии причины :( 

    Last login: Thu Feb 20 10:34:40 on ttys000
    admin@MacBook-Pro-admin-3 ~ % telnet 192.168.1.1
    Trying 192.168.1.1...
    Connected to 192.168.1.1.
    Escape character is '^]'.
    KeeneticOS version 3.03.C.10.0-0, copyright (c) 2010-2019 Keenetic Ltd.
    
    Login: admin
    Password: *************
    
    THIS SOFTWARE IS A SUBJECT OF KEENETIC LIMITED END-USER LICENCE AGREEMENT. BY
    USING IT YOU AGREE ON TERMS AND CONDITIONS HEREOF. FOR MORE INFORMATION PLEASE
    CHECK https://keenetic.com/legal
    
    (config)> exec /opt/bin/sh
    
    
    BusyBox v1.31.0 () built-in shell (ash)
    
    / # echo $PATH
    /opt/bin:/opt/sbin:/opt/usr/bin:/opt/usr/sbin:/bin:/sbin:/usr/bin:/usr/sbin
    / # . /opt/etc/profile 
    / # echo $PATH
    /opt/sbin:/opt/bin:/opt/usr/sbin:/opt/usr/bin:/usr/sbin:/usr/bin:/sbin:/bin
    / # 
    
    / # ls -l
    drwxr-xr-x    2 root     root           205 Feb 19 20:01 bin
    drwxrwxrwt    8 root     root          2360 Feb 20 05:54 dev
    drwxr-xr-x    6 root     root           526 Feb 19 20:01 etc
    drwxr-xr-x    2 root     root           122 Feb 19 20:01 flash
    drwxr-xr-x    4 root     root          1597 Feb 10 16:18 lib
    drwxr-xr-x   13 root     root          4096 Feb 19 19:16 opt
    dr-xr-xr-x  180 root     root             0 Jan  1  1970 proc
    drwxr-xr-x    2 root     root             3 Feb 10 16:12 root
    drwxr-xr-x    2 root     root           144 Feb 19 20:01 sbin
    drwxr-xr-x    3 root     root             0 Jan  1  1970 storage
    dr-xr-xr-x   11 root     root             0 Jan  1  1970 sys
    drwxrwxrwt   13 root     root           560 Feb 20 06:17 tmp
    drwxr-xr-x    8 root     root           113 Feb 10 16:18 usr
    lrwxrwxrwx    1 root     root             4 Feb 19 20:01 var -> /tmp

     

  22. вот последний лог, вроде он все же стартует после

    [I] Feb 20 08:54:38 dropbear: Started version 2019.78-1
    [I] Feb 20 09:15:11 ndm: Opkg::Manager: unmount existing /opt disk: 1345afc8-a034-4e4e-a9b9-da56ac3e3703:/.
    [I] Feb 20 09:15:13 ndm: Opkg::Manager: disk unmounted.
    [I] Feb 20 09:15:13 ndm: Opkg::Manager: disk is unset.
    [I] Feb 20 09:15:13 ndm: Opkg::Manager: init script reset to default: /opt/etc/initrc.
    [I] Feb 20 09:16:59 ndm: Opkg::Manager: disk is set to: 1345afc8-a034-4e4e-a9b9-da56ac3e3703:/.
    [I] Feb 20 09:16:59 ndm: Opkg::Manager: /tmp/mnt/1345afc8-a034-4e4e-a9b9-da56ac3e3703 mounted to /tmp/mnt/1345afc8-a034-4e4e-a9b9-da56ac3e3703.
    [I] Feb 20 09:16:59 ndm: Opkg::Manager: /tmp/mnt/1345afc8-a034-4e4e-a9b9-da56ac3e3703 mounted to /opt/.
    [I] Feb 20 09:16:59 ndm: Opkg::Manager: /tmp/mnt/1345afc8-a034-4e4e-a9b9-da56ac3e3703 initialized.
    [I] Feb 20 09:16:59 ndm: Opkg::Manager: configured init script: "/opt/etc/init.d/rc.unslung".
    [I] Feb 20 09:37:18 dropbear: Child connection from 172.16.82.5:50503
    [I] Feb 20 09:37:51 dropbear: Child connection from 172.16.82.5:50511
    [W] Feb 20 09:37:59 dropbear: Bad password attempt for 'admin' from 172.16.82.5:50511
    [I] Feb 20 09:38:03 dropbear: Password authentication succeeded for 'admin' from 172.16.82.5:50511
    [I] Feb 20 09:42:18 dropbear: Exit before auth (user 'admin', 0 fails): Timeout before auth

     

×
×
  • Create New...