Style Cleanup Required
UPDATE [15/04/2016] - by LeeSharp NOTE: Bridging is popular, and so it has reference material in several places that may not all be updated at once. These are the links I know of;
KVM Networking - Network configuration for the KVM virtual machines server.
Network Connection Bridge - A detailed page on configuring Bridge-Utils.
Installing bridge utilities - This page.
Network Monitoring Bridge - An in-line sniffer page.
Installing bridge utilities
You will need the bridge utilities for that, which all you need to do is install the bridge-utils package.
apt-get install bridge-utils
Setting up bridge utilities
With no further ado, this is my /etc/network/interfaces file:
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback address 127.0.0.1 netmask 255.0.0.0 # This is a list of hotpluggable network interfaces. # They will be activated automatically by the hotplug subsystem. auto eth0 auto ath0 auto br0 # The internet network interface iface eth0 inet dhcp # The wireless side of the bridge iface ath0 inet manual wireless-essid MY_ESSID wireless-key ********** wireless-mode master # The local network bridge iface br0 inet static bridge_ports ath0 eth1 address 192.168.0.2 netmask 255.255.255.0
The explanation is as simple as this file: the system is going to start eth0 (the internet side network interface), ath0 (the wireless network interface) and br0 (the bridge). ath0 being 'manual' and not 'static' or 'dhcp', no IP will be assigned to it, but I need the 'auto' to set the wireless parameters. eth1 is set up automatically as part of the bridge setup.
Note: the bridge takes time to come up. Be patient!
Before you start complaining, you should know that in fact, this does not work for me. For some reason, the atheros wireless interface goes back down in the process. I tried very hard to find a way to bring it back up, and the only one I could rely on was to add this in /etc/rc.local, just before the line containing 'exit 0':
ip link set dev ath0 up
This is an ugly hack, but at least it does bring ath0 up...
Note for Edgy users: the madwifi driver does not support setting the mode this way, and even using the required tool did not provide me a working access point.
UPDATE [27/05/2011] - by RoastingHosting. Aside from the above 'ugly hack' (which works fine). It is also possible to bring the interface up with no IP from the /etc/network/interfaces file - this is very handy for building virtual platforms where you simply want to connect a NIC to a physical port on a VLAN but assign no IP. The following worked for me on Ubuntu 10.04LTS
######### # Start # ######### auto eth1 iface eth1 inet manual up ip link set eth1 up auto br1 iface br1 inet manual bridge_ports eth1 bridge_fd 0 bridge_hello 2 bridge_maxage 12 bridge_stp off ####### # End # #######
The trick is setting both the physical NIC and the bridge to 'manual' mode then using the 'up ip link set ethX up' parameter. I hope this saves someone else some time!
I struggled to find the right information, so I think this might be useful! If you want to write to me directly, my e-mail is on my wiki page at HervéFache.
Also, consider this article: http://www.linux.com/article.pl?sid=06/07/10/1729226 on the same subject.