]> git.baikalelectronics.ru Git - kernel.git/commit
bridge: Snoop Multicast Router Advertisements
authorLinus Lüssing <linus.luessing@c0d3.blue>
Mon, 21 Jan 2019 06:26:28 +0000 (07:26 +0100)
committerDavid S. Miller <davem@davemloft.net>
Wed, 23 Jan 2019 01:18:09 +0000 (17:18 -0800)
commit45903f3c2462f4ca04f0dc4cc9746f01a4d93f4c
tree01fb05eabe24132c0fa596c8cf7a536fffda134d
parent63cde1f4f40a79974c2cd67f01bfc569cd2b7adc
bridge: Snoop Multicast Router Advertisements

When multiple multicast routers are present in a broadcast domain then
only one of them will be detectable via IGMP/MLD query snooping. The
multicast router with the lowest IP address will become the selected and
active querier while all other multicast routers will then refrain from
sending queries.

To detect such rather silent multicast routers, too, RFC4286
("Multicast Router Discovery") provides a standardized protocol to
detect multicast routers for multicast snooping switches.

This patch implements the necessary MRD Advertisement message parsing
and after successful processing adds such routers to the internal
multicast router list.

Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/in.h
include/net/addrconf.h
include/uapi/linux/icmpv6.h
include/uapi/linux/igmp.h
net/bridge/br_multicast.c
net/ipv6/mcast_snoop.c