Page MenuHomeVyOS Platform

Add MLD protocol support
Closed, ResolvedPublic

Description

Currently VyOS has protocol igmp option to enable IGMP querier and reports through FRR's pimd.

I would like to add protocol mld for IPv6 as well since FRR's IPv6 multicast functionality has significantly improved.

Enabling MLD querier and reports on a VyOS router will allow us to turn on MLD snooping on layer-3 switches.

Details

Difficulty level
Unknown (require assessment)
Version
-
Why the issue appeared?
Will be filled on close
Is it a breaking change?
Perfectly compatible
Issue type
Feature (new functionality)

Event Timeline

vfreex created this object in space S1 VyOS Public.
vfreex changed Is it a breaking change? from Unspecified (possibly destroys the router) to Perfectly compatible.Aug 28 2023, 12:12 AM
vfreex changed Issue type from Unspecified (please specify) to Feature (new functionality).
Viacheslav changed the task status from Open to In progress.Aug 31 2023, 1:47 PM
Viacheslav assigned this task to vfreex.

Something is broken in smoketest test_protocols_pim6.py:

https://github.com/vyos/vyos-rolling-nightly-builds/actions/runs/6133954453/job/16646294279

See "Run smoketests" line 28676 and forward.

Something is broken in smoketest test_protocols_pim6.py:

https://github.com/vyos/vyos-rolling-nightly-builds/actions/runs/6133954453/job/16646294279

See "Run smoketests" line 28676 and forward.

I will have a look.

I dont know if its related to this task but I noticed recently that even if I have no IPv6 configured on any interface and have IPv6 disabled for forwarding:

set system ipv6 disable-forwarding

I can in VyOS 1.5-rolling-202309080021 see an additional pim6reg interface!?

vyos@vyos:~$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
...
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq master MGMT state UP group default qlen 1000
...
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq master INTERNET state UP group default qlen 1000
...
4: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq master INTERNET state UP group default qlen 1000
...
5: eth3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq master INTERNET state UP group default qlen 1000
...
6: pim6reg@NONE: <NOARP,UP,LOWER_UP> mtu 1452 qdisc noqueue state UNKNOWN group default qlen 1000
    link/pimreg 
7: INTERNET: <NOARP,MASTER,UP,LOWER_UP> mtu 65575 qdisc noqueue state UP group default qlen 1000
...
8: MGMT: <NOARP,MASTER,UP,LOWER_UP> mtu 65575 qdisc noqueue state UP group default qlen 1000
...

Its also visible when running:

monitor bandwidth interface *

pim6reg is created by FFR's pim6d. It seems to me that it will create such as interface for each VRF. Does this interface have any functional impact on your setup?

Im a bit allergic to have stuff automatically created which clearly is not enabled by the config.

Since I have no multicast settings configured no interfaces related to multicast should be autocreated.

Viacheslav changed the task status from In progress to Needs testing.Sep 11 2023, 9:48 AM

@Viacheslav This doesn't seem to be related. This PR is merged to 1.5 instead of 1.4.