Ok, i have about had it but heres the deal. I have 7 total machines connected like this:

[5 workstations]<--->ServerPC<---->MAINPC<---->router

FYI, dont worry about the workstations they are all functioning fine... the router connects to a cable modem for internet access.

now the MAINPC has ubuntu 12.10 and previously I have had the two cards bridged. This was in windows xp, btw... Now I downloaded and installed bridge-utils my network is configured like this (when it was working)


DNS:   Secondary DNS:

the router is at, I use static IPs because ServerPC is a domain controller , it has 5 other workstations connected to it, all using that same 192.168.2.x network.... but at the time Im only worried about my main pc's bridge working again, everything else is not to be touched.

I followed many tutorials on this, high and low, all over the internet, ended up with an /etc/network/interfaces file looking like this:

auto lo
iface lo inet loopback

#iface eth0 inet manual 
#iface eth1 inet manual # <-- didnt seem to make a difference, it was suggested by some other tutorial

auto br0
iface br0 inet static
bridge_ports all

--- thats it now, this bridge does work, ALL the other 6 machines (the server, the 5 other workstations) all have internet access and can see my main PC, my main pc can see the other machines and workstations, even the router ( responds to ping. BUT, if i try pinging something on the internet, like google.com, i get the error:

From ubuntu.local ( icmp-seq=5 Destination Host Unreachable

I tried swapping the devices (eth0 to eth1, and vice versa) and it makes no difference, I can resolve internet addresses, just cant connect to them, but all the others can.

Before you answer, please keep in mind i'm not looking for an altenative to bridging, I cannot do NAT or any other weird firewall... so if you cant tell me how to answer this question, i really don't want any "alternative suggestions" no offence.. thanks :)

  • I would keep your iface eth* inet manual lines, just to keep Network manager out of the way (and i would also restart it after a /etc/network/interfaces change, or better: stop it). Also, bridge_ports all is not a very good idea. – BatchyX Jan 15 '13 at 21:01
  • When everything is configured, please show the output of ip addr, routel and maybe ip neigh. – BatchyX Jan 15 '13 at 21:03
  • Actually that was it, the Network manager was interfering with it, and thanks for telling me about the routel and ip commands they helped me finish this setup, so in the end I only had to reboot once before the configuration was fine... thanks a bunch. – osirisgothra Jan 16 '13 at 1:01
  • Oh yeah, if you put that as an answer i'll go head and accept that as the answer since it did work. – osirisgothra Jan 16 '13 at 1:01

I would keep your iface eth* inet manual lines, just to keep NetworkManager out of the way (and i would also restart it after a /etc/network/interfaces change, or better: stop it).

Also, bridge_ports all is not a very good idea. It really bridges whatever looks like an ethernet interface, and sometimes miss the one you want, because it filters the list of interfaces with regexes. It's best to explicitely tell which port should be used.

To debug your setup, you can use the following commands:

  • Print new-style information about configured interfaces and IP addresses : ip addr

    Look for "master" stanzas: ports of the bridge should have the bridge interface as master. (because, technically, brctl and bridge-utils use antique kernel interfaces, the same thing can be achieved with ip link)

  • Print everything that could be printed about routing tables (except the routing policy database): routel

  • Print the state of the ARP table (for the ND table, add -6): ip neigh

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.