In order to use the Ethernet bridging functionality, you'll need the
userspace tools. These programs and documentation are available
at http://www.linux-foundation.org/en/Net:Bridge.  The download page is
http://prdownloads.sourceforge.net/bridge.

If you still have questions, don't hesitate to post to the mailing list 
(more info http://lists.osdl.org/mailman/listinfo/bridge).

