IPAcct - a program to do per user ip accounting
------------------------------------------------------------------------------

This message announces version 0.7 of the ipacct package.

WHAT IS IT?

This package adds per user ip accounting to the kernel and contains
programs to control and use this accounting data.

Fist of all it consists of a kernel patch which adds per user ip accouting
to the kernel.
The kernel patch accounts all bytes sent or received on the ip level, i.e. all
headers get accounted including the ip header itself. This data is exported
via the proc filesystem.
Moreover the patch allows to control the ip access on a per user basis.  
Furthermore it is possible to specify a weight for ip addresses. This
weight controls how much every byte costs that is transfered from or to this
ip addresses. With this weight/cost set to zero you can ignore certain host
or networks completely from the statistics which might be convenient for the
local network. The cost can be different for different ip addresses.

Second, there's a program for controlling and viewing the weights/costs and
the accouting data produced by the kernel. With it you can modify the
weight table in a manner very similar to the syntax of the route program.

	- example output of ipacct ----------------------------------------
	User       Sent       Received	   Flags
	root       401364     401421    
	news       2143       2210       
	lf         221462     348287
	joe        1036475    2793743	   N
	guest	   65432734   43462382	   N
	nobody	   34323      23791
	-------------------------------------------------------------------
	
	In this example you see how much traffic every user produced
	since the last reset of the statistics. You can also see
	that further net access is denied of joe and for guest. 

	- example output of a weight table (ipacct -w) ------------------
	Addr            Mask            Weight
	192.0.2.24      255.255.255.255 1
	192.0.2.0       255.255.255.0   0
	default         *               1
	-------------------------------------------------------------------

	This weight table says that access to the host 192.0.2.24 is
        accounted with a costs of one per byte. Access to all other hosts of
        the net 192.0.2.0 is ignored (weight/cost 0). And access to all
        other hosts on the internet is accounted with a costs of one.

Third, a program named ipacctd creates an interface to your own
accounting program. It reads the kernel ip statistics every specified
intervall and passes to data to a user supplied program like ipquota
(see below). But you can also impose your own ip accounting policy by
writing your own program or shell script for recording and analyzing
the produced data.

And fourth, there is ipquota which is a package of itself. If used with
ipacctd it can impose ip quotas on certain users. These quotas can be
easily changed and viewed. Furthermore ipquota uses the feature of the
ipacct kernel patch to control access to the net: if a user exceeds his
quota he is denied further net access excluding access to hosts and networks
which a recorded with a weight/cost of zero in the kernel.

LSM ENTRY

	Look also under /pub/Linux/Incoming on sunsite, if it hasn't
	been moved, yet.

Begin3
Title:          IPAcct - Per user IP accounting program/kernel extension
Version:        0.7
Entered-date:   5JUN95
Description:	This program allows you to account the ip traffic
		on a per user basis. It also allows you to deny
		access for certain users. A program is provided
		which imposes ip quotas in the users.
Keywords:       net, ip, accounting, quota
Author:         lf@Comlink.DE (Lars Fenneberg)
Maintained-by:  lf@Comlink.DE (Lars Fenneberg)
Primary-site:   sunsite.unc.edu /pub/Linux/kernel/patches/network
                33kb ipacct-0.7.tar.gz
Alternate-site: students.fct.unl.pt /pub/linux/ip-acct (I think)
		33kb ipacct-0.7.tar.gz
Platforms:      Linux with a recent kernel, patches for 1.2.1 and above
		included
Copying-policy: GNU General Public License
		Copyright 1994, 1995, Lars Fenneberg
End

Thanks for your attention!
Lars.
