Перейти к содержанию

Рекомендуемые сообщения

Опубликовано
4 hours ago, cryoPanda said:

В listen.conf адрес корректный:

listen 192.168.10.1:8080;

 

А вот при проверке доступа через curl выдает 403:

curl -s -o /dev/null -w '%{http_code}' http://127.0.0.1:80/

403

У Вас похоже, ситуация следующая:
- выключен доступ к веб снаружи
- прошивка оставляет только доступ из LAN
- прошивка не считает 127.0.0.1 роутера ланом (что в целом правильно)

Если это так, попробуйте, пожалуйста:
 

**Решение — изменить upstream на LAN IP:**

Сначала проверяем что stock httpd доступен с LAN IP:

```sh
curl -s -o /dev/null -w '%{http_code}' http://192.168.10.1:80/
```

Если ответ 200 (или 401 — значит просит авторизацию, это нормально), исправляем upstream:

```sh
# Открыть конфиг nginx-webui
vi /opt/keenetic-entware-extras/webui/config/nginx.conf
```

Найти строку:
```nginx
upstream keenetic_ui {
    server 127.0.0.1:80;
    keepalive 4;
}
```

Заменить на:
```nginx
upstream keenetic_ui {
    server 192.168.10.1:80;
    keepalive 4;
}
```

Перезапустить:
```sh
/opt/etc/init.d/S80nginx-webui restart
```

**Проверка:**

```sh
# Должно вернуть 200 или 302 (перенаправление на login)
curl -s -o /dev/null -w '%{http_code}' http://192.168.10.1:8080/auth
```

После этого зайти в браузере на `http://192.168.10.1:8080/` — должна появиться стандартная форма логина Keenetic. Учётные данные те же, что для штатного WebUI.

> **Примечание:** `listen.conf` у вас правильный (`listen 192.168.10.1:8080;`), менять его не нужно. Проблема была только в upstream (куда проксируется auth).

***


Если так, то ситуация повторяемая, нужен патч...

Опубликовано
22 minutes ago, cryoPanda said:

Ещё обнаружил по логам, что похоже cron мешает и снова запускает указанные сервисы. Там тоже что-то нужно модифицировать?

Да, это ошибка. 

Делаю патч...

**Проблема:** `smartdns-redirect/scripts/watchdog.sh` (cron */5) видит «iptables rules missing» после ручного `stop` → восстанавливает правила + рестартует SmartDNS через ≤5 мин. geo-split `refresh` безвреден (заполняет таблицы, но не ставит ip rules). NDM hooks тоже могут восстановить.

Опубликовано
13 минут назад, 0xkee сказал:

У Вас похоже, ситуация следующая:
- выключен доступ к веб снаружи
- прошивка оставляет только доступ из LAN
- прошивка не считает 127.0.0.1 роутера ланом (что в целом правильно)

Если это так, попробуйте, пожалуйста:
 

**Решение — изменить upstream на LAN IP:**

Сначала проверяем что stock httpd доступен с LAN IP:

```sh
curl -s -o /dev/null -w '%{http_code}' http://192.168.10.1:80/
```

Если ответ 200 (или 401 — значит просит авторизацию, это нормально), исправляем upstream:

```sh
# Открыть конфиг nginx-webui
vi /opt/keenetic-entware-extras/webui/config/nginx.conf
```

Найти строку:
```nginx
upstream keenetic_ui {
    server 127.0.0.1:80;
    keepalive 4;
}
```

Заменить на:
```nginx
upstream keenetic_ui {
    server 192.168.10.1:80;
    keepalive 4;
}
```

Перезапустить:
```sh
/opt/etc/init.d/S80nginx-webui restart
```

**Проверка:**

```sh
# Должно вернуть 200 или 302 (перенаправление на login)
curl -s -o /dev/null -w '%{http_code}' http://192.168.10.1:8080/auth
```

