Monitorando o tráfego IPv4 vs IPv6

4

Temos uma rede dual-stack totalmente funcional em execução em nossos negócios. Alguém encontrou uma ferramenta simples para monitorar as relações de tráfego IPv4 vs IPv6 em um determinado host? Quando digo "simples", estou pensando em um daemon / serviço semelhante ao 'vnstat'

Um relatório perfeito em sua forma mais simples seria algo como isto:

                 Total     IPv4          IPv6          Ratio
This Month:      300gb     100gb (33%)   200gb (66%)   1:2
This Week:       5gb       1gb (20%)     4gb (80%)     1:4
Today:           1.2gb     400mb (33%)   800mb (66%)   1:2

Perdoe-me se alguma das minhas contas está errada, é por isso que eu quero uma ferramenta;)

Estou principalmente interessado em hosts Linux (CentOS 6), mas qualquer ferramenta do Windows (2008R2) também seria útil.

Eu encontrei um thread sugerindo netstat -s -6 | grep -i octets , mas a opção -6 é inválida no CentOS 6; Eu estou supondo que é uma adição recente ao netstat.

    
por fukawi2 19.11.2013 / 23:31

2 respostas

3

Eu já estou fazendo isso, e já faz algum tempo, usando munin e um plugin personalizado que eu mesmo escrevi, que fica dados de iptables regras de auditoria. Ele está sendo executado em uma caixa C6, então você deve ser capaz de empilhá-lo no lugar se ninguém tiver idéias melhores. Não é o simples one-liner que você queria, mas está funcionando e produz dados como estes:

Opluginésimplesosuficiente,apenaspegadadosdedoisarquivossimplescriadosem/var/tmp:

#!/bin/bash##(c)GatekeeperTechnologyLtd.,2013#MaybeusedunderthetermsofGPLv3or,atyourdiscretion,anylaterversionif["$1" = "config" ]; then

    echo 'graph_title Network Throughput'
    echo 'graph_category network'
    echo 'graph_info This is the total throughput on the NIC since the beginning of the calendar month, or the last reboot, whichever was mo
st recent.'
    echo 'graph_vlabel bytes'
    echo 'graph_args --logarithmic'
    echo 'in4.label       in v4'
    echo 'in4.colour      ff0000'
    echo 'out4.label      out v4'
    echo 'out4.colour     00ff00'
    echo 'in6.label       in v6'
    echo 'in6.colour      aa0088'
    echo 'out6.label      out v6'
    echo 'out6.colour     00aa88'
    echo 'total.label     total'
    echo 'total.colour    0000ff'
    exit 0
fi

out='head -3 /var/tmp/audit.out.counts | tail -1 | awk '{print $2}''
echo "out4.value $out"
in='head -3 /var/tmp/audit.in.counts | tail -1 | awk '{print $2}''
echo "in4.value $in"

out6='head -3 /var/tmp/audit.out.v6.counts | tail -1 | awk '{print $2}''
echo "out6.value $out6"
in6='head -3 /var/tmp/audit.in.v6.counts | tail -1 | awk '{print $2}''
echo "in6.value $in6"

total=$(($in+$out+$in6+$out6))
echo "total.value $total"

A entrada do crontab que os torna assim:

# output the audit rule counts for munin purposes
* * * * *  /sbin/iptables  -L AUDIT-I -n -x -v > /var/tmp/audit.in.counts
* * * * *  /sbin/iptables  -L AUDIT-O -n -x -v > /var/tmp/audit.out.counts
* * * * *  /sbin/ip6tables -L AUDIT-I -n -x -v > /var/tmp/audit.in.v6.counts
* * * * *  /sbin/ip6tables -L AUDIT-O -n -x -v > /var/tmp/audit.out.v6.counts
# and zero the counts once a month
0 0 1 * *  /sbin/iptables  -Z AUDIT-I
0 0 1 * *  /sbin/iptables  -Z AUDIT-O
0 0 1 * *  /sbin/ip6tables -Z AUDIT-I
0 0 1 * *  /sbin/ip6tables -Z AUDIT-O

e as regras iptables são feitas com as seguintes regras /etc/sysconfig/iptables :

:AUDIT-I - [0:0]
:AUDIT-O - [0:0]
# audit input traffic
-A INPUT -i eth0 -j AUDIT-I
 [ALL OTHER INPUT RULES APPEAR HERE, AFTER THE AUDIT RULE]
# audit outbound traffic
-A OUTPUT -o eth0 -j AUDIT-O
 [ALL OTHER OUTPUT RULES APPEAR HERE, AFTER THE AUDIT RULE]
# AUDIT rules
-A AUDIT-I -p all
-A AUDIT-O -p all

O motivo crontab está envolvido é parar o plug-in munin que precisa ser executado com privilégios de root; Se você não se importasse com isso, poderia fazer com que o plugin recebesse as contagens de pacotes diretamente, invocando iptables em si.

As contagens não sobrevivem a uma reinicialização (daí a queda extra para zero no gráfico acima), mas se você tiver seu servidor configurado para salvar iptables regras e contagens de pacotes em reinicie, isso não afetaria você.

    
por 20.11.2013 / 08:53
0

Você pode experimentar este plugin Munin IPv6 no GitHub:

link

    
por 26.04.2017 / 12:14