IP Flow Meter
You will find on this page some instructions to use IPFM, in order to monitor bandwidth usage on a global network.
See also :
- WinFM to monitor your bandwith usage under Windows
- The correction
License : GPL
Authors : Robert CHERAMY <[email protected]>, Andres KRAPF <[email protected]>
Home Page : http://www.via.ecp.fr/~tibob/ipfm/
Installation
To install IPFM, the following things are required :
- libpcap, libpcap-dev
- IPFM sources
Then, you just have to
- Compile : make
- Install : make install
- Launch IPFM : ipfm
Patch
I have modified slightly the source code to adapt IPFM for my personal use.
Here are the changes :
- Meaning of NOT WITH in the configuration file has changed : it does not mean anymore A of the network MaskA in relation with B of the network MaskB, but A belongs to the MaskA network, but not to the MaskB network.
This is useful when you want to log only communication with a global network, and not those on the local network. - capability of writing the file several time for the same log period.
This is useful when you intend to monitor your use of the network all the day long, and not only at the end of the day.
WARNING : Help files have not been modified. Changes are made clear in the source code, in the files data.c and filter.c.
Source code is available here.
Quick view script
This is a small script to have a quick view on your total use of the global network. Do not forget to make the script executable, and to have ipfm launched, then just type ./ipfm-status
. You maybe would have to modify the log source name.
Configuration
Here is my configuration file. For more information, please refer to the man page.
Correction
As somebody told me, you can have these features using the standard version of IPFM :
- Log just the global network : LOG BOTH 138.195.128.0/255.255.240.0 NOT WITH 138.195.0.0/255.255.0.0. Tell IPFM to LOG in BOTH way (send, receive)the traffic between your machine (here 138.195.xxx.yyy), and all other machines except (NOT WITH) those in the 138.195 subnet.
- And you can write in different files, and then concatenate these files with a script.
As you can see, sometimes the C source code is more understandable than the man page :-).