Roteador Linux - Velocidade de transferência de clientes

3

Eu tenho um computador que está configurado como um roteador com duas placas de rede, uma está conectada à Internet e a outra está conectada ao switch de rede local.

Eu sei que posso obter a taxa de transferência atual de NICs criando um script que leia arquivos no diretório: /sys/class/net/[dev]/statistics .

Mas é possível obter a taxa de transferência de cada cliente na rede, para que eu possa ver quanta largura de banda de Internet cada cliente está usando?

    
por BufferOverflow 28.06.2016 / 04:16

1 resposta

2

Para ter o uso por endereço IP, você pode criar uma regra iptable para cada endereço IP na cadeia FORWARD e rastrear contadores de estatísticas iptables.

A partir de Estatísticas de rede com iptables e rrdtool

iptables -N stats  
iptables -A stats -s 192.168.0.3 -o $WAN -j RETURN
iptables -A stats -d 192.168.0.3 -i $WAN -j RETURN  
iptables -A stats-s 192.168.0.4 -o $WAN -j RETURN 
iptables -A stats -d 192.168.0.4 -i $WAN -j RETURN 
iptables -A stats -o $WAN -j RETURN 
iptables -A stats -i $WAN -j RETURN 
iptables -A FORWARD -j stats

Na verdade eu usei um ISP no passado e eles rastrearam o uso de largura de banda de alguns milhares de clientes com iptables usando esse método antes de implementar a contabilidade do Netflow bebendo os dados dos roteadores Cisco.

    
por 28.06.2016 / 05:41