После этого зайти в браузере на `http://192.168.10.1:8080/` — должна появиться стандартная форма логина Keenetic. Учётные данные те же, что для штатного WebUI.

> **Примечание:** `listen.conf` у вас правильный (`listen 192.168.10.1:8080;`), менять его не нужно. Проблема была только в upstream (куда проксируется auth).

***


Если так, то ситуация повторяемая, нужен патч...

 

После смены upstream вебка заработала. Спасибо!

11 минут назад, 0xkee сказал:

Да, это ошибка. 

Делаю патч...

**Проблема:** `smartdns-redirect/scripts/watchdog.sh` (cron */5) видит «iptables rules missing» после ручного `stop` → восстанавливает правила + рестартует SmartDNS через ≤5 мин. geo-split `refresh` безвреден (заполняет таблицы, но не ставит ip rules). NDM hooks тоже могут восстановить.

Хорошо, тогда буду ждать патч!

Опубликовано

После обновления на новые версии, возникает ошибка с запуском сервиса Geo-Split, при откате на стабильную версию проблем не наблюдаю

~ # kee-status -d
keenetic-entware-extras status:
  geo-split            FAIL
    geo-split status: ✗ Fail
      Mode:
        Geo zone:    RU
        Route in:    br0
        Route out:   auto (detect ISP)
        Active out:  — detached
    
      IP rules:
        iif br0 → table 1000 (domains) ✗
        iif br0 → table 1001 (subnets) ✗
    
      Routes:
        Domains:     0 routes in table 1000 ✗
        Subnets:     0 routes in table 1001 ✗
    
      Caches:
        Subnets:     cache 11m 48s old (max 7d 0h 0m) ✓
        Domains:     43 in cache, 13m 17s old (max 1h 0m 0s) ✓
    
      Domain sources: 103 domain(s) configured
    
      System:
        Uptime:      — (not running)
        Cron:        1 job(s) (shift 13m) ✓
        NDM hook:    /opt/etc/ndm/ifstatechanged.d/geo-split-hook ✓
        DL iface:    — (no history)
        DNS:         localhost:6153 (SmartDNS no-speed-check)
        Background:  idle
        Loader:      cidr-plain
        Version:     0.12.3

  smartdns-conf-ru-split Alive
    smartdns-conf-ru-split status: ✓ Alive
      Service:
        Mode:        split-DNS (enabled) ✓
        Process:     running (pid 13984 via pidfile, RSS 12124kB) ✓
        Ports:       127.0.0.1:6053 ✓
                     127.0.0.1:6153 ✓
                     192.168.1.1:6053 ✓
        Config:      /opt/etc/smartdns/smartdns.conf (10 servers, 10 rules) ✓
        Cache:       not found
    
      System:
        Uptime:      6m 51s ✓
        Version:     0.4.4
    
      DNS Tests:
        ya.ru:         77.88.44.242 (ru-group) ✓
        vk.com:        87.240.137.164 (ru-group (.com→ru)) ✓
        google.com:    142.251.1.138 (default-group) ✓
        github.com:    140.82.121.3 (default-group) ✓

  smartdns-redirect    Alive
    smartdns-redirect status: ✓ Alive
      Mode:
        Config:      /opt/keenetic-entware-extras/smartdns-redirect/config/defaults.conf
        Upstream:    127.0.0.1:6053 (smartdns)
        Interfaces:  br0
        IPv6:        no
    
      Rules:
        v4   udp    br0 → :6053 ✓
        v4   tcp    br0 → :6053 ✓
    
      Upstream probe:
        UDP :6053: listening (127.0.0.1:6053 192.168.1.1:6053) ✓
    
      System:
        Uptime:      6m 39s ✓
        Init:        /opt/etc/init.d/S39smartdns-redirect ✓
        NDM hook:    /opt/etc/ndm/netfilter.d/smartdns-redirect-hook ✓
        Version:     0.3.1

  webui                Alive
    nginx-webui status: ✓ Alive
      Service:
        Process:     running (pid 14535 via pidfile, RSS 3556kB) ✓
        Config:      /opt/keenetic-entware-extras/webui/scripts/../config/nginx.conf ✓
        Listen conf: /opt/keenetic-entware-extras/webui/scripts/../config/listen.conf ✓
        Lua module:  /opt/lib/nginx/modules/ngx_http_lua_module.so ✓
        Ports:       127.0.0.1:8080 ✓
                     192.168.1.1:8080 ✓
    
      HTTP:
        Static:      GET / → 200 ✓
        API:         GET /api/system/info → 200 ✓
    
      Upstream:
        Stock httpd: 192.168.1.1:80 → 200 ✓
    
      Logrotate:
        Binary:      /opt/sbin/logrotate ✓
        Config:      /opt/etc/logrotate.d/nginx-webui ✓
        Cron daily:  /opt/etc/cron.daily/logrotate ✓
    
      System:
        Uptime:      6m 26s ✓
        Version:     0.11.1

