Visualizando o tráfego de rede de forma organizada com Weathermap + MRTG

Publicado por Leonardo Damasceno em 07/11/2010

[ Hits: 17.210 ]

Blog: https://techcraic.wordpress.com

 


Visualizando o tráfego de rede de forma organizada com Weathermap + MRTG



O MRTG é um pacote escrito em PERL e faz a coleta de dados via SNMP. Por isso o equipamento a ser monitorado precisa oferecer suporte a este protocolo. Vamos utilizar esse software para gerar o gráfico das conexões com o Weathermap.

# apt-get install mrtg snmp snmpd

É necessário gerar o arquivo de configuração:

# cfgmaker teste@192.168.10.1 > /etc/mrtg/teste.cfg

Neste exemplo utilizei o IP do roteador e um usuário chamado teste. O nome da configuração ficou definida como teste.cfg.

Vamos gerar o arquivo index.html:

# indexmaker --output /var/www/mrtg/teste/index.html /etc/mrtg/teste.cfg

Acabamos de criar o arquivo index.html no diretório /var/www/mrtg/teste utilizando o nosso arquivo de configuração teste.cfg.

É importante definir o diretório de trabalho (WorkDir) no arquivo de configuração, acesse o arquivo /etc/mrtg/teste.cfg e localize a linha WorkDir, deixando da seguinte maneira:

WorkDir: /var/www/mrtg/teste

Adicione no crontab para que de cinco em cinco minutos o MRTG atualize. Acesse o arquivo de configuração para agendamentos, /etc/crontab, e adicione a seguinte linha:

*/5 * * * * root LANG=C LC_ALL=C /usr/bin/mrtg /etc/mrtg/teste.cfg --lock-file /var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/teste.ok

É provável que ele demore um pouco para gerar o primeiro gráfico, então não se preocupe.

WeatherMap

WeatherMap é um software onde você pode apontar caminhos de rede, criando um mapa do tráfego e exibindo como está a conexão.

Para isso você pode fazer a integração com o MRTG para que mostre o gráfico da conexão e a porcentagem das extremidades.

Primeiro instale o Apache com o PHP e algumas dependências para a utilização do Weathermap:

# apt-get install php5 libapache2-mod-php5 php-cli

Agora, faça o download do php-weathermap dentro do diretório /var/www:

# cd /var/www
# wget
http://www.network-weathermap.com/files/php-weathermap-0.97.zip
# unzip php-weathermap
# chown www-data.root weathermap -R
# cd weathermap
# php ./weathermap --config weathermap.conf --output mapa.png --htmloutput pagina.html


Explicação:

Você está utilizando o PHP versão 5 para executar um script em php que tem como parâmetros:
  • --config: Especifica o arquivo de configuração.
  • --output: Dentro da página HTML existe um gráfico que você vai definir, e será salvo como mapa.png (neste exemplo).
  • --htmloutput: Aqui, você vai especificar o arquivo .html que será a página principal.

Obs.: Ao tentar acessar o WeatherMap sem seguir estes passos, você verá um erro dizendo que não existe a página principal do projeto. Isso acontece porque ao tentar acessar o diretório, a página principal (index.php) tem a ação de voltar um diretório e procurar por um index ali, portanto, irá causar um erro.

Veja aqui um exemplo do Weathermap sendo executado sem nenhum envolvimento com Zabbix ou com Cacti:
Linux: Visualizando o tráfego de rede de forma organizada com Weathermap + MRTG
Veja um exemplo de configuração:

BACKGROUND background.png
TITLE mapa da rede
KEYPOS 10 400

HTMLSTYLE overlib
WIDTH 800
HEIGHT 600

HTMLOUTPUTFILE weathermap.html
IMAGEOUTPUTFILE weathermap.png

NODE SEDE
    POSITION 400 10
    LABEL SEDE

NODE REDE2
    POSITION 400 160
    LABEL ALANET

LINK LINK01
    NODES SEDE REDE2
    WIDTH 3
    BANDWIDTH 2M
    TARGET http://192.168.10.5/mrtg/teste/200.156.180.215_fa0_0.html
    OVERLIBGRAPH http://192.168.10.5/mrtg/teste/200.156.180.215_se0-day.png
    OVERLIBWIDTH 500
    OVERLIBHEIGHT 135

Para atualizar a página com as alterações feitas, digite no diretório do weathermap:

# php ./weathermap

Outras dicas deste autor

Testando servidor de e-mail via telnet

PostgreSQL com encoding LATIN1

Contagem de linhas em shell script

Enviando notificações remotamente via SSH + notify-send

Load Balance com PFSense

Leitura recomendada

Ler arquivos de texto com o Gambas

Gconjugue: Conjugação de verbos no Linux

Google Meet - Ativar Câmera em Segunda Chamada Consecutiva no Google Chrome

Zabbix - Monitorando uso de disco em OS Windows

Editando arquivos do Corel Draw no Linux

  

Comentários
[1] Comentário enviado por apchagas81 em 16/03/2011 - 11:22h

Leonardo,
Primeiramente quero te parabenizar pelo artigo, mas eu gostaria de saber se este software monitora somente o tráfego em si, ou se ele tb pode pegar algo mais detalhado como source e destination de ip, aplicação etc?
Abs

[2] Comentário enviado por leodamasceno em 16/03/2011 - 12:01h

Olá apchagas81, obrigado.

Cara, acredito que não, mas no site do projeto tem muita informação, e eu estudei apenas para a implantação dessa forma, daí não sei ti responder.

[3] Comentário enviado por jpbrinate em 26/04/2016 - 18:34h

Caro amigo o meu esta dando um erro abaixo.

PHP Fatal error: require_once(): Failed opening required 'Console/Getopt.php' (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/weathermap/weathermap on line 8



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts