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

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

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

Благодаря разработчикам у нас есть возможность не городя огород использовать SNMP из прошивки. Но как выяснилось, часть инфы там получить нельзя. Поэтому можно поставить snmp из пакетов и получить недостающие данные.

В данном примере это загрузка CPU, памяти, памяти в % и tun интерфейса от OVPN.

Безымянный.jpg

Для этого нам понадобится установленный entware и snmpd-static, ndmq.

Подключаемся к кинетику по SSH.

Вводим в консоли:

opkg update
opkg upgrade
opkg install snmpd-static

Проверяем наличие ndmq:

~ # ndmq -p "show system" -x
<response>
    <hostname>border</hostname>
    <domainname>WORKGROUP</domainname>
    <cpuload>1</cpuload>
    <memory>53592/262144</memory>
    <swap>0/0</swap>
    <memtotal>262144</memtotal>
    <memfree>72784</memfree>
    <membuffers>104560</membuffers>
    <memcache>31208</memcache>
    <swaptotal>0</swaptotal>
    <swapfree>0</swapfree>
    <uptime>86688</uptime>
    <prompt>(config)</prompt>
</response>
~ #

Если видим данные все ОК, если нет то:

opkg install ndmq

После успешной установки идем в "/opt/etc"

Ищем каталог "snmp", если его нет создаем и помещаем в него 2 файла из архива из папки "snmp" или можно скопировать всю папку. Файл "S60snmpd" кладем в "/opt/etc/init.d".

После того как все скопировали в нужные места нужно сделать 2 скрипта исполняемыми, один в каталоге "/opt/etc/snmp/system.sh", это скрипт получения инфы из прошивки с помощью ndmq и второй "/opt/etc/init.d/S60snmpd"

chmod +x /opt/etc/init.d/S60snmpd
chmod +x /opt/etc/snmp/system.sh

После этого запускаем демона snmp

/opt/etc/init.d/S60snmpd start

и проверяем, что он работает

~ # ps | grep snmp
  426 root      5204 S    snmpd
  438 root      4000 S    /usr/sbin/mini_snmpd -n -s -D Keenetic Ultra II (NDMS v2.08(AAUX.2)A7) -c xxx
30230 root      1632 S    grep snmp
~ #

Видим, что все хорошо.

Проверяем вывод snmp:

snmpwalk -v2c -c public IP_КИНЕТИКА:10161 .1.3.6.1.4.1.2021.8.1.101.1

На выходе должно быть:

UCD-SNMP-MIB::extOutput.1 = STRING: TOTAL:262144 USAGE:52124 PERCENT:19 CPU:1

TOTAL:262144  - всего памяти

USAGE:52124  - используется памяти

PERCENT:19  - процент используемой памяти

CPU:1 - загрузка CPU

Архивчик:

 

Что-то получилось как-то сложно.....:shock:

Дальше у меня это в cacti распарсивается PHP скриптом, но это другая история.

В конфигурационном файле указан протокол udp и порт 10161.

Если не нужны графики по CPU и памяти то статистику того же tun интерфейс вы свободно получите.

Если слишком сложно то лучше инструкцию удалить.

snmp.rarПолучение информации...

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

~ # opkg install snmpd-static
Installing snmpd-static (5.4.4-2a) to root...
Downloading http://pkg.entware-keenetic.ru/binaries/keenle/snmpd-static_5.4.4-2a_keenle.ipk.
Installing libopenssl (1.0.2h-1) to root...
Downloading http://pkg.entware-keenetic.ru/binaries/keenle/libopenssl_1.0.2h-1_keenle.ipk.
Installing zlib (1.2.8-1) to root...
Downloading http://pkg.entware-keenetic.ru/binaries/keenle/zlib_1.2.8-1_keenle.ipk.
Configuring zlib.
Configuring libopenssl.
Configuring snmpd-static.
~ # ndmq -p "show system" -x
<response>
    <hostname>Keenetic</hostname>
    <domainname>WORKGROUP</domainname>
    <cpuload>1</cpuload>
    <memory>32556/131072</memory>
    <swap>12180/614392</swap>
    <memtotal>131072</memtotal>
    <memfree>15508</memfree>
    <membuffers>328</membuffers>
    <memcache>82680</memcache>
    <swaptotal>614392</swaptotal>
    <swapfree>602212</swapfree>
    <uptime>19831</uptime>
    <prompt>(config)</prompt>
</response>
~ # opkg install ndmq
Package ndmq (1.0.2-1) installed in root is up to date.
~ # chmod +x /opt/etc/init.d/S60snmpd
~ # chmod +x /opt/etc/snmp/system.sh
~ # /opt/etc/init.d/S60snmpd start
 Starting snmpd... Segmentation fault
