[systemd-devel] How to set primary slave in active-backup mode (bonding)

Tom Gundersen teg at jklm.no
Tue May 19 09:12:15 PDT 2015

On Thu, Apr 9, 2015 at 4:29 PM, Mikhail Morfikov <mmorfikov at gmail.com> wrote:
> I usually have two network interfaces on my laptops (one eth and one
> wlan), and when I was using sysvinit I also was configuring the bond
> interface via the /etc/network/interfaces file so the two interfaces
> could work in the active-backup mode. But now, they work in balance-rr
> mode which is set via the .netdev file. The problem with this mode is
> that when you have, let's say wifi 30mbit/s and wired 100mbit/s, you
> can get 60mbit/s max, and that's why I wanted to use the active-backup
> mode which switches from wire to wifi and vice versa depending on
> whether the ethernet cable is plugged in. Generally speaking, I have to
> set some additional parameters so this could work well, and that would
> be:

We don't yet fully support all the bonding options.

> bond-primary eth1

This is not currently supported, I suppose we should add the
possibility of marking a slave as 'primary' to the .network file
(rather than listing the slave in the .netdev file).

> bond-primary-reselect always

This is PrimaryReselectPolicy=always in the .netdev file.

> bond-slaves eth1 wlan0

This is achieved by setting Bond= in the .network files applied to
eth1 and wlan0.

> bond-fail-over-mac none

This is FailOverMACPolicy=none in the .netdev file, which is also the
default, so is redundant.

> I'm not sure if all of them are necessary, and the question is how to
> pass these parameters in systemd? I'm asking because in the
> systemd.netdev manual, in the bond section, these options weren't
> specified.

I hope the above helps, but I suspect you really need the feature to
specify the primary slave for this to work as you intended. Happy to
take a patch!



More information about the systemd-devel mailing list