Page MenuHomeVyOS Platform

VyOS does not properly disables pim6d
Open, NormalPublicBUG

Description

Hello!

I need to disable every multicast protocol on a specific interface (or entire box) and I'm unable to disable PIM6 anyways.

leonardo@vyos:~$ ps aux | grep pim
root        1581  0.0  0.0   8880  3520 ?        S<s  Apr12  22:52 /usr/lib/frr/watchfrr -d -F traditional zebra mgmtd bgpd ripd ripngd ospfd ospf6d isisd babeld pim6d ldpd s
taticd bfdd
frr         1632  0.0  0.0  12072  7452 ?        S<s  Apr12   1:19 /usr/lib/frr/pim6d -d -F traditional --daemon -A ::1
frr       251004  0.0  0.0  12592  6900 ?        Ss   09:41   0:00 /usr/lib/frr/pimd -d -F traditional --daemon -A 127.0.0.1
leonardo  261181  0.0  0.0   6336  2048 pts/0    S+   15:49   0:00 grep pim
leonardo@vyos:~$ config
...
[edit]
leonardo@vyos# delete protocols pim
pim   pim6
[edit]
leonardo@vyos# delete protocols pim
[edit]
leonardo@vyos# delete protocols pim6
[edit]
leonardo@vyos# compare
[protocols]
- pim {
-     interface bond0 {
-         igmp {
-             disable
-         }
-         passive
-     }
-     interface bond0.1915 {
-         igmp {
-             disable
-         }
-         passive
-     }
-     interface bond0.2479 {
-         igmp {
-             disable
-         }
-         passive
-     }
-     interface bond0.2554 {
-         igmp {
-             disable
-         }
-         passive
-     }
-     interface eth2 {
-         igmp {
-             disable
-         }
-         passive
-     }
-     interface eth4 {
-         igmp {
-             disable
-         }
-         passive
-     }
-     interface eth4.42 {
-         igmp {
-             disable
-         }
-         passive
[edit]
leonardo@vyos# commit
[edit]
leonardo@vyos# ps aux | grep pim
root        1581  0.0  0.0   8880  3520 ?        S<s  Apr12  22:52 /usr/lib/frr/watchfrr -d -F traditional zebra mgmtd bgpd ripd ripngd ospfd ospf6d isisd babeld pim6d ldpd staticd bfdd
frr         1632  0.0  0.0  12072  7452 ?        S<s  Apr12   1:19 /usr/lib/frr/pim6d -d -F traditional --daemon -A ::1
leonardo  261471  0.0  0.0   6336  2176 pts/0    S+   15:50   0:00 grep pim

As this interaction shows, there is no proper way to effectively disable PIM6 from the box.

It's possible to fix this issue and keep pim/pim6 effectivelly disabled if their config is removed?

Thanks!

Details

Version
VyOS 1.5-stream-2025-Q1
Is it a breaking change?
Unspecified (possibly destroys the router)
Issue type
Bug (incorrect behavior)

Event Timeline

All FRR daemons started even if not configured. You can check it with:

vyos@r1# ps ax | grep frr
   1383 ?        S<s    0:01 /usr/lib/frr/watchfrr -d -F traditional zebra mgmtd bgpd ripd ripngd ospfd ospf6d isisd babeld pim6d ldpd nhrpd staticd bfdd fabricd
   1404 ?        S<sl   0:00 /usr/lib/frr/zebra -d -F traditional --daemon -A 127.0.0.1 -s 90000000
   1409 ?        S<s    0:00 /usr/lib/frr/mgmtd -d -F traditional --daemon -A 127.0.0.1
   1411 ?        S<sl   0:00 /usr/lib/frr/bgpd -d -F traditional --daemon -A 127.0.0.1 -M rpki
   1418 ?        S<s    0:00 /usr/lib/frr/ripd -d -F traditional --daemon -A 127.0.0.1
   1421 ?        S<s    0:00 /usr/lib/frr/ripngd -d -F traditional --daemon -A ::1
   1425 ?        S<s    0:00 /usr/lib/frr/ospfd -d -F traditional --daemon -A 127.0.0.1
   1428 ?        S<s    0:00 /usr/lib/frr/ospf6d -d -F traditional --daemon -A ::1
   1431 ?        S<s    0:00 /usr/lib/frr/isisd -d -F traditional --daemon -A 127.0.0.1
   1434 ?        S<s    0:00 /usr/lib/frr/babeld -d -F traditional --daemon -A 127.0.0.1
   1437 ?        S<s    0:00 /usr/lib/frr/pim6d -d -F traditional --daemon -A ::1
   1443 ?        S<     0:00 /usr/lib/frr/ldpd -L -u frr -g frr
   1444 ?        S<     0:00 /usr/lib/frr/ldpd -E -u frr -g frr
   1446 ?        S<s    0:00 /usr/lib/frr/ldpd -d -F traditional --daemon -A 127.0.0.1
   1451 ?        S<s    0:00 /usr/lib/frr/nhrpd -d -F traditional --daemon -A 127.0.0.1
   1455 ?        S<s    0:00 /usr/lib/frr/staticd -d -F traditional --daemon -A 127.0.0.1
   1460 ?        S<s    0:00 /usr/lib/frr/bfdd -d -F traditional --daemon -A 127.0.0.1
   1463 ?        S<s    0:00 /usr/lib/frr/fabricd -d -F traditional --daemon -A 127.0.0.1
   3486 pts/0    S+     0:00 grep frr
[edit]
vyos@r1#

Not a real bug, but a specific implementation

Viacheslav triaged this task as Normal priority.May 1 2025, 8:20 AM

@Viacheslav hello!

Maybe, but brazillian IX.br asked us about unadvertised MLD packages on their network and even disabling it as stated in the configuration, daemon keeps sending MLD packages on their interfaces. If you need to collect more data, I can attach it here too.

Also, watchfrr may be reconfigured to disable daemons without kill the current in use ones?