[LARTC] NAT statistics

Linux Advanced Routing and Traffic Control

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Well,
iptables accounting thingi would give you bytes transferred only for
the rules that you have in your firewall. Its a cruddy way of doing
things, but if you want both incoming and outgoing traffic logging, put in
dummy rules for incoming and outgoing traffic on a per IP basis.

e.g. just giving you an example, by default, all incoming packets are set
to ACCEPT in the INPUT chain. If you wanna know how much traffic is coming
from your clients to your machine, put in INPUT ACCEPT rules for each
machine. You'll now get bytes transferred for these rules. Extract the
info and use.

This would get cruddy if you have tons of machines sitting behind your
firewall. Better way to do is to use some network sniffing tool which can
generate stats, which ofcourse is not in the scope of discussions of this
list.

I dunno if there is a better way of doing this using iptables. Maybe
someone else can shed some light on this.

VaibhaV


On Thu, 14 Mar 2002 15:43:09 +0200 (EET) "Sebastian Taralunga"
<seba@tcx.ro> wrote:

> 
> Thank you VaibhaV,
> 
> Your script works just fine however my problem is to get traffic
> information about both downlink and uplink on a NAT server. Do you know
> what iptables rules should I use to be able to see such information?
> Right now my rules look like this (generated by iptables-save):
> 
> *nat
> :PREROUTING ACCEPT [1372:944647]
> :POSTROUTING ACCEPT [0:0]
> :OUTPUT ACCEPT [0:0]
> -A POSTROUTING -s 192.168.130.2 -j MASQUERADE
> -A POSTROUTING -s 192.168.130.3 -j MASQUERADE
> 
> -----
> 
> Regards,
> 
> Sebastian
> 
> On Thu, 14 Mar 2002, VaibhaV Sharma wrote:
> 
> > Hello,
> > See the -v option in man iptables
> >
> >
> >        -v, --verbose
> >               Verbose output.  This option makes the list command
> >               show the interface address, the  rule  options  (if
> >               any), and the TOS masks.  The packet and byte coun­
> >               ters are also listed, with the suffix 'K',  'M'  or
> >               'G' for 1000, 1,000,000 and 1,000,000,000 multipli­
> >               ers respectively (but see the  -x  flag  to  change
> >               this).   For  appending,  insertion,  deletion  and
> >               replacement, this causes  detailed  information  on
> >               the rule or rules to be printed.
> >
> >
> > This would give you the amount of data transferred for each rule that
> > you have in ur firewall as one of the columns
> >
> > I wrote a small script to extract amount of data for each client I am
> > allowing FORWARD. The script takes the IP address of the machine you
> > wanna find info about as the command line parameter.
> >
> > ------------------------------------------------
> > #!/bin/sh
> >
> > details=`/sbin/iptables -L -v -n | grep ACCEPT | grep -v INPUT | grep
> > -v OUTPUT | tr -s " " | grep $1 | cut -d" " -f 3,9,12`
> >
> > bytes=`echo $details | cut -d" " -f1`
> > ip=`echo $details | cut -d" " -f2`
> >
> > echo "IP address $ip transferred $bytes bytes."
> >
> > ------------------------------------------------
> >
> > The cut thingi's are customised to the output I get for my rules.
> > Check urs and modify.
> >
> > VaibhaV
> >
> >
> > On Thu, 14 Mar 2002 11:30:01 +0200 (EET) "Sebastian Taralunga"
> > <seba@tcx.ro> wrote:
> >
> > >
> > > Hi,
> > >
> > > I want to be able to get statistics per IP address for both incoming
> > > and outgoing traffic on a NAT server using iptables and kernel
> > > v2.4.18. I actually have the same problem for a server running
> > > kernel v2.2.20, using ipchains.. Can anyone help me?
> > >
> > > Regards,
> > >
> > > Sebastian
> >
> >
> >  \                                                                  \
> >   \------------------------------------------------------------------\
> > \  |VaibhaV Sharma     |     vaibhav@exocore.com  |   L I N U X   \  |
> >  \ |Exocore Consulting |  http://www.exocore.com  |                \ |
> >   \|Bangalore, India   |  +91(80)3440397,3341137  |   R O C K S     \|
> >    \-----------------------------------------------------------------/
> > _______________________________________________
> > LARTC mailing list / LARTC@mailman.ds9a.nl
> > http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
> >


 \                                                                  \
  \------------------------------------------------------------------\
\  |VaibhaV Sharma     |     vaibhav@exocore.com  |   L I N U X   \  |
 \ |Exocore Consulting |  http://www.exocore.com  |                \ |
  \|Bangalore, India   |  +91(80)3440397,3341137  |   R O C K S     \|
   \-----------------------------------------------------------------/


[Index of Archives]     [LARTC Home Page]     [Netfilter]     [Netfilter Development]     [Network Development]     [Bugtraq]     [GCC Help]     [Yosemite News]     [Linux Kernel]     [Fedora Users]
  Powered by Linux