Segmentation fault
Segmentation fault
Segmentation fault
Segmentation fault
Segmentation fault
Segmentation fault
Segmentation fault
Segmentation fault
Segmentation fault
Segmentation fault
Segmentation fault
Segmentation fault
Segmentation fault
             failed.
~ # ps | grep snmp
Segmentation fault
~ # /opt/etc/init.d/S60snmpd stop
 Checking snmpd... Segmentation fault
             dead.
~ #

 

Можете подсказать что это за ошибка Segmentation fault? Можно ли её исправить? Такая же ошибка у меня возникает при попытке установки пакета aMule.

Опубликовано (изменено)

Не знаю чем вам и помочь. У меня на Ultra 1 такой ошибки не возникает. 

Может кто ещё чего подскажет.

Попробуйте вместо  snmpd-static просто  snmpd.

Изменено пользователем dexter
Опубликовано
  Показать контент

 

Опубликовано
  В 18.09.2016 в 09:50, TheBB сказал:
  Показать контент

 

Показать  

Спасибо за помощь. Отсутствовал пакет libnetsnmp. Установил этот пакет, но это не помогло, ошибки шли по прежнему. Тогда отформатировал раздел винчестера с установленым Entware, снова всё сделал по Вашей инструкции, установив отдельно пакет libnetsnmp и всё заработало.

Но как я понял без установки и настройки cacti никаких графиков видно не будет?

Опубликовано (изменено)

Без  cacti или подобного ничего не увидите. cacti templates могу выложить архивчиком, как и php скрипт.

Изменено пользователем dexter
Опубликовано (изменено)
  В 19.09.2016 в 10:30, dexter сказал:

Без  cacti или подобного ничего не увидите. cacti templates могу выложить архивчиком, как и php скрипт.

Показать  

Выложите пожалуйсто все недостающие файлы, а также инструкцию в какие папки нужно закинуть эти файлы и какой коммандой запустить вывод этих графиков. Ещё не понятно каким образом можно будет увидеть эти графики, правильно ли я понимаю что графики будут открываться в отдельном окне браузера, а открыть это окно можно будет введя IP роутера и определённый порт? Заранее спасибо за ответы.

Изменено пользователем beowulf0208
Опубликовано

На кинетике не получится. Я делал на Ultra 2, ставив Debian на флешку и в момент запросов sql загрузка CPU было около 100%. На  Keenetic II  вряд ли получится установить.

Опубликовано
  В 20.09.2016 в 10:48, dexter сказал:

На кинетике не получится. Я делал на Ultra 2, ставив Debian на флешку и в момент запросов sql загрузка CPU было около 100%. На  Keenetic II  вряд ли получится установить.

Показать  

Спасибо за совет, тогда не буду пытаться это сделать.

Опубликовано
  В 19.09.2016 в 10:30, dexter сказал:

Без  cacti или подобного ничего не увидите. cacti templates могу выложить архивчиком, как и php скрипт.

Показать  

Это вы зря, есть еще примеры другие и даже в этой теме.
 

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

В данной теме уже были примеры и графики

Рабочий Windows на любом ПК и приложение PRTG (кол-во счетчиков большая куча, только в trial есть ограничения - на одновременное использование из большого выбора определенного кол-ва после 30 дней, но это решаемо). Для домашнего пользователя и его потребностей достаточно + минимальное что нужно сделать на роутере и на ПК + рисунок (карта) где что стоит созданная самим пользователем и ведение лога с посылкой предупреждений куда угодно.

Для подсчета же только трафика наверное достаточно создать скрипт для работы с contrack и сохранение информации их него например в файле
 

...
/tmp # grep 192.168.130.2 /proc/net/arp | awk 'BEGIN { printf "{arp::"} { printf "'\''%s'\'','\''%s'\'',",$1,$4; } END { print "'\''-'\''}"}' >> /tmp/traffic
.dat
/tmp # awk 'BEGIN { printf "{hosts::"} { printf "'\''%s'\'','\''%s'\'',",$1,$2; } END { print "'\''<% show_wanipinfo(); %>'\''}"}' /tmp/hosts >> /tmp/traffic
.dat
/tmp # awk 'BEGIN { printf "{ip_conntrack::"} { gsub(/(src|dst|sport|dport|mark)=/, ""); printf "'\''%s'\'','\''%s'\'','\''%s'\'','\''%s'\'','\''%s'\'',%s,",
$1,$1 == "tcp" ? $5 : $4,$1 == "tcp" ? $7 : $6,$1 == "tcp" ? $6 : $5,$1 == "tcp" ? $8 : $7,$(NF-1); } END { print "'\''-'\''}"}' /proc/net/ip_conntrack >> /t
mp/traffic.dat
...

