rfc-5549

Advertising IPv4 Network Layer Reachability Information with an IPv6 Next Hop

F. Le Faucheur, E. Rosen
date2009-05 streamIETF areaint wgsoftwire statusPROPOSED STANDARD pages10 canonicalhttps://www.rfc-editor.org/rfc/rfc5549 doi10.17487/RFC5549 errataview
Multiprotocol BGP (MP-BGP) specifies that the set of network-layer protocols to which the address carried in the Next Hop field may belong is determined by the Address Family Identifier (AFI) and the Subsequent Address Family Identifier (SAFI). The current AFI/SAFI definitions for the IPv4 address family only have provisions for advertising a Next Hop address that belongs to the IPv4 protocol when advertising IPv4 Network Layer Reachability Information (NLRI) or VPN-IPv4 NLRI. This document specifies the extensions necessary to allow advertising IPv4 NLRI or VPN-IPv4 NLRI with a Next Hop address that belongs to the IPv6 protocol. This comprises an extension of the AFI/SAFI definitions to allow the address of the Next Hop for IPv4 NLRI or VPN-IPv4 NLRI to also belong to the IPv6 protocol, the encoding of the Next Hop in order to determine which of the protocols the address actually belongs to, and a new BGP Capability allowing MP-BGP Peers to dynamically discover whether they can exchange IPv4 NLRI and VPN-IPv4 NLRI with an IPv6 Next Hop. [STANDARDS-TRACK]

obsoleted by

Extracted elements (20)

design-rationale §4

The Extended Next Hop Encoding capability conveys only next hop encoding information for a given AFI/SAFI; it does not affect whether that AFI/SAFI is permitted. AFI/SAFI allowance remains solely determined by the Multiprotocol Extensions capability (RFC4760).

bgp, routing

design-rationale §1

The extension enables gradual deployment of IPv4 reachability advertisement via an IPv6 Next Hop without requiring a flag day or risking traffic black-holing. A new BGP Capability allows peers to dynamically discover support before using the new encoding.

bgp, routing, v6ops

design-rationale §3

The Length of Next Hop Address field is reused to disambiguate address family of the next hop (IPv4 vs IPv6), consistent with the approach already used in RFC4684 and L2VPN-SIG, rather than introducing a new signaling mechanism.

bgp, routing

interoperability-note §1

Existing solutions already address IPv6 NLRI with IPv4 Next Hop (RFC4798 for AFI/SAFI <2/1>, <2/2>, <2/4>; RFC4659 for <2/128>), but no general method existed for IPv4 NLRI with an IPv6 Next Hop, which this document fills.

bgp, routing, v6ops

interoperability-note §4

The Extended Next Hop Encoding capability is not intended for use with AFI/SAFIs that already support both IPv4 and IPv6 next hops (e.g., <1/132>) or for which a different-address-family next hop solution already exists (e.g., <2/1> with IPv4 NH per RFC4798).

bgp, routing

normative-requirement §4 MUST

A BGP speaker MUST only advertise IPv4 or VPN-IPv4 NLRI with an IPv6 Next Hop if it has first ascertained via BGP Capability Advertisement that the peer supports the Extended Next Hop Encoding capability for the relevant AFI/SAFI pair.

bgp, routing

normative-requirement §4 MUST

A BGP speaker MUST use Capability Advertisement (RFC5492) with the Extended Next Hop Encoding capability to confirm peer support before advertising IPv4 or VPN-IPv4 NLRI with an IPv6 Next Hop.

bgp, routing

normative-requirement §5 SHOULD

By default, when a BGP session runs over IPvx and the speaker uses its own address as next hop, the next hop SHOULD be specified as an IPvx address using the encoding rules for the NLRI's AFI/SAFI. This default may be overridden by policy.

bgp, routing

normative-requirement §3 MUST

The BGP speaker receiving an advertisement MUST use the Length of Next Hop Address field to determine which network-layer protocol the next hop address belongs to. When the length is 16 or 32, the next hop is of type IPv6.

bgp, routing, v6ops

normative-requirement §4 MUST

The Capability Code field of the Extended Next Hop Encoding capability MUST be set to 5. The Capability Value field MUST encode one or more <NLRI AFI, NLRI SAFI, Nexthop AFI> triples.

bgp, routing

normative-requirement §3 MUST

This document extends the AFI/SAFI definitions for <1/1>, <1/2>, <1/4>, and <1/128> to allow the Next Hop address to belong to IPv6 in addition to IPv4, using an MP_REACH_NLRI with AFI=1, SAFI=1/2/4/128, and Length of Next Hop Address=16 or 32.

bgp, routing, v6ops

normative-requirement §5 MUST NOT

When a next hop address is passed along unchanged (e.g., by a Route Reflector), its encoding MUST NOT be changed. If a particular RR client cannot handle the encoding, the NLRI cannot be distributed to that client.

bgp, routing

protocol-element §4

The Extended Next Hop Encoding capability (Capability Code 5) is a new BGP capability advertised via RFC5492 that allows peers to declare support for advertising NLRI of a given AFI/SAFI with a next hop belonging to a different address family, expressed as triples of <NLRI AFI, NLRI SAFI, Nexthop AFI>.

bgp, routing

registry §7

This document assigns Capability Code 5 (Extended Next Hop Encoding) in the BGP Capability Codes registry maintained by IANA, allocated under the IETF Review policy as defined in RFC5226.

bgp, registry

security-consideration §8

Although atypical, the IPv6 address used as a BGP Next Hop could be an IPv4-mapped IPv6 address (RFC4291). Security mechanisms that validate next hop addresses (e.g., access control checks) must account for this case.

bgp, security, v6ops

security-consideration §8

This document does not introduce security issues beyond those of BGP-4 and its Multiprotocol extensions; the same security mechanisms apply.

bgp, security

wire-format §3

For IPv4 NLRI with IPv6 Next Hop, the MP_REACH_NLRI carries AFI=1, SAFI=1/2/4/128, Length of Next Hop Address=16 or 32, and the Next Hop Address field contains the IPv6 address (optionally followed by a link-local IPv6 address) encoded as per RFC2545 Section 3.

bgp, routing, v6ops

wire-format §6.1

For the IPv4-over-IPv6-core use case (Section 6.1), the MP_REACH_NLRI is encoded with AFI=1, SAFI=1, Length of Next Hop Network Address=16 (or 32), Network Address of Next Hop=IPv6 address, NLRI=IPv4 routes.

bgp, routing, v6ops

wire-format §6.2

For the IPv4-VPN-over-IPv6-core use case (Section 6.2), the MP_REACH_NLRI is encoded with AFI=1, SAFI=128, Length of Next Hop Network Address=16 (or 32), Network Address of Next Hop=IPv6 address, NLRI=IPv4-VPN routes.

bgp, routing, v6ops, vpn

wire-format §4

The Capability Value field of the Extended Next Hop Encoding capability consists of N triples, each 6 octets: NLRI AFI (2 octets), NLRI SAFI (2 octets), Nexthop AFI (2 octets). For IPv4 NLRI with IPv6 NH: NLRI AFI=1, NLRI SAFI=1/2/4/128, Nexthop AFI=2.

bgp, routing