View Full Version : Мониторинг через SNMP
Купили себе сабжевые точки доступа - установили, пашет ) Порадовала стабильность связи и отсутствие D-Linkовских проблем с броадкастами.. порадовало что там внутри линуксоид )
Скачал поршивку модифицированную с SSH и SNMP, всвязи с этим появилась пара вопросов:
1) Где найти нормального сборщика статистики по SNMP который умеет настраивать такие точки и строит графики
2) Как поставить пароль на SNMP? Сама точка по умолчанию дает RW, а в настройках акромя community ничего подобного нет (
3) Реально ли сделать приоритезацию траффика на ней ? Например чтобы при появлении траффика на определенный хост он шел в первую очередь, а все остальное автоматом становилось в очередь.
Может быть кто-нибудь уже сталкивался с такими проблемами ?
P.S: Возможно это оффтоп, но я не нашел русского форума по 300g
Купили себе сабжевые точки доступа - установили, пашет ) Порадовала стабильность связи и отсутствие D-Linkовских проблем с броадкастами.. порадовало что там внутри линуксоид )
Скачал поршивку модифицированную с SSH и SNMP, всвязи с этим появилась пара вопросов:
1) Где найти нормального сборщика статистики по SNMP который умеет настраивать такие точки и строит графики
полазь по форуму, поищи... например http://wl500g.info/showthread.php?t=2719 рекомендуют http://www.cacti.net/
Если речь про мою прошивку, то нет там r/w. Всё r/o. Паролей тоже нет, поскольку v3 не поддерживается. Меняйте community.
Форум по всем устройствам построенным на броадкоме здесь. :)
Спасибо за ответы ) Дело в том что я-таки могу поменять имя устройства и информацию о нем. Файл прошивки назывался WL300g-1.9.2.7-6a.trx, качал кажется с этого сервера, к сожалению не помню откуда точно ( Если сейчас найду где посмотреть - напишу. А как насчет приоритезации ? Реально клиенты не довольны, когда появляется умник который качает что-то сильно, падает интернет ( Хотелось бы чтобы HTTP был на максимуме, а например SMB обрезался на самый минимум.
Спасибо за ответы ) Дело в том что я-таки могу поменять имя устройства и информацию о нем.
А Вы уверены, что эта информация меняется на устройстве, а не у Вас локально в утилите, которую Вы используете? В любом случае, после перезагрузки устройства всё должно сбрасываться. У Вас так происходит?
А как насчет приоритезации ? Реально клиенты не довольны, когда появляется умник который качает что-то сильно, падает интернет ( Хотелось бы чтобы HTTP был на максимуме, а например SMB обрезался на самый минимум.
В каком режиме работает wl300g? Если как точка доступа, то увы. Резать в таком случае надо на роутере, если как гейтвей, то там есть wshaper. В telnet можете поупражняться. Плюс поиск по англоязычному форуму.
Не зню, не знаю .. надо проверить, но помоему после удаления точки из проги, при поиске она находит именно с тем именем которое я задал ... Ладно, не важно, SNMP позже ) Сейчас с ними реальная проблема - один качает, все лежит ...
Сейчас точка в AP- режиме, если я ее переключу в режим "разделение доступа к интернету", т.е. попросту говоря, врублю ее роутером с подключением к серверу посредствам PPPoE канала, то получится что у меня весь левый траффик пойдет через сервер ? Насчет wshaper можно подробнее, он в точке есть ? Эх.. жаль сейчас на работе, а то посмотрел бы :)
Хотябы сделать так чтобы полоса равномерно распределялась между пользователями, т.е. PerClient = MAXBandwith / ClientsNum . Поверх соединения через точку устанавливается VPN соединение к локальному серверу, который посылает все в инет, так вот это соединение начинает рваться, когда кто-нить начинает качать, народ говорит что прямо как модем ((
Там есть wshaper (т.е. стандартный скрипт), а если этого мало - то там есть и всё остальное - несколько шейперов, tc, ip. В общем можно сделать что угодно.
хм.. прошивка с oleg.wl500g.info - я так понял твоя ) latest (1.9.2.7-6). Все, разобрался с wshaper :) Буду терь искать доки про QoS :)
Прошил свой WL500gP последней прошивочкой 7f, запустил snmpd, cacti на внешней машине заставил увидеть девайс. Cacti даже рисует графики загрузки всех интерфейсов (vlan0,1,2,br0,eth0) - тут проблем нету.
Load Average смог нарисовать с помощью темплейта ucd/net Load Average.
Память свободная также рисуется с помощью usd/net Free Memory.
А вот с загрузкой процессора нелады. Ни ucd/net CPU usage, ни Cisco CPU Usage (бред конечно, но попробовал :) ) - не рисуют. Везде нули. Хотя load говорит что-то о 0.2-0.4 в моменты загрузки.
Не мог бы кто-нибудь поделиться шаблоном графика для cacti, чтобы нарисовать этот график? Или подсказать, где найти этот параметр загрузки.
Спасибо за внимание.
И Олегу отдельно за прошивку.
Всё решилось подключением диска и установкой пакета net-snmp.
Встроенный UCD-snmp 3.6.2 не показывал загрузку процессора. А новый нормально показывает.
[QUOTE=Rahhal;50470]Прошил свой WL500gP последней прошивочкой 7f, запустил snmpd, cacti на внешней машине заставил увидеть девайс. Cacti даже рисует графики загрузки всех интерфейсов (vlan0,1,2,br0,eth0) - тут проблем нету.
а не могбы расписать по подробней процес настройки в какти?
IP Config - SNMP
SNMP использую для отслеживания загрузки канала на роутере.
также поднят сервис DYNDNS на роутере.
проверил сервис SNMP виден как с локалки, так и по внешнему адресу xxx.dyndns.org.
1)можно ли как то сделать так, чтобы сервис SNMP был виден только из LAN, а с внешки был невидим?
2) за что отвечают эти параметры в [IP Config - SNMP]?
Community name:
System location:
System contact:
3) на сколько опасно оставлять сервис SNMP видимым из внешки?
Есть задачка. Имеем WL500gp, сидящий на CDMA. Есть некая железка (самодельный микроконтроллер), которую проще всего прицепить к принтерному порту. Хочу написать мелкую прогу, которая будет нечто мое читать из принтерного порта и кидать трапы по snmp. Toolchain есть и "hello world" работает.
Посоветуйте, где поискать инфу про asus'овский lpt. Он bi-dir или нет? Как какие пины доступны и т.п.? Как с ним можно работать...?
Пардон. по работе с портом нашел две темы.
Однако, если кто-то может дать ссылку на инфу про _железные_ возможности, то буду признателен...
Вы WL500gp видели? Нет там LPT порта. Он был только у оригинальных WL500g/b. Порт там был двунаправленный конечно. Программировать как и любой LPT порт в Линуксе.
Олег.
Я имел в виду Premium.
"Обычный" сопосб это ioctl? Мне никогда не приходилось ничего делать с LPT. Сетевые драйвера для Riscom портил под Free 1.1.5.1 лет 15 назад. С тех пор на "административной работе" и порядком все подзабыл...
В премиуме нет LPT порта.
Нда, привыкнув смотреть на просто WL500g, я почему-то не обратил внимание на отсутствие этого разъема на спине премиума...
Ок. Тем не менее, допустим, что я применю не купленный в магазине премиум, а старый, бесхозный, найденный на пыльной полке wl500g. Можете подкинуть направление поисков инфы как сделать то, о чем я писал выше? Можно, конечно начать исследовать вопрос с usb, но это еще более длинная дорога получится :(
гугль рулит
ppdev ioctl
сам ppdev.o здесь - http://oleg.wl500g.info/bin/ppdev.o
Уваэаемые гуру,
Можно ли выполнить данный трюк? Это удобно при скачивании с rapideshare, т.к. при каждом новом соединении провайдер назначает новый публичый адрес.
Или так, можно ли иметь два соединения PPTP, одно между моим раутером и провайдером, а другое между компьютером в моей домашней сети и провайдером? Вопрос относиться к фунциональности асуса, а не о возможностях профайдера.
Нет, SNMP read-only.
Можно сделать ярлык, который будет делать killall -1 pppd . Поиск в руки.
После подключения к интернету через Asus, заметил что если docsis модем не подключился с первого раза, минут через 5 он автоматом пытается переподключиться (мигает лампочками) и т.д. Это фишка роутера или мне так показалось?
Если все же роутера - то как он это делает? По snmp или еще как-то? Мне нужно иницировать рестарт модема вручную, и я хочу узнать как это делать.
Прошивка родная, с подключением к провайдеру ничего не настраивал - роутер сам все определяет.
Если еще актуально - у snmp вроде как есть какой-то порт, вот и закрой его через iptables
скорее модема.
Как его администрировать то можно --- веб ИФ есть? Телнет есть?
Есть ли web interface, telnet - пока особо не разбирался, telnet на стандартном порте точно нету, web interface вроде нашел, только что. Но там одна информация - никаких кнопок нету
если есть веб-интерфейс, из которого можно выполнить перезагрузку, то попытайтесь разобраться какая комманда при этом посылается в модем. А как Вы это по другому себе представляли?
Ясно. Скорее всего, человек проверял доступность коннектом на внешний IP вместо 192.168.1.1, а надо было через какой-нибудь Web сервис, вроде www.auditmypc.com. Я в таком случае проверяю пуская пакеты с другого сетевого интерфейса, например Dialup'ного...
sergey_privacy
01-10-2009, 15:00
Добрый день!
Возникло несколько вопросов. Имеется несколько маршрутизаторов DLINK 320 с последней прошивкой. Необходимо автоматически ежедневно менять WEP-пароли. В данный момент написал скрипт на пхп, который через сокеты заходит на telnet-сервер каждого маршрутизатора и меняет пароли (nvram set wl_key1...). Но данная реализация меня не совсем устраивает и необходимо расширить функционал.
1. Можно ли менять пароли по SNMP?
2. Можно ли добавить свои ключи SNMP? Например, я хочу данные из различных скриптов сделать доступными по SNMP для централизованного сбора статистики.
off-top
В данный момент написал скрипт на пхп
может выложите скрипт, а? Мне он интересен в качестве "учебного пособия"
sergey_privacy
06-10-2009, 09:52
Мануалов по работе с телнетом через curl я не нашел, поэтому пришлось эмулировать работу через сокеты. Для лучшего понимания работы скрипта немного опишу структуру сети и мою задачу. Есть адсл-модем (192.168.1.1), и 6 маршрутизаторов (192.168.1.2-192.168.1.7). На 192.168.1.6 стоит флэшка с софтом, оттуда и запускается скрипт. Требуется ежедневно менять пароли на WEP на всех маршрутизаторах одновременно. Иногда мне доступ для управления возможен только через wifi, поэтому надо знать, какой пароль установлен. Зная алгоритм генерации, который привязан к дате, на другой машине можно сгенерить тот же пароль.
Этот скрипт вставил в крон на одном маршрутизаторе, теперь он автономно всем все меняет.
<?
$i = 1;
$genered_password=substr(hexdec(substr(md5(date("dmtYWjwz")+date("dmtYWjwz")), 0, 10)), 0, 10);
$wl0_key1=exec("nvram get wl0_key1");
echo "genered password: $genered_password wl0_key1: $wl0_key1\r\n";
if($genered_password !== $wl0_key1)
{
echo "Passwords not match and will be now set!!!";
$remote_command="nvram set wl_key1=$genered_password&&nvram set wl0_key1=$genered_password&&nvram commit&&reboot";
while ($i++ < 7)
{
if($i==6)
{
continue;
}
$address="192.168.1.$i";
echo "Starting connect to $address    : ";
flush();
$socket = socket_create (AF_INET, SOCK_STREAM, 0);
if (!$socket)
{
die("socket_create() failed!\n<br><br>");
}
$result = socket_connect($socket, $address, "23");
if (!$result)
{
echo " Failed!!!\n<br><br>";
}
else
{
$in = "";
$out = '';
socket_read ($socket, 100);
socket_read ($socket, 100);
socket_write ($socket, "pupkin\r\n");
socket_read ($socket, 6);
socket_read ($socket, 10);
sleep(1);
socket_write ($socket, "Lh3SGKthMf\r\n");
sleep(1);
socket_write ($socket, "$remote_command \r\n");
sleep(1);
socket_close ($socket);
echo "Sucesfully!!!<br><br>";
flush();
}
}
passthru("nvram set wl_key1=$genered_password&&nvram set wl0_key1=$genered_password&&nvram commit&&reboot");
}
else
{
echo "Passwords match!!!";
}
?>
Комменты были нужны на стадии отладки, в процессе можно убрать
Этот скрипт
СПАСИБО!!!
буду изучать/учиться...
sergey_privacy
07-10-2009, 08:00
СПАСИБО!!!
буду изучать/учиться...
Если не секрет, то чему? Эмуляция работы телнет-протокола? Вариант не очень "прямой". Затачивался под конкретные коробки. Через curl более правильно было бы, да и в сети существуют классы для более прозрачной работы с телнетом. Просто я не нашел нормальных доков по работе с телнетом через curl-php, а изучать чужие классы было некогда. Как всегда, задачу надо было решить "еще вчера". Поэтому что то быстро нашел из прошлых скриптов управления другими железками и подправил под нужную задачу.
Эмуляция работы телнет-протокола?
да. меня заинтересовал именно этот момент.
sergey_privacy
20-10-2009, 15:15
да. меня заинтересовал именно этот момент.
Я бы порекомендовал найти готовые классы для пхп, которых нашел несколько штук. Если есть время разобраться, лучше изучить универсальный алгоритм работы с телнетом через сырые сокеты. Использование моей программы с любым другим оборудованием не получится без дополнительной обработки напильником. Если найдете достаточно понятную документацию по использованию curl, то сможете работать с телнетом на более высоком уровне.
Lupo_Alberto
20-10-2009, 16:31
А почему бы не использовать возможность ssh запускать программы (скрипты) при входе на хост (роутер в данном случае)?
pelmencheg
04-05-2011, 13:51
Привет всем! Возникла проблема с работой SNMP в роутере RT-N16. Дело в том что демон работает только первые 3-5 минут после старта/рестарта,и потом сам отключается,уже и не знаю где копать,видимо косяк в самой прошивке(от Олежи-RT-N16-1.9.2.7-rtn-r2775.trx). Может кто сталкивался с такой проблемой?? Мониторинг портов позарез нужен! Спасибо :)
pelmencheg
Проблема не воспроизводиться. Возможно, демона убивает какой-нибудь из левых скриптов.
Thinkpad_fan
21-10-2011, 23:51
Вкратце расскажу как поднимал snmpd на моем WL500GP.
Ставим из оptware и сразу останавливаем.
ipkg install net-snmp
/opt/etc/init.d/S70net-snmp stop
kill `pidof snmpd`
net-snmp-config ругается на /bin/ps -> надо править.
nano /opt/bin/net-snmp-config
находим
--create-snmpv3-user)
if /bin/ps -e
и заменяем /bin/ps на /opt/bin/ps.
А вот минимальный рабочий конфиг /opt/etc/snmpd.conf
agentAddress ip-роутера:161
rouser thinkpad_fan
Добавляем юзверя и запускаем
net-snmp-config --create-snmpv3-user -ro -a пароль -X DES -A SHA thinkpad_fan
/opt/etc/init.d/S70net-snmp start
Проверить работу можно на любой Linux-машине с установленным snmp
snmpwalk -v 3 -u thinkpad_fan -l auth -a SHA -A пароль ip-роутера
Единственная проблема заключается в том что, после каждой перезагрузки роутера net-snmp-config --create-snmpv3-user приходится запускать заново. А так работает нормально. Демон отжирает где-то 3МВ RAM. Многовато конечно, но терпимо.
Если у кого есть iPhone/iPad/iPod touch, советую поставить SNMPmon
http://itunes.apple.com/us/app/snmpmon/id327344119?mt=8
Стоит правда 5 баксов, зато очень удобно проверять статус роутера. SNMPv3 поддерживается, работает с выше описанными настройками.
TheFatal
26-01-2012, 12:24
добрый день, я давно хотел мониторить сетевые интерфейсы с помощью snmp и cacti, установил на роутер прошивку WL500gp-1.9.2.7-d-r2624, к snmp обратиться могу: snmpwalk -v 2c -c public 10.0.0.1 | less
показывается информация
IF-MIB::ifSpeed.1 = Gauge32: 10000000
IF-MIB::ifSpeed.2 = Gauge32: 0
IF-MIB::ifSpeed.3 = Gauge32: 10000000
IF-MIB::ifSpeed.4 = Gauge32: 10000000
IF-MIB::ifSpeed.5 = Gauge32: 0
IF-MIB::ifSpeed.6 = Gauge32: 0
IF-MIB::ifSpeed.7 = Gauge32: 0
и много еще разной
вопросы: какой именно параметр отвечает за входящий/исходящий трафик на портах роутера ? может ли кто-нибудь поделиться, если есть, таким шаблоном для cacti ?
добрый день, я давно хотел мониторить сетевые интерфейсы с помощью snmp и cacti, установил на роутер прошивку WL500gp-1.9.2.7-d-r2624, к snmp обратиться могу: snmpwalk -v 2c -c public 10.0.0.1 | less
показывается информация
IF-MIB::ifSpeed.1 = Gauge32: 10000000
IF-MIB::ifSpeed.2 = Gauge32: 0
IF-MIB::ifSpeed.3 = Gauge32: 10000000
IF-MIB::ifSpeed.4 = Gauge32: 10000000
IF-MIB::ifSpeed.5 = Gauge32: 0
IF-MIB::ifSpeed.6 = Gauge32: 0
IF-MIB::ifSpeed.7 = Gauge32: 0
и много еще разной
вопросы: какой именно параметр отвечает за входящий/исходящий трафик на портах роутера ? может ли кто-нибудь поделиться, если есть, таким шаблоном для cacti ?
Ну например отсюда http://www.zyxmon.org/download.php загружаете Asus Monitor, настраиваете, узнаете необхожимые вам OID )