• Ido Schimmel's avatar
    rtnetlink: bridge: mcast: Relax group address validation in common code · da654c80
    Ido Schimmel authored
    In the upcoming VXLAN MDB implementation, the 0.0.0.0 and :: MDB entries
    will act as catchall entries for unregistered IP multicast traffic in a
    similar fashion to the 00:00:00:00:00:00 VXLAN FDB entry that is used to
    transmit BUM traffic.
    
    In deployments where inter-subnet multicast forwarding is used, not all
    the VTEPs in a tenant domain are members in all the broadcast domains.
    It is therefore advantageous to transmit BULL (broadcast, unknown
    unicast and link-local multicast) and unregistered IP multicast traffic
    on different tunnels. If the same tunnel was used, a VTEP only
    interested in IP multicast traffic would also pull all the BULL traffic
    and drop it as it is not a member in the originating broadcast domain
    [1].
    
    Prepare for this change by allowing the 0.0.0.0 group address in the
    common rtnetlink MDB code and forbid it in the bridge driver. A similar
    change is not needed for IPv6 because the common code only validates
    that the group address is not the all-nodes address.
    
    [1] https://datatracker.ietf.org/doc/html/draft-ietf-bess-evpn-irb-mcast#section-2.6Signed-off-by: default avatarIdo Schimmel <idosch@nvidia.com>
    Reviewed-by: default avatarNikolay Aleksandrov <razor@blackwall.org>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    da654c80
rtnetlink.c 159 KB