Replies: 1 comment 3 replies
-
I am not 100% sure to understand your setup, but LLDP is a link local protocol so it should not be transmitted through bridges. The bond is of no consequence here. |
Beta Was this translation helpful? Give feedback.
3 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hi everyone, I think I fundamentally misunderstand something as I've been struggling with proper setup for LLDP over bridge over bond in Linux. So here is general setup:
switchB -> Linux host pve100 [enp1s0->bond0->vmbr0->vmbr0.99]
enp1s0 is a physical interface, bond0 is a, well, bond :), in this case with a single interface. VLAN-aware bridge vmbr0 has only one port - bond0. And the IP is set on VLAN 99 of that bridge. So networking works just fine. switchB is a manged switch (TP-Link Omada something) that supports LLDP. I primarily use LLDP for network mapping purposes.
On another node where network setup is just eth0, with no bonds or bridges, LLDP neighbors show both on switch and on Linux host no problem.
So for pve100 I assumed that I need to run lldpd on enp1s0 directly (and all members of the bond if there are more than one). If I do that, then I see my switch in lldpcli show nei on pve100, but the switch doesn't see any LLDP neighbors.
Exact same thing happens if I run lldpd on bond0 - neighbors on host, no neighbors on switch.
If I run lldpd on vmbr0, then it is the opposite - I immediately see proper neighbor on the switch, but see no neighbors on the host anymore.
The last part can be addressed by adjusting MAC filtering on vmbr0:
echo 16384 > /sys/class/net/vmbr0/bridge/group_fwd_mask
With that setup, I am able to see neighbors on both ends. But I seriously doubt that this is intended setup. The last thing I want to see is issues with MAC flapping when there is more than one interface in bond0. BTW, bond0 has forced local MAC address (hwaddr), so it doesn't match any of the MACs of underlying interfaces (if that matters).
So how lldpd is supposed to be run in such a setup (e.g., with bridge over bonded interfaces)?
P.S. Probably a separate topic, but I expected that setting up 'configure system bond-slave-src-mac-type zero' would have an impact at some of these configurations, but looking at tcpdump it never changed MACs in LLDP packets, certainly not to zeros...
Beta Was this translation helpful? Give feedback.
All reactions