Re: [systemd-devel] systemd-networkd bridge doesn't work until switched to promiscous mode

2015-03-25 Thread Elias Probst
On 02/11/2015 07:34 PM, Lennart Poettering wrote:
 On Wed, 11.02.15 17:48, Peter Lemenkov (lemen...@gmail.com) wrote:
 
 Hello All!
 I see that promiscous mode was discussed a few times before but I'm
 not sure if I found something new or not.

 I've got the following setup - a physical interface (enp1s0f0), which
 I wanted to add to the bridge (br0).

 My setup consists of the following files

 * br0.netdev:

 [NetDev]
 Name=br0
 Kind=bridge

 * br0.network:

 [Match]
 Name=br0

 [Network]
 Address=xx.yy.zz.27/27
 Gateway=xx.yy.zz.17

 * enp1s0f0.network:

 [Match]
 Name=enp1s0f0

 [Network]
 Bridge=br0

 So this looks pretty simple. Unfortunately it doesn't work.

 If I start pinging xx.yy.zz.17, then I see (using tcpdump) that the
 gateway even replies, and this reply was received at physical
 interface but br0 doesn't recognize it (and consequently ping didn't
 get a reply back).

 But if I change the br0 mode with ifconfig br0 promisc it starts
 receiving data.

 Is this a known issue? Or maybe I missed something in docs?
 
 Sounds like a kernel bug. Normally the bridge logic should turn on
 promisc mode automatically if this is needed. If this doesn't work
 this appears to be a kernel bug. 
 
 That said, Tom might know more. Tom?

Any updates on this?
Any idea who's really to blame for that? Kernel? systemd-networkd?

Seeing exactly the same issue on CentOS 7 here with a really simple
bridge setup which looks more or less the same as the one above.

It can be worked around temporarily (until the next reboot) using
ip link set dev vmbridge promisc on

Is there a better/cleaner way to permanently work around it? Couldn't
find a way to set something like Promisc=On in a bridge's .netdev

Using systemd-219 from https://copr.fedoraproject.org/coprs/lnykryn/systemd/
CentOS 7 runs Kernel 3.10.0-123.el7.x86_64

- Elias



signature.asc
Description: OpenPGP digital signature
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] systemd-networkd bridge doesn't work until switched to promiscous mode

2015-02-11 Thread Lennart Poettering
On Wed, 11.02.15 17:48, Peter Lemenkov (lemen...@gmail.com) wrote:

 Hello All!
 I see that promiscous mode was discussed a few times before but I'm
 not sure if I found something new or not.
 
 I've got the following setup - a physical interface (enp1s0f0), which
 I wanted to add to the bridge (br0).
 
 My setup consists of the following files
 
 * br0.netdev:
 
 [NetDev]
 Name=br0
 Kind=bridge
 
 * br0.network:
 
 [Match]
 Name=br0
 
 [Network]
 Address=xx.yy.zz.27/27
 Gateway=xx.yy.zz.17
 
 * enp1s0f0.network:
 
 [Match]
 Name=enp1s0f0
 
 [Network]
 Bridge=br0
 
 So this looks pretty simple. Unfortunately it doesn't work.
 
 If I start pinging xx.yy.zz.17, then I see (using tcpdump) that the
 gateway even replies, and this reply was received at physical
 interface but br0 doesn't recognize it (and consequently ping didn't
 get a reply back).
 
 But if I change the br0 mode with ifconfig br0 promisc it starts
 receiving data.
 
 Is this a known issue? Or maybe I missed something in docs?

Sounds like a kernel bug. Normally the bridge logic should turn on
promisc mode automatically if this is needed. If this doesn't work
this appears to be a kernel bug. 

That said, Tom might know more. Tom?

Lennart

-- 
Lennart Poettering, Red Hat
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


[systemd-devel] systemd-networkd bridge doesn't work until switched to promiscous mode

2015-02-11 Thread Peter Lemenkov
Hello All!
I see that promiscous mode was discussed a few times before but I'm
not sure if I found something new or not.

I've got the following setup - a physical interface (enp1s0f0), which
I wanted to add to the bridge (br0).

My setup consists of the following files

* br0.netdev:

[NetDev]
Name=br0
Kind=bridge

* br0.network:

[Match]
Name=br0

[Network]
Address=xx.yy.zz.27/27
Gateway=xx.yy.zz.17

* enp1s0f0.network:

[Match]
Name=enp1s0f0

[Network]
Bridge=br0

So this looks pretty simple. Unfortunately it doesn't work.

If I start pinging xx.yy.zz.17, then I see (using tcpdump) that the
gateway even replies, and this reply was received at physical
interface but br0 doesn't recognize it (and consequently ping didn't
get a reply back).

But if I change the br0 mode with ifconfig br0 promisc it starts
receiving data.

Is this a known issue? Or maybe I missed something in docs?
-- 
With best regards, Peter Lemenkov.
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel