RFC 3590 (rfc3590) - Page 2 of 6


Source Address Selection for the Multicast Listener Discovery (MLD) Protocol



Alternative Format: Original Text Document



RFC 3590       Source Address Selection for MLD Protocol  September 2003


   This document will clarify the IPv6 source address selection rules
   for use with MLD when no link-local addresses are available.

2.  Terminology

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [RFC 2119].

3.  Justification

   In [RFC 2710], Section 3 requires that all MLD messages be sent with
   a valid link-local IPv6 source address.  However, a node in the
   process of performing duplicate address detection for its link-local
   (LL) address will not have one available to use as a source address.
   For this reason, this document allows the unspecified address to be
   used as a source address for MLD messages being used during duplicate
   address detection.

   The discrepancies in the rules defined in [RFC 2710] and [RFC 2462]
   has led to implementation issues.  Several IPv6 implementations skip
   sending MLD Report messages during duplicate address detection
   because they have no valid link-local address.  This leads to
   operational problems when a node is attached to switches that perform
   MLD snooping.  In this scenario, duplicate address detection (DAD)
   will complete successfully and collisions can occur once the address
   is put into use because switches may not have forwarded the DAD
   messages to all nodes on the link as required.  This document fixes
   this problem by specifying that MLD reports are to be sent using an
   unspecified source address prior to DAD being started in order to
   ensure that messages sent to LL multicast addresses (e.g., including
   MLD) are forwarded to all appropriate nodes as required.

4.  MLD Source Address Selection Guidelines

   An MLD speaking node is required to choose a suitable IPv6 source
   address for all MLD messages (Report, Done, and Query).

   MLD Query messages MUST be sent with a valid link-local address as
   the IPv6 source address.  If a node (router or host) receives a query
   message with an IPv6 source address set to the unspecified address
   (::), it MUST silently discard the message and SHOULD log a warning.

   MLD Report and Done messages are sent with a link-local address as
   the IPv6 source address, if a valid address is available on the
   interface.  If a valid link-local address is not available (e.g., one
   has not been configured), the message is sent with the unspecified
   address (::) as the IPv6 source address.



Haberman                    Standards Track