README
上传用户:shbosideng
上传日期:2013-05-04
资源大小:1555k
文件大小:2k
源码类别:

SNMP编程

开发平台:

C/C++

  1. IPacc v0.1
  2. Using IP accounting kernel rules to feed mrtg.
  3. 1. Abstract
  4.  I am using the old ipfwadm style for doing this for backwards compatibility,
  5. and because it's enough for my purpose.
  6.  For those who have kernels higher than 2.0 (using IPchains), like 2.1 or 2.2.
  7. I have included the ipfwadm-wrapper by Paul Russel.
  8. So if you if you are running on 2.2 (like me), you should copy this to 
  9. /sbin/ipfwadm.
  10. It's a little slow, but it's done with sh.
  11.  With this script you may generate trafic grahs for any IP, any networks or subnetworks.
  12.  I haven't done support for icmp prot.
  13. 2. Syntax
  14.  You use the exact sintax as with ipfwadm 
  15.  ipacc [mode] [-S source_ip/net_bits [port1 port2 ...]] [-D dest_ip/net_bits [port1 port 2 ...]]
  16. where:
  17.   mode - is either "in" or "out", if you don't specify any there will be 
  18. included 2 rules in this fashion:
  19.    in -S source_ip/net_bits sport1 sport2 -D dest_ip/net_bits port1 port2
  20.    out -S dest_ip/net_bits dport1 dport2 -D source_ip/net_bits sport1 sprot2
  21. source_ip & dest_ip - are the dotted ip address of the source and the 
  22. destination (IP address not hosts)
  23. net_bits - are number of bits used by the network+subnetwork if any
  24. (that is 24 for a whole class C or 25 for half a C class ...)
  25. you don't have to specify any if you are doing it for a host
  26. portN - the ports where the packet it comming from and is going to
  27. 3. The printings
  28.   If you are using one way
  29.    ipacc will print 
  30. inbytes, 0, uptime, server_name  for an "in" mode rule
  31.     or
  32.         0, outbytes, uptime, server_name  for an "out" mode rule
  33.     for both ways (in - out)
  34.      it will print
  35.          inbytes, outbytes, uptime, server_name
  36. inbytes, outbytes - the numbers read from the ipfwadm command
  37. uptime - is what the uptime command will print
  38. server_name - is what you'll write at the server name in the script
  39. So you will add something like
  40. Target[ipaddr]: `ipacc arguments`
  41. Cristian Caramida   <brick@bbs.ro>
  42. and soon <brick@pcnet.ro>
  43. 4. End