Page 5 of 11 FirstFirst ... 34567 ... LastLast
Results 61 to 75 of 159

Thread: Мониторинг сети с помощью Asus WL-500gP (rrdtool&iftop)

  1. #61
    Quote Originally Posted by Alex333 View Post
    all -- anywhere WL-001E8C3E0826
    По видимому это host-name вашего роута. В любом случае выкладываю доработанный скрипт, с проверкой введенных ip.
    Quote Originally Posted by Alex333 View Post
    И еще вопрос, в index.cgi, ссылки на графики идут без /rrd/, соответственно приходится править, иначе не показываются. Что нужно подправить, в rrd.sh, что бы при создании index.cgi пути в нем были верными?
    Для этого в новом скрипте добавил переменную "IMG_WWW" - это относительный путь до директории с картинками, относительно root-директории сервера, без завершающего слеша. Если Вы хотите, чтобы картинки лежали там же где и скрипты, то IMG_WWW="" (так по умолчанию).
    В Вашем случае, Alex333, IMG_WWW="/rrd".
    Тем кто пользуется httpd к переменной "cgi" нужно добавить "cgi-bin".

    Насчет ip, если опять будет появляться сообщения об ошибке iptables, просьба в функцию "get_ip" перед командой "done" прописать
    Code:
    echo $ip
    и скинуть все что выводит скрипт, т.к. повторить подобную ситуацию мне не удалось.

    PS: На раздел "SMS" не обращайте пока внимания, прикручиваю sms-оповещение ).
    Attached Files Attached Files
    Last edited by A007; 11-03-2009 at 23:40.

  2. #62
    Спасибо, теперь графики показываются, все вроде работает, за исключением IP.

    Quote Originally Posted by A007 View Post
    Насчет ip, если опять будет появляться сообщения об ошибке iptables, просьба в функцию "get_ip" перед командой "done" прописать
    Code:
    echo $ip
    и скинуть все что выводит скрипт, т.к. повторить подобную ситуацию мне не удалось.
    "get_ip" - это последний который?
    Code:
    then
    	echo "IPs graphs created....."
    	get_ip
    	i=2
    	for ip_v in $ip_l
    	do
    ...
    И можно конкретней, какую форму это должно иметь? После get_ip в след. строке прописать, или i=2 заменить, или как?
    Сор, не специалист.

  3. #63
    Quote Originally Posted by Alex333 View Post
    все вроде работает, за исключением IP
    выложил в предыдущем посте обновление, теперь еще и правильность маски проверяет, у вас ругался iptables именно на нее.
    перед установкой удалите файлы ip.list и 192.168.*.rrd.
    пропишите в файле ip.list, который создаст скрипт, в строчку или столбиком ip-шники или подсети, как уже говорил можно и маской, можно и префиксом(ip/mask или ip/prephix).
    и проверяете, Unknown*.. быть не должно ).
    ps: для эксперимента вводил и Unknown/Unknown, корректно отрабатывает

  4. #64
    Боюсь Вас огорчить, но ничего не изменилось. При вводе команды sh ssr.sh, при любом заполнении ip.lst:
    Code:
    iptables v1.2.7a: invalid mask `Unknown' specified
    Try `iptables -h' or 'iptables --help' for more information.
    А вот если запустить cron, а не от руки, то появляются файлы - либо айпи, либо вся подсеть, в зависимости от заполнения. Однако и тут картинок нет. Свойства их ссылаются на файлы: Unknown_Unknown_d.png, Unknown_Unknown_w.png и т.д.

  5. #65
    Quote Originally Posted by Alex333 View Post
    Боюсь Вас огорчить, но ничего не изменилось. При вводе команды sh ssr.sh, при любом заполнении ip.lst:
    Code:
    iptables v1.2.7a: invalid mask `Unknown' specified
    Try `iptables -h' or 'iptables --help' for more information.
    А вот если запустить cron, а не от руки, то появляются файлы - либо айпи, либо вся подсеть, в зависимости от заполнения. Однако и тут картинок нет. Свойства их ссылаются на файлы: Unknown_Unknown_d.png, Unknown_Unknown_w.png и т.д.
    По видимому проблема с уровнем доступа к файлам, в cron же скрипт запускается от root-а (если ничего не путаю). Проверьте уровень доступа к файлу ip.list и поставьте на полный доступ.
    Если и это не поможет киньте переменную окружения ($PATH) и настройки: RRDDATA, RRDIMG, cgi, IMG_WWW, script и log_ip.

  6. #66
    Quote Originally Posted by A007 View Post
    По видимому проблема с уровнем доступа к файлам, в cron же скрипт запускается от root-а (если ничего не путаю). Проверьте уровень доступа к файлу ip.list и поставьте на полный доступ.
    Если и это не поможет киньте переменную окружения ($PATH) и настройки: RRDDATA, RRDIMG, cgi, IMG_WWW, script и log_ip.
    Сам запускаю от того же имени, что и cron, попробовал дать 777, ничего не изменилось. Запуск с указанием полного пути (sh /opt/traffic/rrd.sh) - так же ничего не меняет.

    /etc/profile:
    Code:
    export PATH=/opt/sbin:/opt/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/etc:/opt/etc/init.d
    PATH в crontab:
    Code:
    PATH=/sbin:/bin:/usr/sbin:/usr/bin:/opt/sbin:/opt/bin:/opt/usr/bin
    rrd.sh:
    Code:
    RRDDATA=/opt/traffic
    RRDIMG=/tmp/harddisk/www/s/rrd
    cgi="${RRDIMG}"
    IMG_WWW="/rrd"
    script="${RRDDATA}/rrd.sh"
    log_ip="${RRDDATA}/ip.list"
    PS: Кроме меня и A007, еще кто-нить юзал данный скрипт, поделитесь результатами, плз.
    Last edited by Alex333; 12-03-2009 at 14:08.

  7. #67
    Quote Originally Posted by ceramic View Post
    В cgi скрипте, который генерит страничку.
    Если мониторинг организован как в первом посте, то это -- index.cgi
    Там и прописывать, прямо с самого начала.
    Не получаеться.... генерит всем одинаково.....
    Хотя вроде всё правильно сделал, и в логах есть этот адрес
    Можно выложить ваш index.cgi, что бы я сравнил?
    Автор благодарит алфавит за любезно предоставленные буквы.
    Все вышесказанное только мое личное мнение. Если Вы с ним не согласны, что ж, это Ваше право. Я, например, зла никогда не помню, но хату спалить могу.
    IBM ThinkPad X61 Tablet + WL500GP+ WL500 Deluxe

  8. #68
    Join Date
    Jul 2008
    Location
    Kiev
    Posts
    557
    Quote Originally Posted by ThinkPad View Post
    Не получаеться.... генерит всем одинаково.....
    Хотя вроде всё правильно сделал, и в логах есть этот адрес
    Можно выложить ваш index.cgi, что бы я сравнил?
    У меня для 4-х IP показывает расширенную страницу (с возможностью перехода к страничкам с расширенной информацией), для остальных только их трафик за прошлый и текущий месяц, за сутки и за час.
    Мониторинг я делаю не по предложенному в этой теме, поэтому скрипт наверняка отличается, пониманию как происходит отсев по IP это не мешает.
    Attached Files Attached Files

  9. #69

    Может дело в ipcalc

    Решил обновить rrd скрипт на версию с подсчетом трафика по ip
    и тоже вылезла ботва про iptable.
    проверил часть скрипта про выбор ip из файла
    ip=""
    ip_l=""
    ip_s=`cat "${log_ip}"`
    for ip_ in $ip_s
    do
    a=${ip_%/*}
    v_a=`echo $a | sed 's/[0-9.]*//'`
    if [ "$v_a" = "" ]
    then
    b=${ip_#*/}
    v_a=`echo $b | sed 's/[0-9.]*//g'`
    if [ "$v_a" = "" ]
    then
    [ "$a" = "$b" ] && b='32'
    [ "${#b}" -gt 2 ] && b=" $b" || b="/$b"
    c=`ipcalc -nm "$a$b"`
    a=`echo ${c#*NETWORK=} | awk '{print $1}'`
    b=`echo ${c#*NETMASK=} | awk '{print $1}'`
    ip_l="$ip_l ""$a"_"$b"
    [ "$b" = "255.255.255.255" ] && ip="$ip $a" || ip="$ip $a/$b"
    fi
    fi
    done

    сразу ругается на неправильный ключ -m
    без ключа -m то есть запуск ipcalc -n
    требует править ниже 2 строки
    - a=`echo ${c#*NETWORK=} | awk '{print $1}'`
    + a=`echo ${c#*NETWORK=} | awk '{print $2}'`
    - b=`echo ${c#*NETMASK=} | awk '{print $2}'`
    + b=`echo ${c#*NETMASK=} | awk '{print $4}'`
    иначе выбирается текст.
    тогда надо править текст и далее
    в функции get_ip

    c=`iptables -L "$c_t_in" -nvx | grep "$ip_v" | awk '{print $2}'`
    - d=`iptables -L "$c_t_out" -nvx | grep "$ip_v" | awk '{print $2}'`
    + d=`iptables -L "$c_t_out" -nvx | grep "$ip_v" | awk '{print $4}'`
    `rrdupdate "${RRDDATA}/${a}.rrd" -t inut N:"$c":"$d"`

    и соответственно еще есть строки с echo
    echo 'c=`ipcalc -nm "$a$b"`' >> "${index}"
    echo 'a=`echo ${c#*NETWORK=} | awk '\''{print $1}'\''`' >> "${index}"
    echo 'b=`echo ${c#*NETMASK=} | awk '\''{print $1}'\''`' >> "${index}"

    меняется на
    echo 'c=`ipcalc -n "$a$b"`' >> "${index}"
    echo 'a=`echo ${c#*NETWORK=} | awk '\''{print $2}'\''`' >> "${index}"
    echo 'b=`echo ${c#*NETMASK=} | awk '\''{print $4}'\''`' >> "${index}"

    Может есть более правильный путь ?

  10. #70
    Quote Originally Posted by holidm View Post
    Решил обновить rrd скрипт на версию с подсчетом трафика по ip
    и тоже вылезла ботва про iptable.
    проверил часть скрипта про выбор ip из файла
    сразу ругается на неправильный ключ -m
    без ключа -m то есть запуск ipcalc -n
    требует править ниже 2 строки
    ...
    Может есть более правильный путь ?
    Либо установить новый busybox, либо править скрипт.
    у Alex333 повидимому, в этом же причина.
    PS: у меня стоит прошивка от Олега, BusyBox v1.1.3.

  11. #71
    Quote Originally Posted by Alex333 View Post
    PATH в crontab:
    Code:
    PATH=/sbin:/bin:/usr/sbin:/usr/bin:/opt/sbin:/opt/bin:/opt/usr/bin
    мож я не в тему, но
    /opt/sbin:/opt/bin:/opt/usr/bin
    разве не в начале должно быть?

  12. #72
    Quote Originally Posted by Visionary View Post
    естественно должны быть установлены компоненты для php и rrdtool
    rrdtool
    lighttpd+fastcgi
    php-gd
    php
    php-fcgi
    а perl должен быть установлен?
    в lighttpd.conf
    #### CGI module
    cgi.assign = ( ".pl" => "/opt/bin/microperl",
    ".cgi" => "/opt/bin/perl",
    ".sh" => "/opt/bin/bash" )
    #
    без перла получаю ошибку 500, с перлом веб заработал но данных на графиках нет - везде надписи nan

  13. #73
    Quote Originally Posted by Visionary View Post
    мож я не в тему, но разве не в начале должно быть?
    А есть разница? Как я понимаю - это перечисление каталогов, в которых система ищет файлы для запуска, что бы не вводить полный путь. Только не ясно, в случае совпадение имен файлов, по какому быдет происходить выбор. Может в данном случае порядок имеет значение?

  14. #74
    Quote Originally Posted by holidm View Post
    Решил обновить rrd скрипт на версию с подсчетом трафика по ip
    и тоже вылезла ботва про iptable.
    А не могли бы вы выложить ваш rrd.sh, а то правил по вашим замечаниям, но совсем фигня получилась. Может чего-нить не туда делаю..

  15. #75
    А есть разница?
    насколько я понимаю это и порядок в каком ищет система файлы. Найдет в /bin - дальше искать не будет. а там старая плюшевая версия.. нужно чтоб сначала искала в /opt/bin
    без перла получаю ошибку 500, с перлом веб заработал но данных на графиках нет
    можешь попробовать microperl, но на каком то из скриптов была ошибка. заменил везде на perl.
    насчет графиков - проверь установлен ли php-gd
    и жми кнопку update
    проверь создаются ли файлы графиков

Page 5 of 11 FirstFirst ... 34567 ... LastLast

Similar Threads

  1. Мониторинг через SNMP на роутере
    By TSM in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 70
    Last Post: 16-10-2015, 15:39
  2. Контроль трафика через роутер (iftop)
    By Sharky in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 69
    Last Post: 04-08-2013, 14:17
  3. Установка Windows 7 по сети с помощью роутера
    By ryzhov_al in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 5
    Last Post: 22-10-2012, 21:25
  4. iftop vs oleg
    By winni in forum WL-500gP Tutorials
    Replies: 10
    Last Post: 20-05-2008, 15:34
  5. Asus WL 500gP и пиринговые сети
    By spinoza in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 13
    Last Post: 09-05-2008, 13:16

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •