Stephen Hemminger <shemminger@xxxxxxxxxxxxxxxxxxxx> wrote on 2010/03/28 18:03:21: > > On Sun, 28 Mar 2010 17:19:13 +0200 > Joakim Tjernlund <joakim.tjernlund@xxxxxxxxxxxx> wrote: > > > Nicolas de Pesloüan <nicolas.2p.debian@xxxxxxx> wrote on 2010/03/26 22:35:40: > > > > > > Joakim Tjernlund a écrit : > > > > > > > > Nicolas de Pesloüan <nicolas.2p.debian@xxxxxxx> wrote on 2010/03/26 21:39:33: > > > > > > > >> From: Nicolas de Pesloüan <nicolas.2p.debian@xxxxxxx> > > > >> To: Joakim Tjernlund <joakim.tjernlund@xxxxxxxxxxxx> > > > >> Cc: bridge@xxxxxxxxxxxxxxxxxxxxxxxxxx > > > >> Date: 2010/03/26 21:39 > > > >> Subject: Re: IP address on physcial interface instead of > bridge interface? > > > >> > > > >> Joakim Tjernlund wrote: > > > >> > > > >>> Figure a small picture will help so here it is: > > > >>> > > > >>> Before adding eth0 to br0: > > > >>> eth0 br0 > > > >>> | > > > >>> | > > > >>> HW controller > > > >>> > > > >>> after adding eth0 to br0: > > > >>> eth0 > > > >>> \ > > > >>> \ > > > >>> br0 > > > >>> / > > > >>> / > > > >>> HW controller > > > >> I don't understand your ascii art. What is HW controller ? eth0 is an hardware > > > >> controller !? > > > >> > > > >> Nicolas. > > > > > > > > eth0 is the I/F IP stack will see/use. HW controller is the ethernet HW > controller, > > > > the PCI HW if you like. > > > > > > I tested the following setup: > > > > > > # eth0 setup: > > > > > > ip addr add $IP dev eth0 > > > ip link set up dev eth0 > > > ip route add default via $DEF_ROUTE > > > > > > # bridge setup: > > > > > > brctl addbr br0 > > > brctl setfd br0 0 > > > > > > Then I tested the following migration sequence to move the IP addresse to br0: > > > > > > ip addr add $IP dev br0 > > > ip link set up dev br0 > > > > > > brctl addif br0 eth0 > > > ip addr del $IP dev eth0 > > > ip route add default via $DEF_ROUTE > > > > > > Thanks to "brctl setfd br0 0", this migration cause no trouble to active > connections. > > > > > > So I cannot find a good reason to try and use eth0 as the "main" bridge interface. > > > > > > Do you have a process really linked to eth0 ? > > > > So I did a quick test and it did seem to work for the simple case. However > > there may be other routes connected to eth0 than just the default route so > > one have to scan the whole route table. There is also the another problem, > > now the I/F is named br0 and all config/status ops related to eth0 must > > be changed to use br0 instead. > > The routing daemon(Quagga) also needs to update its config to use br0 instead. > > All in all, using br0 instead of eth0 works on a technical level but > > all apps dealing with routes and interfaces needs to be updated and this > > is not trivial nor wanted. > > > > Allowing eth0 be used as I suggested would really help in these > > configurations. Would such a change be welcomed and is it > > hard to impl. ? > > The bridge code is becoming a mess as everyone implements there favorite Sure, I understand that but I felt this was general enough to be a standard feature. > rework. I prefer to have custom modifications handled by netfilter (the all purpose > packet patch kit). hmm, not sure I follow here. Are you saying I can do this by using netfilter? I don't see how netfilter can do this. > > I am considering some patches to allow a "master interface" but this solves a different > issue, which relates to booting in virtual environments. Perhaps my suggestion would work for that case too? > > You can always rename interfaces. > > ip li set dev eth0 name eth0_link > ip li set dev br0 name eth0 Possibly, but to rename an I/F I have to bring it down first. Then communication stops and all routes are deleted so that doesn't feel like a viable solution. Jocke _______________________________________________ Bridge mailing list Bridge@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/bridge