Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

For the past several years, I have been using a simple software bandwidth monitor on my computer to keep track of my monthly bandwidth usage. It has worked fine (more or less; the numbers are slightly off from my ISP’s online tracker).

This works fine for a single computer, but when my mother connects her laptop to my router or if I use second computer, then monitor and managing bandwidth becomes much more difficult.

I considered running a bandwidth monitoring software on each system that is to connected and (somehow) transferring the logs to a central system to (again somehow) be incorporated into a central log file, but not surprisingly, this is a nightmare at best.

I also thought about a router solution (as has been mentioned, but it would need to be easy to use and customize).

Is there an easy way to monitor and log total bandwidth usage (ie from multiple systems)? It should not require all the systems to be monitored to be on at any specific time, nor having all systems connect through another one (i.e., they should be able to connect directly to the Internet connection).

Also, it should be able to differentiate between local and remote traffic so that transferring files between two local systems does not count towards Internet bandwidth usage.

share|improve this question

migrated from Aug 14 '09 at 18:11

This question came from our site for system and network administrators.

@mattwilkie, thanks for the tip. In fact, I did install DD-WRT on my E1000 and it definitely had some nice logging abilities, but unfortunately it killed the router (which seems to be a common problem). :-( At the moment, I’m thinking of a way to use bandwidth-monitoring software on each system and consolidate the data now and then (which of course is super–non-ideal). – Synetech Nov 4 '12 at 14:07
ugh. Sorry to hear that Synetech. I haven't installed any firmware on my router yet, still doing research. I like the sound of Gargoyle, but unfornuately my puny WRT54G2 doesn't have the RAM for it. – matt wilkie Nov 4 '12 at 18:47
possible duplicate of How can I monitor internet usage in my network? – Ƭᴇcʜιᴇ007 Jan 21 '15 at 13:57
up vote 5 down vote accepted

If you aren't against buying hardware -- you could purchase a DD-WRT compatable router (Such as a Linksys WRT54GL) and install the Gargoyle Router firmware which can do per-ip monitoring internally, and would not be reliant on any one PC being online and available. If you don't care about per-ip, DD-WRT or Tomato firmware can both do total usage, and even cap your usage for you so you dotn get overbilled.

If you have a SNMP enabled switch and a PC that is on all the time you could log bandwidth usage per switch port with something such as Cacti (or RRDTool)

If you have a spare PC around, IPTables as a router + RRDTool can provide bandwidth logs.

share|improve this answer
No extra computers, but I would be open to a new router if it were inexpensive. I’ll take a look around to see if there are any deals on that router. – Synetech Aug 15 '09 at 12:47

Router is probably Best:
What router? lots of home-level routers can do this. If you get WRT54GL (make sure to get the L version), you can install an alternate firmware such as DD-WRT which can log this. The router makes the most sense.

Could Use Mirror Port:
Another option would be to set up a mirror port on the switch portion and sniff the traffic with a tool such as ntop on one of the machines, this is probably more effort than it is worth.

I don't know dumeter, but maybe put it on both and just add them up at the end of the month? :-)

share|improve this answer
My router is an older D-Link, so I don’t believe it has that (although it has other, more basic logging and stats functions). Actually, I had considered something like your add-it-up solution. I thought of having a script run on my mother’s machine that would periodically send the usage info to my system where it would add it to the total. I don’t mind cobbling together such a system, but I have my fingers crossed that there may be an existing solution. – Synetech Aug 15 '09 at 12:46

Another solution is to build a Linux (or Linux/BSD based) router PC with two NICs to filter your traffic through. The bootable routers usually have tools available to graph your traffic usage along with good firewall configuration and some of them even do traffic throttling and QoS type functions.

share|improve this answer
Thanks, but I can’t make a system that is always on (electricity isn’t cheap enough for that). – Synetech Aug 15 '09 at 12:43

I assume that you are building a Windows machine, but if you consider Ubuntu, then you could use vnstat to keep track of bandwidth. I run it on my server and occasionally like to know what my bandwidth usage is.

It will display hourly, daily, weekly, monthly....and even monitor in real time.

Its CLI, but very, very easy to use.

share|improve this answer
Yes, I am building a Windows system. Sorry. – Synetech Aug 15 '09 at 12:40

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .