Re: Bridges and Ethernet Devices



On Mon, 2018-01-15 at 10:34 +0000, thilo cestonaro ts fujitsu com
wrote:
Hey all!

I have a lack of knowledge about how I'm supposed to work with the
network
manager.

So here is my situation. I have two ethernet devices and multiple
bridges.
And I want to be able to connect one of the ethernet devices to one
bridge and
apply a static connection to that bridge then.
Afterwards I want to deactive this connection and use any other
combination of
these two ethernet devices and the bridges to get connected to my
network with
exactly the same static connection.

I want to learn the handling of bridges via network manager so thats
more or
less just a stupid example.

Hi,

See the D-Bus API:

https://developer.gnome.org/NetworkManager/stable/spec.html

Create connection profiles that are suitable to your need and activate
them. Also look at the output of `nmcli connection` and `nmcli device`
to understand what is happening.



How I try to do it is the following (all is done via NM DBus API):

# disconncet both ethernet devices
disconnect enp0s1, enp0s2

# disconnect the old bridge
disconnect br1

often, you don't need to explicitly disconnect anything (you might
though). Just activate what you care about, and NM will take care to
bring the interface down first.


# build the new connections
add and active connection for new bridge br3 (with static settings)
add and active connection for enp0s1 (as slave of br3)
add and active connection for enp0s2 (with "/" as connection)



On a minor note, it's a mistake to do:

  nmcli connection up br0-slave-eth0 && nmcli connection up br0

Either do

  nmcli connection up br0 && nmcli connection up br0-slave-eth0

or better just

  nmcli connection up br0-slave-eth0



Is this the way of doing it or how am I supposed to do it?

Do I need to delete the old connections?

No, you can have arbitrary many connection profiles.


Is network manager compatible with brctl or should I avoid using
brctl when I
manage my network devices with network manager?

brctl is deprecated for iproute2. You can use both to look at the
bridge's state (inspect, not change).

It's probably a bad idea to interfere with NM by modifying the bridge
using iproute2, but that might work too. Why would you need that? It
depends what exactly happens, but in general it's not a good idea
because there are inevitable races.



Is there a simple way to show slaves of a bridge with nmcli?

  nmcli -f BRIDGE.SLAVES device show br0



Use nmcli to understand what's happening, and look at the D-Bus API
(for example with the "d-feet" program).


best,
Thomas

Attachment: signature.asc
Description: This is a digitally signed message part



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