Multicast RIB Component
The multicast RIB (mRIB) holds the multicast forwarding entries flockd programs into the dataplane. Each entry is keyed by a source and a group -- an (S,G) -- and carries the incoming interface packets for that pair must arrive on, and the set of outgoing interfaces they are replicated to. PIM is the only protocol that writes it, so every entry reports an origin of Pim.
The mRIB holds a table per VRF per address family, and it holds only entries that are ready to forward: PIM adds an (S,G) once its RPF has resolved and its outgoing interface list is non-empty, and withdraws it when either stops being true. So flockc pim vrf <vrf-name> rib shows entries the mRIB does not -- an (S,G) still waiting on RPF resolution is real PIM state with no forwarding entry behind it. When an (S,G) you expect is missing here, that command says why.
Operational State
All entries in the mRIB
The walk selects one address-family table and defaults to IPv4:
flock@r1:~$ flockc mrib vrf default walk
[{"source":"192.0.2.10","group":"232.1.1.1","origin":"Pim","iif":12,"oifs":[14],
"last_modified":"2026-08-03T09:14:22.481Z"}]
iif is the incoming (RPF) interface and oifs the outgoing interfaces, both as interface ids rather than names; flockc sys list-interfaces pairs each id with its name. oifs is sorted ascending.
last_modified records when that entry's forwarding state last changed, to millisecond resolution. A change that leaves the entry identical does not move it.
A single (S,G)
flock@r1:~$ flockc mrib vrf default lookup 192.0.2.10 232.1.1.1
{"source":"192.0.2.10","group":"232.1.1.1","origin":"Pim","iif":12,"oifs":[14],
"last_modified":"2026-08-03T09:14:22.481Z"}
An (S,G) the mRIB does not hold returns null. The source and the group must be of the same address family.
IPv6
--af ipv6 selects the IPv6 table. The mRIB holds IPv6 entries, but the Linux multicast forwarding cache is IPv4-only, so an IPv6 (S,G) has no forwarding-plane path and the table is normally empty.
mRIB Operation
Help
flockc mrib --help
mRIB walk
flockc mrib vrf <vrf-name> walk [--af ipv4 | ipv6]
mRIB lookup
flockc mrib vrf <vrf-name> lookup <source> <group>