Далее обработать данный файл для вывода информации в WEB страницы.

Вопрос только с корректностью данных значений при использовании на чипах Mediatek и их аппаратной обработке PPPoE

Опубликовано
  В 21.09.2016 в 07:21, vasek00 сказал:

В данной теме уже были примеры и графики

Рабочий Windows на любом ПК и приложение PRTG (кол-во счетчиков большая куча, только в trial есть ограничения - на одновременное использование из большого выбора определенного кол-ва после 30 дней, но это решаемо). Для домашнего пользователя и его потребностей достаточно + минимальное что нужно сделать на роутере и на ПК + рисунок (карта) где что стоит созданная самим пользователем и ведение лога с посылкой предупреждений куда угодно.

Для подсчета же только трафика наверное достаточно создать скрипт для работы с contrack и сохранение информации их него например в файле
 

...
/tmp # grep 192.168.130.2 /proc/net/arp | awk 'BEGIN { printf "{arp::"} { printf "'\''%s'\'','\''%s'\'',",$1,$4; } END { print "'\''-'\''}"}' >> /tmp/traffic
.dat
/tmp # awk 'BEGIN { printf "{hosts::"} { printf "'\''%s'\'','\''%s'\'',",$1,$2; } END { print "'\''<% show_wanipinfo(); %>'\''}"}' /tmp/hosts >> /tmp/traffic
.dat
/tmp # awk 'BEGIN { printf "{ip_conntrack::"} { gsub(/(src|dst|sport|dport|mark)=/, ""); printf "'\''%s'\'','\''%s'\'','\''%s'\'','\''%s'\'','\''%s'\'',%s,",
$1,$1 == "tcp" ? $5 : $4,$1 == "tcp" ? $7 : $6,$1 == "tcp" ? $6 : $5,$1 == "tcp" ? $8 : $7,$(NF-1); } END { print "'\''-'\''}"}' /proc/net/ip_conntrack >> /t
mp/traffic.dat
...

Далее обработать данный файл для вывода информации в WEB страницы.

Вопрос только с корректностью данных значений при использовании на чипах Mediatek и их аппаратной обработке PPPoE

Показать  

В случае с аппаратным PPPoE записи в conntrack корректны, только счетчики содержат в себе мусор.

Опубликовано
  В 21.09.2016 в 08:50, Le ecureuil сказал:

В случае с аппаратным PPPoE записи в conntrack корректны, только счетчики содержат в себе мусор.

Показать  

ОК - СПС

  • 5 лет спустя...
Опубликовано

Здравия!

До этого несколько раз ставил этот пакет и всё было нормально. Определил, что теперь вместо

opkg install snmpd-static

нужно писать

opkg install snmpd

А вот теперь при попытке

opkg install ndmq

Пишет

~ # opkg install ndmq
Unknown package 'ndmq'.
Collected errors:
 * opkg_install_cmd: Cannot install package ndmq.

Ну и соответственно дальше ничего не работает. Может кто нибудь подсказать, что нужно ставить?

 

 

Опубликовано
  В 09.12.2021 в 17:19, feoser сказал:

Ну и соответственно дальше ничего не работает. Может кто нибудь подсказать, что нужно ставить?

Показать  

