Ferramentas que monitoram a largura de banda da rede com base em IP?

3

Em um ambiente de rede, como o SOHO, há alguma ferramenta que possa monitorar o uso da largura de banda da rede com base no endereço IP ou MAC do computador? Para que possamos saber qual usuário tem o maior uso de largura de banda. Se possível, também aparecem estatísticas de cada uso do computador com base no endereço IP ou MAC.

    
por Allen 09.11.2012 / 01:56

4 respostas

2

iftop para uma interface de topo para visualização instantânea.

ntop para muitas estatísticas com uma interface web

argus idem com uma interface CLI.

Veja também iptstate no Linux para obter as informações rastreadas pelo rastreador de conexão.

    
por 09.11.2012 / 13:40
3

Existem várias ferramentas que podem ajudar, talvez a mais notável seja iftop , que provavelmente está disponível nos repositórios oficiais da sua distribuição. Ele relata informações de largura de banda por IP por meio de uma interface curses usando libpcap .

Aceita argumentos em estilo tcpdump para modificar seu filtro, por exemplo, iftop -f "port http" filters para incluir apenas o tráfego que termina na porta 80.

    
por 09.11.2012 / 02:02
2

O firewall iptables pode ser usado para isso.

Tem contagens de bytes e pacotes para cada regra de filtro. Então a ideia é fazer uma regra de filtragem para cada IP na sua rede. Como as contagens do iptables não são persistentes (e estouram a 4GB), crie uma tarefa cron para ler e redefinir periodicamente os contadores.

Etapas:

Adicione tabelas contábeis para tráfego de entrada e saída

iptables -N acct_in
iptables -N acct_out

Defina as regras padrão (retorne aos pais)

iptables -A acct_in -j RETURN
iptables -A acct_out -j RETURN

Para cada IP do cliente: adicione uma regra de entrada e uma de saída:

iptables -I acct_in -d 192.168.x.y
iptables -I acct_out -s 192.168.x.y

Por fim, acrescente as correntes acct_ * à cadeia FORWARD

iptables -A FORWARD -j acct_in
iptables -A FORWARD -j acct_out

Esta deve ser sua configuração básica do iptables.

Você pode ler os valores do contador usando

iptables -v -L acct_in  # for inbound traffic
iptables -v -L acct_out # for outbound traffic 

... e redefina os contadores usando

iptables -Z acct_in
iptables -Z acct_out

Eu recomendaria escrever um script que você executasse como cronjob para ler e redefinir os valores do contador e armazená-los em um arquivo. Use o sinalizador -x para obter os valores exatos que podem ser mais fáceis de processar.

Alternativamente, eu recomendo que você dê uma olhada em um projeto antigo meu: nf_quota . Eu usei isso por um longo tempo quando tínhamos um limite de tráfego de 3 GB / mês. Ele correu muito estável, mas o código não foi atualizado em anos ...

Atua como plugin do netfilter no kernel. A desvantagem é que você tem que compilar você mesmo.

As vantagens são que os IPs são adicionados automaticamente, você pode até definir limites per-ip ou total e que existe uma ferramenta de linha de comando para ler as estatísticas.

/ edit : Eu acabei de checar o código e notei que ele não compila com kernels recentes, pois houve algumas mudanças sob o capô. Então, eu recomendo não usar este projeto, a menos que você saiba o que está fazendo (patches são bem-vindos;))

    
por 09.11.2012 / 02:59
0

Parece que você precisa de algum monitoramento no seu dispositivo de gateway. Se o firewall / roteador for capaz de fornecer dados snmp, sugiro usar spiceworks ou wind solar para coletar os dados que você precisa

    
por 09.11.2012 / 13:18