Implementation Uses libdnet simplified, portable interface to several low-level network routines: addr, arp, blob, eth, fw, intf, ip, rand, route *BSD, MacOS X, Linux, Solaris, HP-UX, Windows 2000, IRIX, etc. http://libdnet.sourceforge.net/ Portable packet interception is difficult Tunnel device (*BSD, only OpenBSD by default) - no local targets Divert sockets (FreeBSD, some Linux) Universal TUN/TAP driver (Linux, FreeBSD, Solaris) Linux ethertap device Linux userlink device