monax

Fedora | Debian | Linux Mint | Ubuntu
Радио Т



АвторСообщение
инквизитор админ




Пост N: 227
Зарегистрирован: 15.03.07
Рейтинг: 0
ссылка на сообщение  Отправлено: 13.03.12 19:54. Заголовок: Установка MRTG под Windows


Установка MRTG под Windows

Не так давно возникла необходимость подсчитать трафик, идущий через маршрутизатор. Установка Proxy-сервера не решала задачу, т.к. необходимо было подсчитать трафик по всем портам, да и хотелось более простого решения. Установка под Windows обусловлена тем, что единственный постоянно включенный компьютер в локальной сети работает под Windows Server 2003. Выход из этой ситуации — установка на сервер MRTG + MRTG_TOTAL.

Не так давно возникла необходимость подсчитать трафик, идущий через маршрутизатор. Установка Proxy-сервера не решала задачу, т.к. необходимо было подсчитать трафик по всем портам, да и хотелось более простого решения. Установка под Windows обусловлена тем, что единственный постоянно включенный компьютер в локальной сети работает под Windows Server 2003. Выход из этой ситуации — установка на сервер MRTG + MRTG_TOTAL

Необходимое условие — поддержка маршрутизатором протокола SNMP.

Для установки MRTG под Windows понадобится:
1.Дистрибутив MRTG. Скачать
2.Дистрибутив PERL. Например ActivePerl. Скачать
3.Windows Server 2003 Resource Kit Tools для установки MRTG в качестве службы Скачать

Инструкция по установке MRTG под Windows на английском языке —
http://oss.oetiker.ch/mrtg/doc/mrtg-nt-guide.en.html

Содержание:
Установка MRTG
Настройка MRTG
Запуск MRTG как службы
Установка mrtg_total

Установка MRTG
•Разархивируем дистрибутив MRTG в директорию C:\MRTG
•Устанавливаем PERL. Необходимо убедиться, что директория C:\perl\bin прописана в переменной Path (Панель управления -> Система -> Дополнительно -> Переменные среды).



•Для проверки корректности установки откройте командную строку и выполните:


 цитата:
cd c:\mrtg\bin



 цитата:
perl mrtg



В результате, если все установлено правильно, вы должны увидеть что-то подобное:



Usage: mrtg <config -file>

mrtg-2.16.2 - Multi Router Traffic Grapher

Copyright 1995-2006 by Tobias Oetiker
Licensed under the Gnu GPL.

If you want to know more about this tool, you might want
to read the docs. You can find everything on the
mrtg website:

http://oss.oetiker.ch/mrtg/


Настройка MRTG
•Создание конфигурационного файла. Перед началом необходимо выяснить: ◦IP-адрес маршрутизатора. В этом примере 192.168.0.1
◦Имя SNMP Get Community (Read Community). По-умолчанию почти на всех маршрутизаторах — public
◦Определить рабочую директорию MRTG. Обычно это корневая директория веб-сервера, на котором статистика MRTG будет доступна пользователям локальной сети. В нашем примере рабочая директория C:\www\mrtg
◦Если вы хотите осуществить мониторинг не только входящего и исходящего трафика, а еще к примеру загрузку процессора маршрутизатора и т.п., то вам нужно выяснить SNMPOID этого параметра.

•Далее выполняем в командной строке:


 цитата:
cd c:\mrtg\bin



 цитата:
perl cfgmaker public@192.168.0.1 --global "WorkDir: c:\www\mrtg" --output mrtg.cfg




Эта команда создает базовый файл конфигурации MRTG. Обратите внимание, что в созданном файле, ссылки на интерфейсы маршрутизатора представляют собой числа, которые могут измениться при перенастройке маршрутизатора. Чтобы обойти эту проблему, рекомендуется делать ссылки на интерфейсы маршрутизатора в виде ip-адресов или описаний интерфейсов. Это можно сделать с помощью дополнительных команд утилиты cfgmaker. Список команд здесь. Какой способ выбрать решать вам в зависимости от модели маршрутизатора.

•Если во время создания конфигурационного файла, вы получили ошибку «no such name» или «no response», скорее всего вы не правильно указали имя SNMP Community. Также следует проверить открыт ли в брандмауэре порт 161 (порт по умолчанию для протокола SNMP), и не изменен ли он на нестандартный на самом маршрутизаторе.
•Теперь откроем созданный файл (c:\mrtg\bin\mrtg.cfg)
•Добавьте следующую строку в самое начало файла:


 цитата:
