[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

bridges with multiple static IPs or DHPC - how to configure?



Hi,

how to configure a bridge with multiple static IPs and/or DHPC
via /etc/network/interfaces?

I tried many combinations, but I didn't find any working one.

Of course everything works as expected when configuring manually
with "ip", "brctl" etc.

Any working example would be great!

The rest of the mail discusses what I tried so far.

Yes, I read man bridge-utils-interfaces(5), but it has simple
examples only (single static IP or no IP). The man page tells,
interfaces used as bridge_ports

   "are the  interfaces  that  are  part  of  the  bridge,  and
   they shouldn't  have  any  stanzas defining them on the
   interfaces file"          -- man bridge-utils-interfaces(5)

but this is wrong. There must be a stanza like

  auto eth3.14
    iface eth3.14 inet manual

otherwise no bridge can use it any only gives an error message
like "interface eth3.14 does not exist!".

For an ordinary ethernet interface, the following works:

  auto eth3.10
  iface eth3.10 inet static
    address 10.72.9.17
    netmask 255.255.255.248
  iface eth3.10 inet static
    address 10.72.9.25
    netmask 255.255.255.248

For bridges, it is not clear how to use multiple stanzas for
multiple IPs; it seems, the options to create the bridge and to
add IPs to it are somehow mixed.
There are options like bridge_ports. They have to be in each
"iface br0" stanza?

  (Experiments show that "bridge_ports" are accumulated (probably
  simply because each stanza brctl addif each, in total producing
  the desired result), but other options such as bridge_maxwait
  are not.)

The same approach as for Ethernet does not work for Bridges:

  iface br1 inet static
    address 10.1.1.1
    netmask 255.255.255.248
    bridge_ports eth3.10
    bridge_maxwait 0
  iface br1 inet static
    address 10.1.1.9
    netmask 255.255.255.248
    bridge_ports eth3.11
    bridge_ports eth3.12
    bridge_maxwait 0

This adds all interfaces to br1, but only the IP address from the
last block.

It is similar when it comes to DHCP.

For an ordinary ethernet interface, the following works:

  allow-hotplug eth1
  iface eth1 inet static
    address 10.72.9.33
    netmask 255.255.255.248
  iface eth1 inet dhcp

(I cannot use "auto eth1", because system boots must never block)

The same approach as for Ethernet does not work for Bridges:

  iface br1 inet static
    address 10.1.1.9
    netmask 255.255.255.248
    bridge_ports eth3.11
    bridge_ports eth3.12
  iface br1 inet dhcp
    bridge_ports eth3.13

Again, the static IP address is missing.

Also experiments show, that "bridge_maxwait" does not work with dhcp:

iface br1 inet dhcp
  bridge_ports eth3.13
  bridge_maxwait 0

this blocks.

Probably I miss a simple detail, please help me. Any working
examples appreciated!

Regards,
Steffen


Reply to: