frr
frr copied to clipboard
`show ip mroute json` one route per group limit
While writing a topotest for static routes, I configured the same G to be forwarded on multiple interfaces, I came a cross this case:
show ip mroute (3 routes)
unet> r1 show ip mroute
IP Multicast Routing Table
Flags: S - Sparse, C - Connected, P - Pruned
R - SGRpt Pruned, F - Register flag, T - SPT-bit set
Source Group Flags Proto Input Output TTL Uptime
* 239.0.0.1 - STATIC r1-eth0 r1-eth1 1 00:00:23
* 239.0.0.1 - STATIC r1-eth1 r1-eth0 1 00:00:23
* 239.0.0.1 - STATIC r1-eth2 r1-eth0 1 00:00:23
show ip mroute json (only 1 route)
unet> r1 show ip mroute json
{
"239.0.0.1":{
"*":{
"iif":"r1-eth2",
"oil":{
"r1-eth0":{
"source":"*",
"group":"239.0.0.1",
"protocolStatic":true,
"inboundInterface":"r1-eth2",
"iVifI":3,
"outboundInterface":"r1-eth0",
"oVifI":1,
"ttl":1,
"upTime":"00:00:28"
}
}
}
}
}
unet>
since the json objects are keyed using the group address, any route for the same group ends up overwriting the existing ones even though it is a different route!
the *,G routes with different input IIF's is clearly broken. It should not be allowed.
@donaldsharp , I don't think it is. This is exactly what my recent static mroute fix did. You can have multiple senders for the same (*, G) coming on different interfaces and a receiver who wants to receive from all of them.
You can also have multiple hosts sending and receiving the same (*, G) connected on multiple interfaces. Those mroutes allow them to communicate. This is not strictly a static mroute issue. This is why we have ssm, to allow a receiver to select a specific source when multiple senders for the same group exists.
This issue is stale because it has been open 180 days with no activity. Comment or remove the autoclose label in order to avoid having this issue closed.
This issue will be automatically closed in the specified period unless there is further activity.