Переходить/переписывать на RCI или ставить из архива (напр., для mipsel - http://bin.entware.net/mipselsf-k3.4/keenetic/archive/). Первым ставить "libndm", вторым "ndmq".

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

Спасибо за ответ. Самое, что интересное, решил выполнить все действия без установки ndmq и о чудо и без него PRTG прекрасно всё забирает.

  • 1 год спустя...
Опубликовано

4.0 Beta 0.1

SNMP для ARM.

/usr/lib # snmpd -c /opt/etc/snmp/snmpd.conf
snmpd: /usr/lib/libcrypto.so.1.1: version `OPENSSL_1_1_0' not found (required by /opt/lib/libnetsnmp.so.40)
/usr/lib # 
/usr/lib # ls -l | grep libnetsnmp
/usr/lib # ls -l | grep ssl
-rwxr-xr-x    1 root     root        503016 May  6 21:22 libssl.so.3
drwxr-xr-x    2 root     root            32 May  6 21:22 ossl-modules
/usr/lib # ls -l | grep crypto
lrwxrwxrwx    1 root     root            14 May  6 21:22 libcrypto.so -> libcrypto.so.3
lrwxrwxrwx    1 root     root            14 May  6 21:22 libcrypto.so.1 -> libcrypto.so.3
lrwxrwxrwx    1 root     root            14 May  6 21:22 libcrypto.so.1.1 -> libcrypto.so.3
-rwxr-xr-x    1 root     root       3248688 May  6 21:22 libcrypto.so.3
/usr/lib # opkg list-installed *snmp*
libnetsnmp - 5.9.1-1
mini_snmpd - 1.6-3
snmp-mibs - 5.9.1-1
snmp-utils - 5.9.1-1
snmpd - 5.9.1-1
snmptrapd - 5.9.1-1
/usr/lib #

 

Опубликовано (изменено)
  В 11.05.2023 в 19:28, Александр Рыжов сказал:

@vasek00, ldd `which snmpd`

Показать  

 

  Показать контент

 

Изменено пользователем vasek00
Опубликовано
  В 12.05.2023 в 05:37, Александр Рыжов сказал:

Похоже на это.

opkg --force-reinstall install libnetsnmp

 

Показать  

Помогло но только вот так

opkg --force-reinstall install libnetsnmp
Removing package libnetsnmp from root...
Installing libnetsnmp (5.9.1-1) to root...
Downloading http://bin.entware.net/aarch64-k3.10/libnetsnmp_5.9.1-1_aarch64-3.10.ipk
Configuring libnetsnmp.

opkg --force-reinstall install snmpd
Removing package snmpd from root...
Installing snmpd (5.9.1-1) to root...
Downloading http://bin.entware.net/aarch64-k3.10/snmpd_5.9.1-1_aarch64-3.10.ipk
Configuring snmpd.

lsof -p 7047
COMMAND  PID USER   FD      TYPE  DEVICE SIZE/OFF    NODE NAME
snmpd   7047 root  cwd       DIR    31,7      227    1974 /
snmpd   7047 root  rtd       DIR    31,7      227    1974 /
snmpd   7047 root  txt       REG     8,3    22536  663630 /opt/sbin/snmpd
snmpd   7047 root  mem       REG     8,3  2931760  389124 /opt/usr/lib/locale/locale-archive
snmpd   7047 root  mem       REG     8,3   105168  237582 /opt/lib/libpthread-2.27.so
snmpd   7047 root  mem       REG     8,3    84160  237604 /opt/lib/libresolv-2.27.so
snmpd   7047 root  mem       REG     8,3    83960  237612 /opt/lib/libgcc_s.so.1
snmpd   7047 root  mem       REG     8,3  4475144  237983 /opt/lib/libcrypto.so.3
snmpd   7047 root  mem       REG     8,3   735216  237615 /opt/lib/libm-2.27.so
snmpd   7047 root  mem       REG     8,3  1431816  237614 /opt/lib/libc-2.27.so
snmpd   7047 root  mem       REG     8,3   124920  237748 /opt/lib/libnl-3.so.200.26.0
snmpd   7047 root  mem       REG     8,3   251848  237986 /opt/lib/libpcre.so.1.2.13
snmpd   7047 root  mem       REG     8,3    14312  237576 /opt/lib/libdl-2.27.so
snmpd   7047 root  mem       REG     8,3    55584  237756 /opt/lib/libpci.so.3.8.0
snmpd   7047 root  mem       REG     8,3   566432  237758 /opt/lib/libnetsnmp.so.40.1.0
snmpd   7047 root  mem       REG     8,3   429744  237764 /opt/lib/libnetsnmpmibs.so.40.1.0
snmpd   7047 root  mem       REG     8,3   300960  237760 /opt/lib/libnetsnmpagent.so.40.1.0
snmpd   7047 root  mem       REG     8,3   136952  237613 /opt/lib/ld-2.27.so
snmpd   7047 root    0u      CHR     1,3      0t0      58 /dev/null
snmpd   7047 root    1u      CHR     1,3      0t0      58 /dev/null
snmpd   7047 root    2u      CHR     1,3      0t0      58 /dev/null
snmpd   7047 root    3w      REG     8,3       71  684072 /opt/var/log/snmpd.log
snmpd   7047 root    4r     FIFO     0,8      0t0 2706489 pipe
snmpd   7047 root    5w     FIFO     0,8      0t0 2706489 pipe
snmpd   7047 root    6u  netlink              0t0 2706492 ROUTE
snmpd   7047 root    7u     IPv4 2706911      0t0     UDP *:snmp 

 

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

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

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

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

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

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

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

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

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

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

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

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