Dynamic Host Configuration Protocol (DHCP) Options for Broadcast and Multicast Control Servers
Extracted elements (18)
DHCP is used for BCMCS controller discovery because in a roaming environment, static configuration of the BCMCS controller's IP address becomes unrealistic. DHCP enables dynamic configuration of MNs with either the IP address or FQDN of the controller.
The multiple domain names in the BCMCS Controller Domain Name List option SHOULD be used to construct SRV lookups as specified in the BCMCS specification, rather than querying for different A records. The client can try any or all of the domain names.
A DHCPv4 client MAY request the BCMCS Controller Domain Name List (code 88) and/or the IPv4 Address option (code 89) in the Parameter Request List option (code 55). A DHCPv6 client MAY request either or both options in the ORO.
A server configured with BCMCS Controller IP Address information MUST send the IP Address option if the client requested only that option and not the Domain Name List option.
Domain names MUST be concatenated and encoded using the technique in RFC 1035 Section 3.3 (DNS name label encoding). DNS name compression MUST NOT be used.
If a client receives both the BCMCS Controller Domain Name List and an IP Address option, it SHOULD use the Domain Name List option and SHOULD NOT fall back to the IP Address option unless the domain name servers cannot be resolved or reached.
If a client requests the IP Address option but the server is configured only with domain names, the server MUST return the Domain Name List option instead, and vice versa.
If the domain name list in DHCPv4 exceeds the maximum permissible length within a single option (254 octets), the domain list MUST be represented as specified in RFC 3396 (long option encoding).
The BCMCS Controller IPv4 Address list length MUST be a multiple of 4 with a minimum of 4, and controllers MUST be listed in order of preference.
The DHCPv6 BCMCS Controller IPv6 Address option MUST carry one or more 128-bit IPv6 addresses of the BCMCS Controller.
When a client requests both options and the server has both, the server SHOULD send only the BCMCS Controller Domain Name List option rather than both.
The BCMCS Controller Domain Name List option MAY contain multiple FQDNs representing the access provider and its MVNO partners. If no preferred domain name is found, the client should default to the first entry in the list.
IANA assigned DHCPv4 option code 88 for the BCMCS Controller Domain Name List and code 89 for the BCMCS Controller IPv4 Address option. For DHCPv6, code 33 (OPTION_BCMCS_SERVER_D) and code 34 (OPTION_BCMCS_SERVER_A) were assigned.
This document introduces no new security concerns beyond those in base DHCP (RFC 2131) and DHCPv6 (RFC 3315). In the absence of message integrity protection, an attacker could modify the BCMCS controller option values to divert requests for broadcast service.
The DHCPv4 BCMCS Controller Domain Name List option uses code 88. Format: 1-byte Code (88), 1-byte Len (n), followed by n octets of FQDNs encoded per RFC 1035 Section 3.3.
The DHCPv4 BCMCS Controller IPv4 Address option uses code 89. Format: 1-byte Code (89), 1-byte Len (multiple of 4, minimum 4), followed by one or more 4-byte IPv4 addresses listed in order of preference.
The DHCPv6 BCMCS Controller Domain Name List option (OPTION_BCMCS_SERVER_D, code 33) uses a 2-byte option-code field, a 2-byte option-length field, and a variable-length BCMCS Control Server Domain Name List encoded identically to the DHCPv4 form.
The DHCPv6 BCMCS Controller IPv6 Address option (OPTION_BCMCS_SERVER_A, code 34) carries a 2-byte option-code, a 2-byte option-length, and one or more 128-bit IPv6 addresses of BCMCS controllers.