Опубликовано

Проблема связана с новым пакетом geo-split_0.12.3_all.ipk, после отката на предыдущую версию geo-split_0.10.8_all.ipk все нормально работает (все остальные пакеты обновлены на новые версии).

В версии keenetic-entware-extras` 0.9.5 и 0.12.0 отсутствует скрипт диагностики который должен располагаться по ниже указанному вами пути

/opt/keenetic-entware-extras/scripts/bug-report.sh
Опубликовано
15 часов назад, 0xkee сказал:

Готово.
 

Доброго времени суток! Поставил последние версии пакетов, ошибок не наблюдается. Но всё также вмешивается cron с watchdog раз в 5 минут, прикладываю лог:

```

Июн 2 18:25:01

cron[14674]

(root) CMD (/opt/bin/run-parts /opt/etc/cron.5mins^I)

Июн 2 18:25:01

cron[14676]

(root) CMD (/opt/keenetic-entware-extras/smartdns-redirect/scripts/watchdog.sh >/dev/null 2>&1)

Июн 2 18:25:01

cron[14675]

(root) CMD (/opt/bin/run-parts /opt/etc/cron.1min^I)

Июн 2 18:25:01

watchdog

iptables rule missing, reloading via dns-redirect.sh

Июн 2 18:25:01

dns-redirect

added: -i br0 -p udp --dport 53 -> REDIRECT :6053

Июн 2 18:25:01

dns-redirect

added: -i br0 -p tcp --dport 53 -> REDIRECT :6053

Июн 2 18:25:01

watchdog

upstream :6053 not responding, restarting S38smartdns

Июн 2 18:25:01

root

Started smartdns from .

