Helio Loureiro

-= o cozinheiro de bits =-

Procurando receitas exóticas? O que acompanha melhor um bom vinho do porto? O melhor da comida lusitana? Pois você está completamente perdido, pois quem cobre esse assunto é outro Hélio Loureiro, um famoso cozinheiro português. Por aqui, nem receita de ovo frito tem.

Estatística de tráfego no Netgear WGR614 v7

Na minha última viagem ao exterior, mais de 1 ano atrás, bem antes de qualquer palavra parecida com "crise" surgir na mídia, adquiri um Wireless router WGR614 v7 da Netgear.

Funciona a contento, como a grande maioria dos produtos desse tipo, mas tem um grande ponto negativo: a falta de interfaces telnet e snmp para comandos e monitoramento.

Como precisava ter uma idéia do meu tráfego de rede, resolvi fazer um script para ser usando com o MRTG. Escrito em perl, precisa do navegador via texto "lynx" para buscar os dados:

#! /usr/bin/perl
# WGR614v7_traffic.pl
# by Helio Loureiro


### Variables
$login = "admin";
$password = "admin";
$netgear = "192.168.1.1";

$option = $ARGV[0];

###
if ($option !~ m/WAN|LAN|WLAN/) {
   print "Use: $0 [WAN|LAN|WLAN]\n";
   exit 1;
}


### Using a command at this moment
$location = "http://".$netgear."/RST_stattbl.htm";
$cmd = "lynx -source -auth ".$login.":".$password." ".$location;

open(CMD, "$cmd|") or die "Impossible to connect in $netgear: $!\n";

$check = 0;

$idx = 0;
@NETGEAR ;
$description;

while ($line = ) {
  if ($line =~ m/description/) {
    $description = $line;
    $description =~ s/.*=//;
    $description =~ s/\"|>//g;
    chomp $description;
  }


   # to ignore lines not related
   if ($line =~ m/$option/) {
      $check++;
   }
   next if (! $check);
   last if ( $line =~ m/<\/tr>/ );


   chomp($line);

   # removing html tags
   $line =~ s/<\/.*//;
   $line =~ s/.*>//;
   # removing blank lines
   next if ($line !~ m/\w|\d/);

   $NETGEAR[$idx] = $line;
   $idx++;
}

$description .= " ".$NETGEAR[0]."/".$NETGEAR[1];

print $NETGEAR[2]."\n";
print $NETGEAR[3]."\n";
print $NETGEAR[-1]."\n";
print $description."\n";

O programa, chamado "WGR614v7_traffic.pl", exige como argumento as opções WAN, LAN ou WLAN.

Para o MRTG, adicione uma entrada como:

Target[wan]: `/home/helio/bin/WGR614v7_traffic.pl WAN`
MaxBytes[wan]: 1000000
Title[wan]: WAN packets traffic at WGR614v7
PageTop[wan]: 

WAN packets traffic at WGR614v7

System:WGR614v7
Maintainer:Helio Loureiro
Interface:wan traffic
IP:none
Max wan traffic: 2 Mbps
YLegend[wan]: Packets/sec ShortLegend[wan]: Pkts

Infelizmente o dados fornecido está em packets/second. Como não tenho a mínima idéia de qual packet size está sendo usado... fica um dado meio perdido. Também notei, via MRTG, que os dados não são tão precisos assim: as entrada e saída tem quase os mesmos valores, o que não dever ser verdade. Mas ao menos tenho alguma idéia do meu tráfego.

Image
 
Bookmark and Share

Adds

Links patrocinados:

Visitors Counter

Hoje31
Ontem99
Semana504
Mês760
Visitantes137414
38.107.179.207

Statistics

Content View Hits : 151612

Random Image

freebsd_meeting.fullsize.jpg