]> 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)
commitbf87f05f3139f55d2bd1c1eb937df12c8b8d7177
tree01fb05eabe24132c0fa596c8cf7a536fffda134d
parentd2ceb1c3c2492eaa62b7c0ca1ddf5830b1b22eaa
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