Internet-Draft | DCHP 4o6 Relay Agent | August 2024 |
Porfiri, et al. | Expires 5 February 2025 | [Page] |
This document describes a general mechanism for networks with legacy IPv4-only clients to use DHCPv4-over-DHCPv6 (DHCP 4o6) for discovering information about network Topology. To address this scenario, this document specifies an amendment to RFC7341 that allows a new 4o6 Relay Agent (4o6RA) to perform the 4o6 DHCP en- and decapsulation instead of the client.¶
This note is to be removed before publishing as an RFC.¶
Status information for this document may be found at https://datatracker.ietf.org/doc/draft-porfiri-dhc-dhcpv4-over-dhcpv6-ra/.¶
Source for this draft and an issue tracker can be found at https://github.com/mirjak/dhc-dhcpv4-over-dhcpv6-ra.¶
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.¶
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.¶
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."¶
This Internet-Draft will expire on 5 February 2025.¶
Copyright (c) 2024 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
In some networks the configuration of a client host may depend on the Topology. However, when a new client host gets connected to the network, it may be unaware of the Topology and respectively how it has to be configured.¶
In IPv6 networks, Topology discover can be realized using DHCPv6 Relay Agents [RFC6221] that insert relay agent options in DHCPv6 message exchanges in order to identify the client-facing interfaces, e.g. using the Serial Number or other hardcoded information. Then, a reference host that is responsible for providing configuration to the client host can obtain Topology information from the DHCP server.¶
In DHCPv6, a Relay Agent can encapsulate the DHCP message from the client in a new DHCP message along with any options it chooses to add to provide information to the DHCP server. This mode of operation also supports networks that include a hierarchy of switches.¶
However, if the client only supports IPv4 and cannot easily be replaced or updated, this approach does not work, as DHCPv4 support for relays is much more limited. For instance, there is no support in DHCPv4 for hierarchical modes of deployment, as the specifications prohibit chaining of Relay Agent Information Options (RAIOs) [RFC3046].¶
A typical example where Topology Discovery is needed for host configuration is the switched fronthaul in the Radio Access Network (see Section 3). However, the specified approach in this document is not limited to that example.¶
This document specifies how to provide Topology Discover using Relay Agent functionality for legacy IPv4 clients using DHCPv4-over-DHCPv6 (DHCP 4o6) [RFC7341]. No new protocols or extensions are needed, instead this document specifies an amendment to [RFC7341] that allows a Relay Agent to perform the 4o6 DHCP en- and decapsultion instead of the client in order to address the specific scenario that is detailed in Section 4.2.¶
The following terms and acronyms are used in this document:¶
4o6 The architecture, the procedures and the protocols described in the DHCPv4-over-DHCPv6 document [RFC7341].¶
4o6RA The 4o6 Relay Agent is the part of an LDRA implementing 4o6¶
DHCP Relay Agent¶
This is a concept in all of the protocols, BOOTP [RFC0951] [RFC1542], DHCPv4 [RFC2131] [RFC2132], and DHCPv6 [RFC8415], although the details differ between the protocols.¶
Lightweight DHCPv6 Relay Agent (LDRA)¶
This is an extension of the original DHCPv6 Relay Agent mechanism, to support also Layer 2 devices performing a Relay Agent function [RFC6221].¶
Relay Agent Information Option (RAIO)¶
This is a DHCP option defined in [RFC3046]. Also commonly referred to as "Option 82". RAIO options were later extended to be able to carry suboptions [RFC6925].¶
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.¶
In Radio Access Networks (RANs) the Fronthaul is the network segment that connects Radio Units, the distributed radio elements in a mobile network, to other network elements. The aggregation of Radio Unit devices (also known as Switched Fronthaul) hides the relationship between the Radio Units themselves and the physical ports where they are connected. The Radio Units are the client hosts in the switched Fronthaul network and need to be configured based on their Topology.¶
Figure 1 shows multiple Radio Units that are connected to one Baseband Unit by means of a Layer 2 switched network. The Baseband Unit is the central processing unit that handles baseband information. A Baseband Unit is often placed rather centrally, while the Radio Units need to be distributed to be co-located with or near the antennas. Traffic between Radio Units and Bandband Units is both IP-based and Layer-2-based and may pass a hierarchy of L2 switches.¶
In order to properly address the Radio Unit, the Baseband Unit needs to associate the Radio Unit's MAC address to the L2 switch and respective port where the Radio Unit is connected. To realize this device configuration in the Switched Fronthaul network, DHCP can be used to discover the network Topology.¶
If the network is fully IPv6 enabled, DHCPv6 [RFC8415] can be used for Topology Discovery. This solution exploits DHCPv6 Relay Agent support in the server, whilst Lightweight DHCPv6 Relay Agents (LDRA) [RFC6221] are implemented in the L2 switches to inform DHCPv6 server about the L2 Topology.¶
When the client needs an IPv4 address but is dual connected and can support DHCPv4-over-DHCPv6 [RFC7341], DHCPv6 [RFC8415] with a DHCPv4-over-DHCPv6 compliant DHCP server can be used for Topology Discovery whereas DHCP is used still for IP address assignment.¶
An example network with 4o6 compliant clients can be sketched as follows:¶
In Figure 2 the client supports [RFC7341] by implementing the 4o6 encapsulation whereas the intermediate nodes implement LDRA [RFC6221] or L3RA [RFC8415] and finally the DHCP server is 4o6 DHCP capable [RFC7341].¶
Still, [RFC7341] does not provide a solution for legacy IPv4 clients that respectively do not support 4o6 encapsulation.¶
This document extends [RFC7341] to enable a deployment scenario where the 4o6 encapsulation is implemented at the Relay Agent instead of the DHCP client. This makes it possible to enable Topology Discovery for legacy IPv4 DHCP clients through a 4o6-DHCP-enabled network.¶
The new scenario, not described in [RFC7341], is shown in Figure 3. In such a scenario, the 4o6 encapsulation is implemented in the Relay Agent deployed in the edge L2 switch, or in general in the edge device providing connectivity to the legacy client. In this case it is up to the Relay Agent to provide the full 4o6 DHCP set of functionality whereas the legacy client is not aware of being served via a 4o6 DHCP service.¶
This new 4o6 Relay Agent (4o6RA), as specified in this document, exchanges DHCP messages between clients and servers using the message formats established in [RFC8415]. To maintain interoperability with existing DHCP relays and servers, the message format is unchanged from [RFC8415]. The 4o6RA implements the same message types as a normal DHCPv6 Relay Agent Section 6 of [RFC7341]. They are: - Relay-Forward Messages - Relay-Reply Messages¶
In this specification, the 4o6RA creates the DHCPV4-QUERY Message and encapsulates the DHCP request message received from the legacy DHCPv4 client.¶
When DHCPV4-RESPONSE Message is received by the 4o6 Relay Agent, it looks for the DHCPv4 Message option within this message. If this option is not found, the DHCPv4-response message MUST be discarded. If the DHCPv4 Message option is present, the 4o6RA MUST extract the DHCPv4 message and forward the encapsulated DHCPv4-response to the legacy DHCPv4 client.¶
An Layer 2 Relay Agent receiving DHCPV4-QUERY or DHCPV4-RESPONSE messages will handle them as specified in Section 6 of [RFC6221].¶
This documents applies 4o6 DHCP in a scenario where legacy IPv4 clients are connected to 4o6 DHCP Relay Agent that performs the en- and decapsulation. This document does not change anything else in the 4o6 DHCP speacification and therefore the security consideration of [RFC7341] still apply.¶
The legacy IPv4 client is not aware of this mechanism, however, even when 4o6 DHCP is used, the client does not have any control about the information provided by the Relay agent. As such this change does not provide any additional secruity concerns.¶
This document has no IANA actions.¶
The authors would also like to acknowledge interesting discussions in this problem space with Sarah Gannon, Ines Ramadza and Siddharth Sharma.¶