Jump to content

vasek00

Forum Members
  • Posts

    4,383
  • Joined

  • Last visited

  • Days Won

    74

Posts posted by vasek00

  1. 11 час назад, r13 сказал:

    @admin

    На 4.1A16 появился перезапрос ip адресв серверов dns перезапуск dot/doh клиентов при продлении dhcp аренды у провайдера, думаю это лишнее действие.

     

     

     Это так же на

    Скрытый текст
        <release>4.00.C.5.0-2</release>
        <sandbox>stable</sandbox>
        <title>4.0.5</title>
        <arch>mips</arch>
    
    [I] Oct 26 00:03:52 ndhcpc: GigabitEthernet1: received ACK for хх.хх.хх.хх from хх.хх.хх.1 lease 600 sec. 
    [I] Oct 26 00:03:52 ndm: Dns::InterfaceSpecific: "GigabitEthernet1": adding a host route to name server 77.88.8.8 (via хх.хх.хх.1). 
    [I] Oct 26 00:03:52 ndm: Dns::InterfaceSpecific: "GigabitEthernet1": host route for name server 77.88.8.8 added. 

     

    И ранее

    Скрытый текст
        <release>4.00.C.0.0-1</release>
        <sandbox>draft</sandbox>
        <title>4.0.0</title>
        <arch>mips</arch>
    
    [I] Nov  5 14:40:48 ndhcpc: GigabitEthernet1: received ACK for хх.хх.хх.226 from хх.хх.хх.73 lease 10800 sec. 
    [I] Nov  5 14:40:48 ndm: Dns::InterfaceSpecific: "GigabitEthernet1": adding a host route to name server 8.8.8.8 (via хх.хх.хх.хх). 
    [I] Nov  5 14:40:48 ndm: Dns::InterfaceSpecific: "GigabitEthernet1": host route for name server 8.8.8.8 added. 

     

     

     

  2. В 20.10.2023 в 07:04, D@nge1 сказал:

    Присоединяюсь к вопросу. Предстоит замена KN-1011 на KN-1811. Keenetic уже целая экосистема и миграция настроек между девайсами очень актуальна.

     

    1 час назад, zavy сказал:

    Вопрос актуален, нужно перенести с Giga на Giant

    Как сделать это без сброса?

    Вы можете ждать, а можете не ждать, что и как написано выше - было бы желание.

    Два текстовых файла слева конф.файл одной модели, справа конф.файл другой модели.

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

    Это только часть того как это выглядит, так как модели с гигабитными портами то проблем нет

    -20.jpg.314b02be822f7f39bd443463fcf85a4f.jpg-21.thumb.jpg.a19a01166f89ca6bee7f1ede37441270.jpg-22.thumb.jpg.6c2e6124d79b7c3ba1189df133e5800f.jpg-23.thumb.jpg.ff6adbe19688af5e91e17e967688813d.jpg-5.jpg.0a191ae9e919de3093e9b48a540d45a1.jpg-4.thumb.jpg.91b92703affd762aa890069ca4d4a6d8.jpg

    и т.д.

    Быть только ВНИМАТЕЛЬНЫМИ и под рукой всегда иметь текущий конф файл.

    Маленькая ремарка ключей от VPN в конф файлах нет, так что предварительно сохранить их. Перед тем как начать не плохо бы посмотреть на справочник команд, если что-то вдруг не понятно или к чему относится тот или иной блок.

    Специально оставил в некоторых скринах отличия, чтоб было видно что и как.

  3. 2 часа назад, MaXiDRoM_90 сказал:

    Поправил, роуминг был выключен, но колонка у меня подключена по проводу, как по поводу то решить?

    Поднимите ее приоритет трафика, например на 4 остальные клиенты по default (6), можно попробовать на нее DNS по проще (от Yandex).

    На lite с wifi 5GHz и при Adguardhome все нормально.

  4. Плитка сетевые порты - при наведение на LAN порт мышкой появляется окно с краткой информацией по подключению.

    Вопрос - можно на WAN порт сделать краткую информацию (может быть и два WAN порта). Что выводить наверное тот интерфейс/подключение которое использует default маршрут.

    Второе

    Плитка интернет. При наличие двух провайдеров и на каждом возможно какой то VPN хотелось бы увидить два графика рядом.

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

    -3.jpg.bb50570298ccff00c898883f7abbc42f.jpg

    Третье

    В разделе "клиенты" - "список клиентов", возможно ли увидеть уровень RSSI клиента WiFi, а то у меня две стены, а у меня три для оценки клиента не солидно. Данный уровень показывает как роутер слышит клиента. Или на страницу монитор wifi - раздел про клиентов Wifi.

    Четвертое

    Страница "Другие подключения", при наличие разных VPN чтоб добраться до нужно нужно листать страницу в низ, возможно ее сделать на базе закладок как на "Межсетевой экран"

  5. 10 минут назад, vasek00 сказал:

    41А14 проблема с настройками в WEB - приоритетах подключений на Peak.

    При наличие двух wireguard каналах и созданых для них профилей нет возможности установить галку на нужном канале в созданном профиле, и как итог нет default маршрута в данном профиле на данный канал. Через Web cli например команда - "ip policy Policy2 permit global Wireguard4" и потом запись отрабатывает. Но теперь нужно сменить канал для данного профиля - WEB -> Приоритеты подключения -> нужный профиль выбираем канал ставим галку а на другом убираем галку, сохраняем но все остается по старому.

    Перенастроил + перегрузил кажется работает.

  6. 41А14 проблема с настройками в WEB - приоритетах подключений на Peak.

    При наличие двух wireguard каналах и созданых для них профилей нет возможности установить галку на нужном канале в созданном профиле, и как итог нет default маршрута в данном профиле на данный канал. Через Web cli например команда - "ip policy Policy2 permit global Wireguard4" и потом запись отрабатывает. Но теперь нужно сменить канал для данного профиля - WEB -> Приоритеты подключения -> нужный профиль выбираем канал ставим галку а на другом убираем галку, сохраняем но все остается по старому.

  7. 3 часа назад, Losteu сказал:

    Есть ли у Вас возможность пингануть внутренний ip через другой провайдер и посмотреть какой пинг? Если он есть значит у Вас не блокируются входящие соединения и можете поднять WG где скорость больше чем в ZT

    Как уже сказал ранее два провайдера один РТ на pppoe второй провейдер на проводе с серым ip. Подняты два WG  и работают уже давно. Вопрос пока в том, для чего добавлен ZT если есть много вариантов описанных в базе соединений сетей и удаленный доступ к ним.

  8. 26 минут назад, Losteu сказал:

    Добавил show interface. 
    Вероятно вы можете также поднять wg используя напрямую ip сети провайдера 10.x.x.x, ранее как писал у меня был доступен локальный доступ к ip внутри провайдера 10.x.x.x и также серый ip 186.x.x.x теперь нет доступа для входящих соединений к ip внутри провайдера 10.x.x.x.

    Также в другом доме имеется другой провайдер который на данный момент имеет серый ip и ip для входящих соединений внутри сети 10.x.x.x и там поднимается wg и попробовал zt который работает внутри сети, т.е пинг до 10-20 и скорость внутри сети провайдера внутри страны (также работает без галочки allow bridging) т.е там входящее соединение идет не через серый ip который в свою очередь идет через сервера zt и соответственно высокий пинг и ограничение по скорости которые ограничивает провайдер на внешние сайты страны. 

    У вас проблема в настройках, сам ловил такой вывод и он не правильный. Не удобно смотреть такой вывод, но

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

    -2.thumb.jpg.ae415edd59997175a87c96575e6c1b1b.jpg

    с права ваш.

    У вас нет блока IPv4. В моих настройках всем клиентам присвоен IP из сети ZT.

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

  9. 34 минуты назад, Losteu сказал:

    роутер

      Скрыть содержимое

    access-list _WEBADMIN_ZeroTier0
        permit tcp 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0
        permit description local-tcp
        permit udp 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0
        permit description local-udp
        auto-delete

    interface ZeroTier0
        description ZeroTier0
        role inet
        security-level public
        ip dhcp client dns-routes
        ip access-group _WEBADMIN_ZeroTier0 in
        zerotier accept-addresses
        zerotier accept-routes
        zerotier network-id 6xxxxxxxxxxxxx
        zerotier connect via PPPoE0
        up

    ip nat ZeroTier0

    show interface ZeroTier0

      Скрыть содержимое
    0.0.0.0/0 			via	10.хх.хх.1	
    10.хх.хх.0/24 		(LAN)	
    192.168.1.0/24	via	10.xx.xx.1
    0.0.0.0 маршрут default на zt_br0 (на роутер)

    10.xx.xx.0/24 сеть ZT

    192.168.1.0/24 локальная сеть роутера

    Как понял трафик идёт через сервера ZT в обход сети роутера, все из-за того что, серый ip который блокирует входящие соединения вот и пинг большой.

    Пару месяцев назад был доступ к ip внутри провайдера который не блокировал входящие соединения, был настроен wg и работало напрямую через роутер, как заблокировали так сразу пропал доступ к роутеру из вне (серый ip и ip внутри сети провайдера - все работало через ip внутри провайдера)

    Но все также без галочки на allow bridging в zt нет доступа к роутеру.

    Имею провайдер в стране который предоставляет ограничение по скоростям:

    1) скорость до 100мбс внутри страны

    2) скорость до 10мбс на сайты и тд. которые находятся из вне

    Соответственно имею скорость до 10мбс через zt 

    1. show interface так и не показали

    2. Я подключал/соединял два Keenetic, две их лок.сети. На одном из которых провайдер который дает 10.хх.хх.хх. Итого так же ок.

    Посмотрел планшет, опять ZT уснул, на стороне планшета все маршруты были но нечего не работало, Разбудил только ping, но что интерсено ping с планшета или смартфона не помогают, только ping с роутера 101 или клиента в его лок.сети.

  10. Попробовал планшет (Android 12) который был ранее настроен - минут 20 с ним ковырялся ну ни в какую, беру смартфон он как не в чем не бывало работает (как описано выше).

    Действия - удаляю данного клиента на ZT. На самом планшете :

    1. чищу кеш и данные программы ZT

    2. запускаю ZT на планшете, делаю настройку его - прописываю ID сети, разрешаю мобильные (allow mobile data), но запрещаю IPv6 (disable IPv6)

    3. на контроллере ZT появился данный клиент - присвоил IP и разрешил Auth?

    4. после нескольких минут - данный клиент заработал так же как и смартфон (выход в интернет есть через РT это показал speedtest), доступ есть к роутеру и к его HDD, так же доступ есть и к ПК который в LAN сети роутера)

    НИКАКИХ bridge не делал.

    Скрытый текст
    На планшете
    
    ip rule 
    0: from all lookup local
    ...
    13000: from all fwmark 0xc0109/0xcffff lookup 1049
    ....
    
    ip ro show table 1049 ******************************** для ZT
    default dev tun0 proto static scope link
    10.xx.xx.0/24 dev tun0 proto static scope link
    192.168.130.0/24 dev tun0 proto static scope link
    224.0.0.0/4 dev tun0 proto static scope link
    
    ip ro
    10.xx.xx.0/24 dev tun0 proto static scope link src 10.xx.xx.18
    10....229.0/24 dev tun0 proto static scope link src 10.xx.229.1

     

    Посмотрю что завтра с утра будет с данным клиентом

  11. 2 часа назад, Losteu сказал:

    Сделал тоже самое у себя, опять без галочки Allow Ethernet Bridging нет подключения до роутера, ставлю галочку и работает, но с пингом что-то не так. Пинг не идёт в обход через сервера ZT, а не прямую, либо это связано с серым ip.

    Не видя что у вас и как гадать можно сколько угодно. Росстелеком дает адреса 3 белых и один серый из. Все что выше показано адрес был серый.

  12. 1 час назад, Losteu сказал:

    Поставил галочку на allow Ethernet bridging на панеле zt на роутере и заработало, только конечно пинг до роутера высокий 

    На сегодня 41А14

    1. Разбудить канал ZT - ping на клиента

    2. На роутере

    Скрытый текст
    isolate-private
    
    access-list _WEBADMIN_ZeroTier0
        permit tcp 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0
        permit description local-tcp
        permit udp 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0
        permit description local-udp
    
    interface ZeroTier0
        description hom-local
        role inet
        security-level public
        ip dhcp client dns-routes
        ip access-group _WEBADMIN_ZeroTier0 in
        zerotier accept-addresses
        zerotier accept-routes
        zerotier network-id b................f
        zerotier connect via PPPoE0
        up
    
    ip nat ZeroTier0

    show interface ZeroTier0

    {
        "id": "ZeroTier0",
        "index": 0,
        "interface-name": "ZeroTier0",
        "type": "ZeroTier",
        "description": "hom-local",
        "traits": [
            "Mac",
            "Ethernet",
            "Ip",
            "Ip6",
            "Supplicant",
            "EthernetIp",
            "ZeroTier"
        ],
        "link": "up",
        "connected": "yes",
        "state": "up",
        "role": [
            "inet"	*************************************************
        ],
        "mtu": 1500,
        "tx-queue-length": 0,
        "address": "10.xx.xx.101",
        "mask": "255.255.255.0",
        "uptime": 99253,
        "global": false,
        "security-level": "public", *********************************
        "ipv6": {
            "addresses": [
                {
                    "address": "fe80::xxxx:xxxx:xxxx:xxxx",
                    "prefix-length": 64,
                    "proto": "KERNEL",
                    "valid-lifetime": "infinite"
                }
            ]
        },
        "mac": "be:xx:xx:xx:xx:58",
        "auth-type": "none",
        "zerotier": {
            "via": "PPPoE0",
            "local-id": "c........c",
            "network-id": "b...............f",
            "network-name": "",
            "status": "OK"
        },
        "summary": {
            "layer": {
                "conf": "running",
                "link": "running",
                "ipv4": "running",
                "ipv6": "disabled",
                "ctrl": "running"
            }
        },
        "prompt": "(config)"
    }

     

    3. ZT

    Скрытый текст
    0.0.0.0/0 			via	10.хх.хх.101	
    10.хх.хх.0/24 		(LAN)	
    192.168.130.0/24	via	10.xx.xx.101

    0.0.0.0 маршрут default на zt_br0 (на роутер)

    10.xx.xx.0/24 сеть ZT

    192.168.130.0/24 локальная сеть роутера

    4. Клиент смартфон

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

    -2.thumb.jpg.523483c5b3abc26962cb85ed1022a0ef.jpg

     

    5. Копирование -> клиент смартфон и клиент в лок.сети роутера

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

    -4.jpg.3034ae624037eb1e132d515f630078f5.jpg

    На роутере интерфейс zt_br0 (ZT) и eth2.1 (LAN)

    ~ # ping 10.хх.хх.6
    ...
    64 bytes from 10.хх.хх.6: seq=9 ttl=63 time=232.247 ms
    ^C
    --- 10.хх.хх.6 ping statistics ---
    10 packets transmitted, 10 packets received, 0% packet loss
    round-trip min/avg/max = 73.746/215.990/338.063 ms
    ~ # traceroute 10.хх.хх.6
    traceroute to 10.хх.хх.6 (10.хх.хх.6), 30 hops max, 38 byte packets
     1  192.168.130.101 (192.168.130.101)  0.571 ms  0.582 ms  0.366 ms
     2  10.хх.хх.6 (10.хх.хх.6)  432.614 ms  252.650 ms  64.358 ms
    ~ # 

    ping с роутера

    /opt/etc/init.d # ping 10.xx.xx.6
    PING 10.xx.xx.6 (10.xx.xx.6): 56 data bytes
    ...
    64 bytes from 10.xx.xx.6: seq=6 ttl=64 time=75.437 ms
    64 bytes from 10.xx.xx.6: seq=7 ttl=64 time=395.439 ms
    64 bytes from 10.xx.xx.6: seq=8 ttl=64 time=800.468 ms
    ...
    ^C
    --- 10.xx.xx.6 ping statistics ---
    12 packets transmitted, 12 packets received, 0% packet loss
    round-trip min/avg/max = 75.437/325.579/800.468 ms
    /opt/etc/init.d # 

     

    6. Клиент смартфон выход в интернет

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

    -5.jpg.f3463ec369da149a7121be819cb96fe8.jpg

    интерфейс на роутере zt_br0 (ZT) и pppoe (интернет)

    speedtest прием на клиенте

     

    • Thanks 1
  13. 22 часа назад, phys byte сказал:

    4.1 Alpha 13, тоже самое, плюс сломался чекбокс

    Оказывается настройки через веб вообще не сохраняются теперь (через телефон не пробовал), пришлось через router_startup-config восстанавливать.

    На управление WG каналах так же, только WEB/cli или править конфиг.

  14. 11 минуту назад, t800 сказал:

    Селф-теста пока нет и не будет, мне надо оперативно восстановить интернет, откат на 4.0.4 не помог pppoe фатально не включается. Так качественно альфы мне ещё ни разу не ломали сеть

    KN2710 c PPPoE без проблем, канал работает.

    • Upvote 1
  15. 12 часа назад, Skrill0 сказал:

    Доброго Вам вечера!

    Из того, что вижу, в основном все маркируется с помощью CONNNDMMARK, кроме 1 клиента, которого поместила в профиль.

    Но при рабоче через Mark никак не получается правильно пустить соединение на Tproxy.
    Может, я чего-то не понимаю или не замечаю?

      Скрыть содержимое
    # Вывод маркированных соединений из таблицы mangle
    iptables -t mangle -L -v -n --line-numbers | grep MARK
    
    # Правило 1: Маркировка соединений на основе состояния
    1    23147   44M ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED CONNNDMMARK match  0x20/0x0
    
    # Правило 2: NDMMARK для всех соединений
    1        7   364 NDMMARK    all  --  *      *       0.0.0.0/0            0.0.0.0/0            NDMMARK xor 0x4
    
    # Цепочка _IPSEC_L2TPSERVER_MARK
    # Правило 1: NDMMARK для соединений, проходящих через l2tp+
    1        0     0 NDMMARK    all  --  l2tp+  *       0.0.0.0/0            0.0.0.0/0            NDMMARK xor 0x10
    
    # Правило 2: CONNNDMMARK для соединений, прошедших через DNAT
    1        0     0 CONNNDMMARK  all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate DNAT CONNNDMMARK xor 0x80
    
    # Правило 3: NDMMARK для соединений, прошедших через DNAT
    2        0     0 NDMMARK    all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate DNAT NDMMARK xor 0x80
    
    # Правило 4: CONNNDMMARK для соединений с определенной маркировкой и ctstate DNAT
    1        0     0 CONNNDMMARK  all  --  *      *       0.0.0.0/0            0.0.0.0/0            CONNNDMMARK match  0x80/0x0 CONNNDMMARK xor 0x80
    
    # Правило 5: RETURN для соединений с определенной маркировкой
    2        0     0 RETURN     all  --  *      *       0.0.0.0/0            0.0.0.0/0            CONNNDMMARK match  0x80/0x0
    
    # Правило 6: CONNNDMMARK для адреса 192.168.1.65
    1     2222  383K CONNNDMMARK  all  --  br0    *       192.168.1.65         0.0.0.0/0            CONNNDMMARK match  0x0/0x0 CONNNDMMARK and 0xff
    
    # Правило 7: MARK для адреса 192.168.1.60 
    6     2274  396K MARK       all  --  br0    *       192.168.1.60         0.0.0.0/0            MARK set 0xffffd00
    
    # Правило 8: CONNMARK для адреса 192.168.1.60
    7     2274  396K CONNMARK   all  --  br0    *       192.168.1.60         0.0.0.0/0            CONNMARK save
    
    # Правило 9: CONNNDMMARK для TCP соединений на порту 443 с флагами SYN
    1        0     0 CONNNDMMARK  tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:443 flags:0x02/0x02 CONNNDMMARK xor 0x20
    
    # Правило 10: CONNNDMMARK для TCP соединений на порту 443 с флагами ACK
    3        0     0 CONNNDMMARK  tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:443 flags:0x10/0x10 CONNNDMMARK xor 0x20
    
    # Правило 11: CONNNDMMARK для TLS соединений с определенным серверным именем
    1        0     0 CONNNDMMARK  tcp  --  *      *       0.0.0.0/0            0.0.0.0/0             tls "*skrill.keenetic.link" CONNNDMMARK and 0xff
    
    # Правило 13: CONNNDMMARK для соединений с определенной NDMMARK маркировкой
    3        0     0 CONNNDMMARK  all  --  *      *       0.0.0.0/0            0.0.0.0/0            ndmmark match 0x1/0x0 CONNNDMMARK xor 0x1
    
    # Правило 14: CONNNDMMARK для соединений с другой NDMMARK маркировкой
    2        0     0 CONNNDMMARK  all  --  *      *       0.0.0.0/0            0.0.0.0/0            ndmmark match 0x2/0x0 CONNNDMMARK xor 0x2
    
    # Последнее правило: NDMMARK для всех соединений
    1    23949   44M NDMMARK    all  --  *      *       0.0.0.0/0            0.0.0.0/0            NDMMARK and 0xff

     

    TProxy не заработает, так как для маркировки в iptables нужно отключить hw_nat

    Берем например provixy чисто для пробы

    listen-address  127.0.0.1:8118
    
    /opt/etc/init.d # netstat -ntulp | grep 8118
    tcp        0      0 127.0.0.1:8118          0.0.0.0:*               LISTEN      1880/privoxy
    /opt/etc/init.d #
    
    
    iptables -t mangle -A PREROUTING -i br0 -p tcp --dport 80 -j TPROXY --tproxy-mark 0x1/0x1 --on-port 8118 --on-ip 127.0.0.1
    ip rule add fwmark 1 lookup 100
    ip route add local 0.0.0.0/0 dev lo table 100

    После этого перестает работат WEB 80 порт роутера, ну как бы так и должно быть. Клиент из лок сети просматривает сайты которые открываются.

       71  3692 TPROXY     tcp  --  br0    *       0.0.0.0/0            0.0.0.0/0            tcp dpt:80 TPROXY redirect 127.0.0.1:8118 mark 0x1/0x1

    -t mangle ... --tproxy-mark 0x1/0x1 --on-port 8118  изменяется пакет, устанавливает mark перед маршрутизацией  "ip rule add fwmark 1 ..." где все по умолчанию 0/0 идет в dev lo => помеченные пакеты идут в localhost на порт 8118 => тут просто смена маршрута. Проверял на скорую руку, но все работало, база 4.1.А.9 проц 7621

     

    Прошивка классификация интернет-трафика + профиль по клиенту

    Скрытый текст
      404 25945 CONNNDMMARK  all  --  br0    *       192.168.130.7        0.0.0.0/0            CONNNDMMARK match  0x0/0x0 CONNNDMMARK xor 0x10
     5886  780K RETURN     all  --  br0    *       192.168.130.7        0.0.0.0/0           
      869  186K CONNNDMMARK  all  --  br0    *       192.168.130.2        0.0.0.0/0            CONNNDMMARK match  0x0/0x0 CONNNDMMARK and 0xff
      869  186K MARK       all  --  br0    *       192.168.130.2        0.0.0.0/0            MARK set 0xffffaaa
      869  186K CONNMARK   all  --  br0    *       192.168.130.2        0.0.0.0/0            CONNMARK save
      869  186K RETURN     all  --  br0    *       192.168.130.2        0.0.0.0/0      

    Это классификация интернет-трафика (4 - CONNNDMMARK match  0x0/0x0 CONNNDMMARK xor 0x10) по клиенту

    Второй клиент классификация интернет по умолчанию и он сам клиент в профиле у которого MARK set 0xffffaaa

    Делал еще хитрее

    Скрытый текст
     iptables -t mangle -I _NDM_HOTSPOT_PRERT -i br0 -s 192.168.130.2/32 -j RETURN
     iptables -t mangle -I _NDM_HOTSPOT_PRERT -i br0 -s 192.168.130.2/32 -j CONNMARK --save-mark 
     iptables -t mangle -I _NDM_HOTSPOT_PRERT -i br0 -s 192.168.130.2/32 -m dscp --dscp 63 -j MARK --set-mark 0xffffd01
     iptables -t mangle -I _NDM_HOTSPOT_PRERT -i br0 -s 192.168.130.2/32 -j MARK --set-mark 0xffffd00

    где --dscp 63 для сервиса торрента клинта ПК (windows) и для него профиль -set-mark 0xffffd01 в котором канал Инте2, а сам клиент ПК в профиле --set-mark 0xffffd00 в котором канал Инет1

    HWNAT вообще не трогал не выше ни тут (включен по умолчанию и hard и soft).

    Ремарка в 4.1 сменена нумерация table на 10,11,12 c 42,43 и т.д. и маркировка на 0xffffaaa с 0xffffd00

     

    По RAY там как то хитро

    https://gist.github.com/tossmilestone/b8ae168ae029e0a66da125b71979f5a2

    https://dongdongbh.github.io/blog/tproxy/

     

     

    • Upvote 3
  16. 17 минут назад, Skrill0 сказал:

    TProxy не заработает, так как для маркировки в iptables нужно отключить hw_nat | Спасибо @avn.

    А какже тогда маркировка в прошивке, которая практически везде используется, например клиент который помещен в профиль.

  17. 10 часов назад, Ant сказал:

    2). Второй регулятор зарегистрировался с 3-5 попытки. Проблема в том, что соединение Wi-Fi у него постоянно отваливается. То есть значок Wi-Fi на устройстве пропадает, в программе Smart Life он указан как "не в сети", и в Кинетике этот регулятор отмечен как "не в сети". Помогает выключение-включение регулятора, после чего он на какое-то время опять коннектится к wi-fi. После чего все повторяется.

    В наличие умные выключатели и программа Smart Life. Как писали выше все это работает в своем собственном сегменте 2.4 кроме них никого нет. Мало того в данном сегменте настройки Beamforming/QAM256/Airtime Fairness включены пока не мешают.

    Иногда бывает бзик, правда все работает все равно (тут уже писал про это), ну бзик (замечен как стабильный) и всегда при моих эксп. с клиентами и профилями для них в WEB роутера (клиентов умного дома вообще не трогаю).

    [I] Oct 10 00:58:47 ndm: Network::Interface::Mtk::WifiMonitor: "WifiMaster0/AccessPoint0": STA(хх:хх:хх:хх:хх:хх) had disassociated by STA (reason: STA is leaving or has left BSS).

    только MAC нормальный.

    Пока есть подозрения на что то из WEB, или в ПО контроль интерфейсов/таблиц/или еще что-то, так как в данное время делал часто перенос клиента из одного профиля в другой и только это.

    На вопрос описать данное сообщение "had disassociated by STA (reason: STA is leaving or has left BSS)" или с чем оно может быть связано, чтоб найти концы где смотреть - пока тишина.

  18. 41A11 - KN1811, "служба классификации трафика" всегда была включена, не чего такого от нее не обнаружено.

    Есть пики но это по "show threads" говорят о http/rci

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

    На старом WEB

    "Queue::IDFIZVDASZLIWOWC::http/rci": {
                    "tid": 1246,
                    "lock_list_complete": true,
                    "locks": {},
                    "backtrace": {
                        "calls": "\nThread::State::GetBacktrace() [clone .part.0]+0x40\nThread::AttachThreadsTo(Thread::Monitor const&, Xml::Node&)+0x1a8\nCore::Command::(anonymous namespace)::ShowThreads::Execute(Command::Request const&, Command::Response&) const+0x34\nCore::Configurator::Execute(Command::Base const*, Command::Request const&, Command::Response&)+0x158\nCore::Configurator::Parse_(Command::Request const&, Command::Response&)+0x5dc\nCore::Configurator::Parse(Command::Request const&, Command::Response&)+0x18\nCore::Command::(anonymous namespace)::Parse::Execute(Command::Request const&, Command::Response&) const+0x9c\nCore::Configurator::Execute(Command::Base const*, Command::Request const&, Command::Response&)+0x158\nCore::Configurator::Serve(Command::Request const&, Command::Response&)+0x3d0\nCore::Scgi::Tools::(anonymous namespace)::JsonPostObject_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Object const*, Json::Object*)+0x6c8\nCore::Scgi::Tools::(anonymous namespace)::JsonPostValue_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Value const*, Json::Object*)+0x19c\nCore::Scgi::Tools::(anonymous namespace)::JsonPostObject_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Object const*, Json::Object*)+0xaec\nCore::Scgi::Tools::(anonymous namespace)::JsonPostValue_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Value const*, Json::Object*)+0x19c\nCore::Scgi::Tools::JsonPost(Core::Configurator&, Core::Scgi::Request const&, Json::Document const&, Core::Scgi::Trace&, Json::Document&, bool*)+0x13c\nCore::Scgi::ThreadPool::Task_::ProcessJsonRequest_(Core::Configurator&, Core::Scgi::Request const&, Core::Scgi::Trace&, Array<char>&, Io::OStream&)+0x350\nCore::Scgi::ThreadPool::Task_::Run()+0x144\nTask::Thread::Run_()+0x30c\nTask::Thread::Run()+0x18\nThread::StartRoutine_(void*)+0x2c8\nstart()+0x90\n__clone()+0x30\n",
                        "error": ""
                    },
                    "statistics": {
                        "interval": 30,
                        "cpu": {
                            "now": "1959.824913",
                            "min": 0,
                            "max": 38,
                            "avg": 6,
                            "cur": 26
                        }
                    }
                },
                          
    
                          "Queue::IDFIZVDASZLIWOWC::http/rci": {
                    "tid": 1246,
                    "lock_list_complete": true,
                    "locks": {},
                    "backtrace": {
                        "calls": "\nThread::State::GetBacktrace() [clone .part.0]+0x40\nThread::AttachThreadsTo(Thread::Monitor const&, Xml::Node&)+0x1a8\nCore::Command::(anonymous namespace)::ShowThreads::Execute(Command::Request const&, Command::Response&) const+0x34\nCore::Configurator::Execute(Command::Base const*, Command::Request const&, Command::Response&)+0x158\nCore::Configurator::Parse_(Command::Request const&, Command::Response&)+0x5dc\nCore::Configurator::Parse(Command::Request const&, Command::Response&)+0x18\nCore::Command::(anonymous namespace)::Parse::Execute(Command::Request const&, Command::Response&) const+0x9c\nCore::Configurator::Execute(Command::Base const*, Command::Request const&, Command::Response&)+0x158\nCore::Configurator::Serve(Command::Request const&, Command::Response&)+0x3d0\nCore::Scgi::Tools::(anonymous namespace)::JsonPostObject_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Object const*, Json::Object*)+0x6c8\nCore::Scgi::Tools::(anonymous namespace)::JsonPostValue_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Value const*, Json::Object*)+0x19c\nCore::Scgi::Tools::(anonymous namespace)::JsonPostObject_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Object const*, Json::Object*)+0xaec\nCore::Scgi::Tools::(anonymous namespace)::JsonPostValue_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Value const*, Json::Object*)+0x19c\nCore::Scgi::Tools::JsonPost(Core::Configurator&, Core::Scgi::Request const&, Json::Document const&, Core::Scgi::Trace&, Json::Document&, bool*)+0x13c\nCore::Scgi::ThreadPool::Task_::ProcessJsonRequest_(Core::Configurator&, Core::Scgi::Request const&, Core::Scgi::Trace&, Array<char>&, Io::OStream&)+0x350\nCore::Scgi::ThreadPool::Task_::Run()+0x144\nTask::Thread::Run_()+0x30c\nTask::Thread::Run()+0x18\nThread::StartRoutine_(void*)+0x2c8\nstart()+0x90\n__clone()+0x30\n",
                        "error": ""
                    },
                    "statistics": {
                        "interval": 30,
                        "cpu": {
                            "now": "2471.824919",
                            "min": 0,
                            "max": 38,
                            "avg": 14,
                            "cur": 14
                        }
                    }
                },
                          
    "Queue::IDFIZVDASZLIWOWC::http/rci": {
                    "tid": 1246,
                    "lock_list_complete": true,
                    "locks": {},
                    "backtrace": {
                        "calls": "\nThread::State::GetBacktrace() [clone .part.0]+0x40\nThread::AttachThreadsTo(Thread::Monitor const&, Xml::Node&)+0x1a8\nCore::Command::(anonymous namespace)::ShowThreads::Execute(Command::Request const&, Command::Response&) const+0x34\nCore::Configurator::Execute(Command::Base const*, Command::Request const&, Command::Response&)+0x158\nCore::Configurator::Parse_(Command::Request const&, Command::Response&)+0x5dc\nCore::Configurator::Parse(Command::Request const&, Command::Response&)+0x18\nCore::Command::(anonymous namespace)::Parse::Execute(Command::Request const&, Command::Response&) const+0x9c\nCore::Configurator::Execute(Command::Base const*, Command::Request const&, Command::Response&)+0x158\nCore::Configurator::Serve(Command::Request const&, Command::Response&)+0x3d0\nCore::Scgi::Tools::(anonymous namespace)::JsonPostObject_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Object const*, Json::Object*)+0x6c8\nCore::Scgi::Tools::(anonymous namespace)::JsonPostValue_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Value const*, Json::Object*)+0x19c\nCore::Scgi::Tools::(anonymous namespace)::JsonPostObject_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Object const*, Json::Object*)+0xaec\nCore::Scgi::Tools::(anonymous namespace)::JsonPostValue_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Value const*, Json::Object*)+0x19c\nCore::Scgi::Tools::JsonPost(Core::Configurator&, Core::Scgi::Request const&, Json::Document const&, Core::Scgi::Trace&, Json::Document&, bool*)+0x13c\nCore::Scgi::ThreadPool::Task_::ProcessJsonRequest_(Core::Configurator&, Core::Scgi::Request const&, Core::Scgi::Trace&, Array<char>&, Io::OStream&)+0x350\nCore::Scgi::ThreadPool::Task_::Run()+0x144\nTask::Thread::Run_()+0x30c\nTask::Thread::Run()+0x18\nThread::StartRoutine_(void*)+0x2c8\nstart()+0x90\n__clone()+0x30\n",
                        "error": ""
                    },
                    "statistics": {
                        "interval": 30,
                        "cpu": {
                            "now": "2557.824915",
                            "min": 0,
                            "max": 37,
                            "avg": 12,
                            "cur": 26
                        }
                    }
                },
                          
    или тот же selftest в эти моменты
                          
            <thread>
                <name>Queue::IDFIZVDASZLIWOWC::http/rci</name>
                <tid>1246</tid>
                <lock_list_complete>yes</lock_list_complete>
                <locks>
                    <lock>
                        <precedence>
                            <name>TASK_QUEUE_THREAD</name>
                            <order>97</order>
                        </precedence>
                        <state>WAITING</state>
                        <since>Oct  9 11:31:15</since>
                        <duration>4.600787</duration>
                    </lock>
                </locks>
                <backtrace>
                    <calls>
                        <![CDATA[
    __switch_to()+0x5c
    futex_wait_queue_me()+0xb4
    futex_wait()+0xc0
    do_futex()+0x64
    SyS_futex()+0xa8
    el0_svc_naked()+0x34
    0xffffffffffffffff()+0x0
    __setjmp()+0x38
    __syscall_cp_asm()+0x24
    __syscall_cp_c()+0x64
    __timedwait_cp()+0x94
    pthread_cond_timedwait()+0xdc
    Condition::Wait(long) const+0x144
    Task::Thread::Run_()+0x494
    Task::Thread::Run()+0x18
    Thread::StartRoutine_(void*)+0x2c8
    start()+0x90
    __clone()+0x30
    ]]>
                    </calls>
                    <error/>
                </backtrace>
                <statistics>
                    <interval>30</interval>
                    <cpu>
                        <now>1825.824918</now>
                        <min>0</min>
                        <max>39</max>
                        <avg>8</avg>
                        <cur>0</cur>
                    </cpu>
                </statistics>
            </thread>
    
                          
            <thread>
                <name>Queue::IDFIZVDASZLIWOWC::http/rci</name>
                <tid>1246</tid>
                <lock_list_complete>yes</lock_list_complete>
                <locks>
                    <lock>
                        <precedence>
                            <name>TASK_QUEUE_THREAD</name>
                            <order>97</order>
                        </precedence>
                        <state>WAITING</state>
                        <since>Oct  9 11:31:32</since>
                        <duration>5.127473</duration>
                    </lock>
                </locks>
                <backtrace>
                    <calls>
                        <![CDATA[
    __switch_to()+0x5c
    futex_wait_queue_me()+0xb4
    futex_wait()+0xc0
    do_futex()+0x64
    SyS_futex()+0xa8
    el0_svc_naked()+0x34
    0xffffffffffffffff()+0x0
    __setjmp()+0x38
    __syscall_cp_asm()+0x24
    __syscall_cp_c()+0x64
    __timedwait_cp()+0x94
    pthread_cond_timedwait()+0xdc
    Condition::Wait(long) const+0x144
    Task::Thread::Run_()+0x494
    Task::Thread::Run()+0x18
    Thread::StartRoutine_(void*)+0x2c8
    start()+0x90
    __clone()+0x30
    ]]>
                    </calls>
                    <error/>
                </backtrace>
                <statistics>
                    <interval>30</interval>
                    <cpu>
                        <now>1843.824918</now>
                        <min>0</min>
                        <max>39</max>
                        <avg>8</avg>
                        <cur>0</cur>
                    </cpu>
                </statistics>
            </thread>
    
    
    <thread>
                <name>Queue::IDFIZVDASZLIWOWC::http/rci</name>
                <tid>1246</tid>
                <lock_list_complete>yes</lock_list_complete>
                <locks>
                    <lock>
                        <precedence>
                            <name>TASK_QUEUE_THREAD</name>
                            <order>97</order>
                        </precedence>
                        <state>WAITING</state>
                        <since>Oct  9 11:30:10</since>
                        <duration>4.981449</duration>
                    </lock>
                </locks>
                <backtrace>
                    <calls>
                        <![CDATA[
    __switch_to()+0x5c
    futex_wait_queue_me()+0xb4
    futex_wait()+0xc0
    do_futex()+0x64
    SyS_futex()+0xa8
    el0_svc_naked()+0x34
    0xffffffffffffffff()+0x0
    __setjmp()+0x38
    __syscall_cp_asm()+0x24
    __syscall_cp_c()+0x64
    __timedwait_cp()+0x94
    pthread_cond_timedwait()+0xdc
    Condition::Wait(long) const+0x144
    Task::Thread::Run_()+0x494
    Task::Thread::Run()+0x18
    Thread::StartRoutine_(void*)+0x2c8
    start()+0x90
    __clone()+0x30
    ]]>
                    </calls>
                    <error/>
                </backtrace>
                <statistics>
                    <interval>30</interval>
                    <cpu>
                        <now>1760.824902</now>
                        <min>0</min>
                        <max>37</max>
                        <avg>10</avg>
                        <cur>0</cur>
                    </cpu>
                </statistics>
            </thread>

     

     

  19. 3 часа назад, aleeko сказал:


    ДОкументация на ГИтхабе не нашел

    На данном форуме

    ~ # wget -qO - localhost:79/rci/show/ip/policy
    {
      "Policy0": {
        "description": "Cloud",
        "mark": "ffffd00",
        "table4": 42,
        "route4": {
          "route": [
    ...
    
    ~ # wget -qO - localhost:79/rci/show/interface | jq '.[] | select(.type=="Wireguard")' | jq -r '.id'
    Wireguard0
    Wireguard2
    Wireguard3
    Wireguard4
    ~ # 
    
    ~ # curl -X POST -d '{}' "http://localhost:79/rci/interface/connect?name=PPPoE0&via=ISP"
    {
      "status": [
        {
          "status": "message",
          "code": "72286209",
          "ident": "Network::Interface::Ppp",
          "message": "\"PPPoE0\": enabled connection via ISP interface."
        }
      ]
    }~ # 
    
    ~ # curl -s 127.0.0.1:79/rci/show/interface | jq -r '.[] | select(."interface-name"=="ISP") | .id'
    GigabitEthernet1
    ~ # 
    
    ~ # curl -s "127.0.0.1:79/rci/ip/http/security-level" | grep ssl | sed 's/.ssl.://' | tr -d " "
    true
    ~ # 

     

  20. 7 минут назад, aleeko сказал:

    Нет, wget с логом не то, там нет упоминаний и отсылки table и к интерфейсам пригодных для скармливания   "ip rule"
    Здесь как раз таки надо обращаться какой то командой к роутеру что бы вытащить через entware эту инфу о "policy", либо смотреть какой то командой в сетевых параметрах, где упоминается соотношения имени интерфейса к присвоенным им политикой номера таблиц.

    "ip rule" + "ip ro show table XXXX"

    Этих не хватит.

    Для перезагрузки используют /opt/etc/init.d скрипт с "S110Run" или хуки от /opt/ndm/...

    Скрытый текст
    ~ # ip rule
    0:      from all lookup local 
    10:     from all fwmark 0xffffcff lookup main 
    200:    from all fwmark 0xffffd00 lookup 42 
    201:    from all fwmark 0xffffd00 blackhole
    202:    from all fwmark 0xffffd01 lookup 43 
    203:    from all fwmark 0xffffd01 blackhole
    204:    from all fwmark 0xffffd02 lookup 44 
    ...
    
    
    ~ # ip ro show table 42
    default dev nwg0  scope link 
    10.2.0.1 dev nwg4  scope link 
    ....

    где

    42 у меня например ip policy Policy0/description Cloud

    44 у меня ip policy Policy2/description Anti

    Номера 42 и т.д. идут пока по порядку согласно конф файла

    ip policy Policy0 -------> 42
        description Cloud
    ...
    !
    ip policy Policy1 -------> 43
        description In-2
    ...
    !
    ip policy Policy2 ------> 44
        description Anti
    ...


     

     

  21. 1 час назад, aleeko сказал:

    Лично у меня вопрос... кто знает?!
    При работе через интерфейс мы можем добавлять новые таблицы, и таблицы интерфейсов могут получить новые значения.
    Как через скрипт получить информацию, в какой именно таблице сейчас прячется интерфейс nwg2 или любой другой? - что бы каждый раз не лазать ручками редактировать скрипт?

    На форуме куча есть примеров через wget - например

    wget -qO - --post-data='[{"log":{"once":true}}]' localhost:79/rci/show

    Есть и еще - поиск

     

    Для меня проще команды "ip rule" + "ip ro show table XXXX" + достаточно один раз посмотреть вывод "show ip policy"

    Policy0
    "description": "Cloud",
    "mark": "ffffd00",
    "table4": 42
    ....
    "route": [
                        {
    ...
                            "interface": "Wireguard0",
    ...                    },
                        {
    ....
                            "interface": "Wireguard4",
    ...
           "Policy2": {
                "description": "Anti",
                "mark": "ffffd02",
                "table4": 44,
                "route4": {
    ...
                       {
    ...
                            "interface": "Wireguard4",
    ...
    сопоставить с конф файлом
    ip policy Policy0
        description Cloud
        permit global Wireguard0

     

    opkg install ip-full ip-bridge

     

  22. 10 часов назад, aleeko сказал:

    становится интереснее....
    иначе получится так, что все будет отваливаться при перезапуске интерфейса или перезагрузке роутера
    - а скрипты по автозапускам, с проверкой поднятых интерфейсов видимо надо искать в других ветках...
    Вы использовали у себя скрипты автозапуска?

    Вам предложен вариант как это можно сделать.

    с проверкой поднятых интерфейсов видимо надо искать в других ветках...

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

    Как говорится "без труда не выловишь и рыбку из пруда", второе "Подразумевается, что на нашем форуме пишут люди заинтересованные и технически подкованные, способные на минимальный анализ происходящего"

    • Upvote 1
  23. 3 часа назад, aleeko сказал:

    Я так понимаю, такой же логики следует придерживаться, если я буду заворачивать трафик в прокси настроенный на Кинетике?

    Логика проста - сначала все ручками чтоб работало, а потом уже скрипт для автом. запуска.

×
×
  • Create New...