WorkDir: c:\www\mrtg



Также относительно базового файла я добавил следующие директивы:


 цитата:
Options[_]: growright



 цитата:
EnableIPv6: no




Options[_]: growright — для отображения на графике временной шкалы с лева на право

•Описание интерфейса LAN:

### Interface 3 >> Descr: 'ixp0' | Name: 'ixp0' | Ip: '192.168.0.1' | Eth: '00-16-b6-8b-b7-88' ###
#
Target[192.168.0.1_3]: 3:public@192.168.0.1:
SetEnv[192.168.0.1_3]: MRTG_INT_IP="192.168.0.1" MRTG_INT_DESCR="ixp0"

•HTML-шаблон для файлов статистики (можно спокойно адаптировать по своему вкусу):

MaxBytes[192.168.0.1_3]: 12500000
Title[192.168.0.1_3]: Traffic Analysis for LAN -- RV042
PageTop[192.168.0.1_3]: <h1>Traffic Analysis for LAN -- RV042</h1>
<div id="sysdetails">
<table>
<tr>
<td>System:</td>
<td>RV042 in </td>
</tr>
<tr>
<td>Maintainer:</td>
<td></td>
</tr>
<tr>
<td>Description:</td>
<td>ixp0 </td>
</tr>
<tr>
<td>ifType:</td>
<td>ethernetCsmacd (6)</td>
</tr>
<tr>
<td>ifName:</td>
<td>ixp0</td>
</tr>
<tr>
<td>Max Speed:</td>
<td>12500.0 kBytes/s</td>
</tr>
<tr>
<td>Ip:</td>
<td>192.168.0.1 ()</td>
</tr>
</table>
</div>


Относительно исходного файла здесь изменено значение MaxBytes[192.168.0.1_3]. Изначально было MaxBytes[192.168.0.1_3]: 1250000, что соответствует скорости интерфейса в 10 Мбит/c. Для 100 Мбит/c необходимо изменить значение на 12500000

•Теперь все готово для пробного запуска. Выполняем в командной строке:


 цитата:
cd с:\mrtg\bin



 цитата:
perl mrtg mrtg.cfg




Во время первых двух запусков возможны ошибки. Это нормально и говорит о том, что до этого момента не была накоплена статистика.

•В рабочей директории (С:\www\mrtg) после запуска команды должен появится файл статистики 192.168.0.1_3.html, который можно открыть в любом браузере. После первых запусков статистика, конечно, не впечатляет. Для отображения корректной статистики MRTG нужно запускать с интервалом в 5 минут. О том, как это автоматизировать, читайте дальше.

Запуск MRTG как службы

Для установки MRTG в качестве службы, программа должна быть уже полностью настроена. Понадобятся две утилиты из Windows Server 2003 Resource Kit Tools: SRVANY.exe (Applications as Services Utility) и INSTSRV.exe (Service Installer). Пользователь системы должен иметь административные права.
•Для начала необходимо внести изменения в mrtg.cfg. В начало файла, сразу после директивы WorkDir: c:\www\mrtg, добавляем строку:


 цитата:
RunAsDaemon: yes



•Копируем srvany.exe и instsrv.exe в c:\mrtg\bin
•Создаем файл c:\mrtg\bin\mrtg.reg со следующим содержанием:


 цитата:
Windows Registry Editor Version 5.00




 цитата:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MRTG\Parameters]



 цитата:
"Application"="c:\\perl\\bin\\wperl.exe"



 цитата:
"AppParameters"="c:\\mrtg\\bin\\mrtg --logging=eventlog c:\\mrtg\\bin\\mrtg.cfg"



 цитата:
"AppDirectory"="c:\\mrtg\\bin\\"



•Открываем командную строку и выполняем:


 цитата:
cd c:\mrtg\bin



 цитата:
instsrv MRTG c:\mrtg\bin\srvany.exe



•Теперь добавляем необходимые ключи в реестр. Делаем правый клик на mrtg.reg, выбираем Слияние или выполняем в командной строке:


 цитата:
regedit /s c:\mrtg\bin\mrtg.reg



•Запускаем службу MRTG (Панель управления -> Администрирование -> Службы). После запуска службы в Диспетчере задач должны появится два новых процесса: srvany.exe и wperl.exe. На этом установка службы MRTG завершена. По умолчанию через каждые 5 минут mrtg будет собирать статистику с маршрутизатора

