This should also work on Windows, Mac OS X, xBSD, and pretty much any operating system that supports libpcap.

Running

First, setup a machine with three network interfaces.

The first network interface (like eth0) will be configured as normal, with a TCP/IP stack,
so that you can SSH to it.

The other two network interfaces should have no TCP/IP stack, no IP address, no anything. This is the
most important configuration step, and the most common thing you'll get wrong. For example, the DHCP
software on the box may be configured to automatically send out DHCP requests on these additional
interfaces. You have to go fix that so nothing is bound to these interfaces.

To run, simply type:

# ./bin/isowall --internal eth1 --external eth2 -c xxxx.conf

where xxxx.conf contains your configuration, which is described below.