Per-interface MLD report suppression for IXP-facing interfaces (D59160)

Paulo Fragoso <[email protected]>
Newsgroups gmane.os.freebsd.devel.net
Message-ID <[email protected]>
Internet Exchange port policies commonly forbid non-unicast frames on
the peering fabric, with a narrow exception for broadcast ARP and
ICMPv6 Neighbor Discovery.  MLD is ICMPv6 but is not ND, so MLD reports
fall under the prohibition.

There is currently no supported way to hold an IPv6 address on a
FreeBSD interface without emitting MLD.  Solicited-node group
membership is mandatory (RFC 4291 2.7.1, RFC 4861 7.2.1) and membership
obliges reporting (RFC 3810 5).  The MLD sysctls select protocol
version behaviour rather than disabling reporting, and are not
per-interface.  The only remedy today is an egress packet filter, which
every operator at an exchange must rediscover independently --
typically after being notified by the exchange that they are in
violation.

This follows the precedent already set by no_dad, no_radr and
no_prefer_iface: per-interface, opt-in, default off, deviating from an
IPv6 RFC where operational policy requires it.  The same behaviour is
available on commercial routers -- Cisco's "no ipv6 mld router" -- and
its absence is a recurring obstacle for FreeBSD-based routers on
exchange fabrics.

The equivalent behaviour, implemented as an ipfw egress filter, has
run in production on AS28585 across eight IX.br localities: no MLD on
any peering VLAN, ND unaffected, all BGP sessions established, and the
exchange confirmed the traffic ceased.

The change is now in review as D59160, tested on 16.0-CURRENT
(n288360).  It adds a regression test to tests/sys/netinet6/mld.sh;
all three cases in that file pass under kyua.  Comments on the
approach welcome, particularly on whether the flag belongs in the nd6
flag word or in mld_ifsoftc.

Best Regards,
Paulo Fragoso
NLINK
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.