Acesso direto ao conteúdo
Logotipo Dicas-L, por Ricardo Burile

Busca

Visite também: Segurança Linux ·  UnderLinux ·  VivaOLinux ·  LinuxSecurity ·  NoticiasLinux ·  BR-Linux ·  SoftwareLivre.org ·  [mais]   
 

Você está aqui: Home  → Arquivo Dicas-L

 

Aprenda inglês de uma vez por todas

Assine a Lista Dicas-L

Receba diariamente por email as dicas
de informática publicadas neste site
Para se descadastrar, clique aqui.

Monitoramento do Uso da Rede em Sistemas Unix Like por meio do BandwidthD

Colaboração: José Messias Alves da Silva

Data de Publicação: 18 de Junho de 2006

O BandwidthD é um sistema de monitoramento que rastreia o uso de subredes TCP/IP e constrói arquivos HTML com gráfico para mostrar a utilização da rede. Os gráficos são construídos individualmente para cada IP e mostra sua utilização em vários períodos de tempo. Ele usa uma legenda de cores para demonstrar o tráfego em diferentes protocolos. Diferentemente do MRTG (http://people.ee.ethz.ch/~oetiker/webtools/mrtg/), ele varre cada endereço IP e subredes e não o estado dos links. Há dois modos de configuração, o modo estático e o modo em banco de dados. O modo estático é rápido e fácil de configurar e tem poucas dependências. O modo banco de dados suporta filtragem por subrede, sensores, relatórios customizados e intervalos, e pode processar milhares de IPs eficientemente. A utlização da rede pode ser guardada em formato CDF ou em um banco de dados como PostGreSQL. Nesta dica nos ateremos a configuração em modo estático. BandwidthD pode ser compilado para várias plataformas operacionais Unix Like:

ix86 Solaris 9
Debian 3.0
Fedora Core 2
OpenBSD 3.8
FreeBSD 5.6
NetBSD 3.0
AMD64 Fedora Core 3
PPC G4 MacOSX 10.2

Para instalação e uso do Sistema é necessário que um servidor web esteja instalado para exibição dos relatórios em HTML, de preferência o Apache . Caso fosse utilizado modo banco de dados utilizando PostGreSQL seria necessária a instalação também de PHP4 ou posterior. É também necessário que as seguintes bibliotecas estejam devidamente instaladas:

Instalação

Todos os passos devem ser efetuados como root e dentro do diretório desse usuário. Para esta dica foi utilizada a versão 2.0.1 baixada em:

http://ufpr.dl.sourceforge.net/sourceforge/bandwidthd/bandwidthd-2.0.1.tgz

Após baixada a versão, realiza-se os seguintes passos:

  # tar -xvzf bandwidthd-2.0.1.tgz
  # cd bandwidthd-2.0.1
  # ./configure && make install

Após a instalação, passemos para a configuração.

Configuração

O arquivo de configuração do BandwidthD é relativamente pequeno, possuindo poucas opções de configuração. Deve-se configurar basicamente a rede e subredes que serão monitoradas e por qual(is) interfaces. O arquivo de configuração encontra-se em /etc/bandwidthd/bandwidthd.conf . Abaixo um exemplo do arquivo:

  < A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>
  # Bandwidthd.conf
  # Exemplo de Configuração
  
  # Subredes que o sistema irá capturar informações.
  # O tráfego que não corresponder a nenhuma dessas redes
  # será ignorado.
  # A Sintaxe é o IP da Subrede e a máscara
  subnet 10.0.0.0 255.0.0.0
  subnet 192.168.0.0/24   # Pode ser utilizada
  # esse terminologia também
  # Interface a ser escutada
  # Bandwidthd escuta na primeira que detecta por default.
  # Pode-se rodar "bandwidthd -l" para listar os dispostivos
  # que ele detectou.
  dev "eth0"
  
  < A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>###
  # As opções abaixo não são frequentemente modificadas
  # Mas segue algumas explicações
  < A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>< A NAME="note" HREF="#textnote">< SUP>###
  
  # Intervalo em minutos ele aguarda antes de
  # gerar um novo gráfico. Normalmente se utiliza algo
  # entre 2.5 e 5.0
  #skip_intervals 0
  
  # Aqui é quantidade de kbytes que devem ser transferidos por
  um ip antes gerar seu gráfico
  #graph_cutoff 1024
  
  # Coloca a interface em modo promíscuo, pegando até mesmo
  # pacotes que não são roteados pela máquina
  #promiscuous true
  
  # Criar o log das informações em um arquivo
  # CDF em htdocs/log.cdf
  #output_cdf false
  
  # Ler o arquivo CDF anterior ao iniciar
  #recover_cdf false
  
  # Formato da String de Filtro Libpcap usada para controlar
  # o que o bandwidthd vasculhará. Normalmente se inclui
  # a palavra "ip" dentro da string para evitar problemas
  # estranhos. Esta opção é pouco usada. Exemplo: filter
  # "ip and host 192.168.0.1"
  #filter "ip"
  
  # Desenha os gráficos. O default é true. Normalmente
  # só se utiliza false quando  se deseja apenas guardar
  # os logs cdf em um banco de dados sem gerar gráficos.  
  # Quando se põe false, o BandwidthD usa muito menos da CPU
  # e da memória RAM.  graph true
  
  # Ajusta o valor em segundos de META REFRESH, que é
  # atualização do gráficos (default 150, use 0 para
  # desabilitar).  
  #meta_refresh 150

Rodando

Após realizada a compilação com sucesso, vamos botar pra rodar.

  # ./bandwidthd

Em seguida, verificando se foi carregado corretamente.

  # ps ax

Se não ocorrer "bandwidthd <defunct>", signifca que não há nenhum erro de configuração e o sistema está rodando normalmente. Caso contrário, verifica-se novamente os detalhes da configuração e tenta-se novamente.

Ajustes

O BandwidthD gera as imagens e o código HTML no diretório /var/lib/bandwidthd/htdocs/. Para a exibição das páginas, é necessário que se crie um link simbólico /var/www/bandwidthd/.

  # ln -s  /var/lib/bandwidthd/htdocs/ /var/www/bandwidthd/

Para finalizar os logs, normalmente se reinicia o BandwidthD. Pode-se colocar para realizar isto automaticamente inserindo a seguinte a linha no crontab:

  0 0 * * * * /bin/kill -HUP `cat /var/run/bandwidthd.pid`

Posteriormente, pode-se criar um script para organizar os logs e para inicializar e parar o sistema.

Para finalizar, pode-se testar o sistema acessando o servidor web no diretório bandwidthd.

http://localhost/bandwidthd/

Considerações Finais

Alguns questionam o fato de o BandwithD consumir muito recursos da CPU. Entretanto, isso não constitui uma verdade, visto que baseado em testes realizados, o consumo assemelha-se a de qualquer outro aplicativo de monitoramento. Pode ser que em versões anteriores isto tenha acontecido, porém, atualmente, isso com certeza não ocorre. Espera-se que a instalação desse sistema seja de grande utilidade para Administradores de Redes que necessitam frequentemente estar averiguando se a rede está sendo utilizada de forma correta e eficiente.

Veja a relação completa dos artigos de José Messias Alves da Silva

Formato PDF
Newsfeed RSS
Formato para impressão
PDF RSS Imprimir

Referências Adicionais

Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.

Avalie esta dica

  • Currently 2.97/5
  • 1
  • 2
  • 3
  • 4
  • 5

Avaliação: 3.0 /5 (1264 votos)

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script
Lan University

Submarino.com.br

Encontre imóveis, apartamentos e casas a venda no Imobilien
Saiba mais

 

 

Procure pela casa ou apartamento ideal à venda ou para aluguel na busca inteligente do Imohoo
Buscar imóveis