С помощью MRTG можно получить графики текущей загрузки канала. Но для получения суммарного количества входящего и исходящего трафика по дням (месяцам) необходимо установить дополнительную утилиту mrtg_total. Результат ее работы можно посмортеть тут, а скачать Здесь


•Для корректной работы mrtg_total необходимо установить следующие библиотеки Perl: ◦GD -1.32 (или лучше)
◦GDGraph -1.33 (или лучше)
◦GDGraph3d -0.55 (или лучше)
◦GDText -0.80 (или лучше)

Установка этих библиотек из командной строки (как написано в инструкции) у меня не получилась, поэтому пришлось устанавливать их с помощью Perl Package Manager (Пуск -> Программы -> ActivePerl -> Perl Package Manager). Сделать это легко, утилита имеет понятный графический интерфейс.

•Разархивируем mrtg_total.pl в c:\mrtg\bin
•Теперь необходимо модифицировать mrtg.cfg. Добавляем в описание интерфейса следующий псевдо комментарий:


 цитата:
#-#Total[192.168.0.1_3]: Traffic Totals for ROUTER LAN



 цитата:
#-#Total-Unit[192.168.0.1_3]: M



Все вместе выглядит так:

### Interface 3 >> Descr: 'ixp0' | Name: 'ixp0' | Ip: '192.168.0.1' | Eth: '00-16-b6-8b-b7-88' ###
#
Target[192.168.0.1_3]: 3:public@192.168.0.1:
SetEnv[192.168.0.1_3]: MRTG_INT_IP="192.168.0.1" MRTG_INT_DESCR="ixp0"

<strong>#-#Total[192.168.0.1_3]: Traffic Totals for ROUTER LAN #-#Total-Unit[192.168.0.1_3]: M</strong>

MaxBytes[192.168.0.1_3]: 12500000
Title[192.168.0.1_3]: Traffic Analysis for 3 -- RV042


#-#Total-Unit[192.168.0.1_3]: M — предоставляет статистику в мегабайтах. Также возможны значения: K,G,T (Кб, Гб, Тб).
#-#Total-Ratio[]: yes — добавляет дополнительную колонку с коэффициентом соотношения входящего и исходящего трафика.
#-#Total-Directory[]: path — аналогично Workdir. Можно определить рабочую директорию отличную от директории mrtg. Если не указано, используется директория mrtg.
#-#Total-Output[]: DWM — определяет формат вывода. D — дни, W — недели, M — месяцы. По умолчанию DM.

•Создаем файл mrtg_total.cmd со следующим содержанием


 цитата:
cd c:\mrtg\bin



 цитата:
perl mrtg_total.pl mrtg.cfg



 цитата:
exit


.....

•Теперь необходимо создать задание на выполнение этого файла каждый день в районе 01:00. Сделать это можно с помощью, встроенного в windows планировщика задач (Task Scheduler).



•Устанавливать mrtg_total лучше не сразу после установки mrtg, а подождать 1-2 дня, чтобы была накоплена какая-то статистика
•Если все работает корректо, после отработки скрипта в рабочей директории должен появится файл вида 192.168.0.1_3.total.2009.07.html, в котором будет отображена статистика по дням (в нашем случае для июля). Для следующего месяца будет создан файл 192.168.0.1_3.total.2009.08.html

На этом установка закончена!

Маленькое примечание для тех у кого внешний статический ip-адрес. Если вы будете мониторить интерфейс WAN, то статистика получится некорректной (входящий трафик будет больше реального как минимум на 30%) из-за эффекта широковещательного шторма и т.п. Выход: считать трафик по интерфейсу LAN. Если вы используете несколько локальных портов маршрутизатора для подключения различных устройств, то для исключения из статистики внутреннего трафика нужно установить дополнительный коммутатор, подключить его к маршрутизатору, все устройства повесить на этот коммутатор. Другие локальные порты маршрутизатора не использовать. В этом случае статистика будет более менее корректной.

click here

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 1 [только новые]


moderator




Пост N: 14
Зарегистрирован: 28.03.07
Рейтинг: 1
ссылка на сообщение  Отправлено: 26.02.15 04:02. Заголовок: это сложно :sm17: ..


это сложно

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  2 час. Хитов сегодня: 0
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет



Форум Monax Unix System - компьютеры, операционные системы, сети интернет, программы, ошибки программ, Linux vs Windows и многое другое
Проверить