```

Опубликовано
1 hour ago, cryoPanda said:

Доброго времени суток! Поставил последние версии пакетов, ошибок не наблюдается. Но всё также вмешивается cron с watchdog раз в 5 минут, прикладываю лог:

 

Доброго времени суток! 

Возникла техническая сложность разделения запуска/останова и включения/выключения сервисов, 
штатный механизм Entware enable/disable фактически отсутствует (есть переменная ENABLED=yes|no внутри init-скрипта + файл rc.func), поэтому были внесены небольшие архитектурные изменения:

- теперь разделены start/stop и enable/disable,
start/stop оставлены для запуска при рестарте роутера как штатный механизм entware
- для permanent user disable используйте новые disable/enable (вебка сама знает, что использовать)
- при этом используйте пути типа:
/opt/keenetic-entware-extras/<пакет>/init.d/S##пакет enable/disable
- при этом в папке /opt/etc/init.d/ теперь находятся симлинки на реальные скрипты из пакетов, например

/opt/keenetic-entware-extras/scripts # ls -l /opt/etc/init.d/
-rwxr-xr-x    1 root     root           232 May 23  2025 S10cron
-rwxr-xr-x    1 root     root           194 Mar 16 12:22 S38smartdns
lrwxrwxrwx    1 root     root            74 Jun  1 22:43 S39smartdns-redirect -> /opt/keenetic-entware-extras/smartdns-redirect/init.d/S39smartdns-redirect
-rwxr-xr-x    1 root     root           749 Feb 13 16:54 S51dropbear
-rw-r--r--    1 root     root           518 Mar 16 12:22 S80nginx
lrwxrwxrwx    1 root     root            56 Jun  1 22:43 S80nginx-webui -> /opt/keenetic-entware-extras/webui/init.d/S80nginx-webui
lrwxrwxrwx    1 root     root            58 Jun  1 22:43 S99geo-split -> /opt/keenetic-entware-extras/geo-split/init.d/S99geo-split
-rw-r--r--    1 root     root          2842 May 24  2025 rc.func
-rwxr-xr-x    1 root     root           950 May 24  2025 rc.unslung
/opt/keenetic-entware-extras/scripts # 

при disable этот симлинк удаляется, при enable - добавляется
- cron, hooks, watchdog остаются, но проверяют наличие симлинка (как выше), и если его нет, сервис считается выключенным пользователем перманентно (до дальнейшего ручного включения пользователем), и в таком случае - скрипты тут же завершаются (ничего не делают)
- при обновлении пакетов сервисы автоматически переходят в режим enabled и запускаются всегда (соглашение - если они не нужны, то их и не обновляют...)

*** иишка ***
 

7. Нюанс для cryoPanda по поводу лога cron
Даже при disable, cron entry остаётся в /opt/etc/crontab — поэтому строки:

cron[xxx] (root) CMD (/opt/keenetic-entware-extras/smartdns-redirect/scripts/watchdog.sh)
будут появляться в syslog всегда (это cron логирует сам факт запуска job). Но watchdog тут же делает exit 0 на первой проверке is_service_enabled и ничего не трогает.

Если пользователю мешает даже видеть строки в syslog, можно добавить удаление cron-записи в disable и восстановление в enable

Опубликовано
5 hours ago, RWH said:

После обновления на новые версии, возникает ошибка с запуском сервиса Geo-Split, при откате на стабильную версию проблем не наблюдаю

Доброго дня!

Возможно не установлен пакет `coreutils-touch`
(BusyBox `touch` не поддерживает `-d @epoch`. Если `coreutils-touch` не установлен (новая зависимость), `update-domains.sh` падает с ошибкой.)
 

 

2 hours ago, RWH said:

В версии keenetic-entware-extras` 0.9.5 и 0.12.0 отсутствует скрипт диагностики который должен располагаться по ниже указанному вами пути

Добавлен в версию 0.12.1+
Если `coreutils-touch` не помогает, пожалуйста, пришлите вывод диагностики

Опубликовано
1 час назад, 0xkee сказал:

Возможно не установлен пакет `coreutils-touch`
(BusyBox `touch` не поддерживает `-d @epoch`. Если `coreutils-touch` не установлен (новая зависимость), `update-domains.sh` падает с ошибкой.)

Пакет `coreutils-touch` был установлен в системе.

После обновления пакета "keenetic-entware-extras" до версии 0.12.1 все сервисы нормально стартовали и работают нормально. (приложен файл Статус CLI.txt)

Но при этом ошибка присутствует в веб интерфейсе

image.thumb.jpeg.8e5d4573cc9279969e97e840980c4b31.jpeg

Прикладываю файл диагностики

Вывод диагностики.txt Статус CLI.txt

Опубликовано (изменено)
1 hour ago, RWH said:

Но при этом ошибка присутствует в веб интерфейсе

Поправлено,
обновите, пожалуйста, geo-split + webui
рекомендуются новые версии всех пакетов

ps
по выхлопу диагностики, кстати, всё работает идеально...

Изменено пользователем 0xkee
typo

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...

Важная информация

На этом сайте используются файлы cookie. Нажимая "Я принимаю" или продолжая просмотр сайта, вы разрешаете их использование: Политика конфиденциальности.