I recently became interested in getting a better handle on bandwidth usage on our Internet connection at work. I wanted to see what I can do for free (or at least very cheap) so I started researching solutions using Linux. Before I can try out any software though, I need a computer that can do the monitoring. I decided to build a transparent bridge or “Machine-In-The-Middle”, which is a computer with two network interface cards (NICs) which are bridged together so that any traffic going to one card is passed through to the other. The bridge computer is installed in between two other nodes on the network, and any traffic passed through the bridged NICs can be monitored by the bridge computer. The bridge creates a slight delay, but is otherwise transparent to the nodes it is connected to.
Most of the information I used to guide me in setting this up came from Bridging Ethernet Connections at the Ubuntu community wiki and this page on how to setup a bridge in Debian from microHOWTO. I thought it might be pretty difficult, especially since I’m not a hardcore Linux guy, but I found it to be surprisingly easy. For the rest of this post, I’ll cover what I did to setup my transparent bridge computer.