diff options
Diffstat (limited to 'perl/ipf-mrtg.pl')
-rw-r--r-- | perl/ipf-mrtg.pl | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/perl/ipf-mrtg.pl b/perl/ipf-mrtg.pl new file mode 100644 index 0000000..cce30ab --- /dev/null +++ b/perl/ipf-mrtg.pl @@ -0,0 +1,22 @@ +#!/usr/local/bin/perl +# reads stats and uptime for ip-filter for mrtg +# ron@rosie.18james.com, 2 Jan 2000 + +my $firewall = "IP Filter v3.3.3"; +my($in_pkts,$out_pkts) = (0,0); + +open(FW, "/sbin/ipfstat -hi|") || die "cannot open ipfstat -hi\n"; +while (<FW>) { + $in_pkts += $1 if (/^(\d+)\s+pass\s+in\s+quick.*group\s+1\d0/); +} +close(FW); +open(FW, "/sbin/ipfstat -ho|") || die "cannot open ipfstat -ho\n"; +while (<FW>) { + $out_pkts += $1 if (/^(\d+)\s+pass\s+out\s+quick.*group\s+1\d0/); +} +print "$in_pkts\n", + "$out_pkts\n"; +my $uptime = `/usr/bin/uptime`; +$uptime =~ /^\s+(\d{1,2}:\d{2}..)\s+up\s+(\d+)\s+(......),/; +print "$2 $3\n", + "$firewall\n";
\ No newline at end of file |