Internet DRAFT - draft-templin-6man-lla-type
draft-templin-6man-lla-type
Network Working Group F. Templin, Ed.
Internet-Draft The Boeing Company
Intended status: Standards Track November 23, 2020
Expires: May 27, 2021
The IPv6 Link-Local Address Type Field
draft-templin-6man-lla-type-02
Abstract
IPv6 link-local addresses are formed from the prefix fe80::/10 which
is followed by 54 "zero" bits, then followed by a 64-bit Interface
Identifier. There are multiple methods for generating link-local
addresses, and multiple may be in use by nodes on the same link (and
sometimes even the same interface) at the same time. This document
defines an IPv6 link-local address "Type" field that identifies the
type of link-local address being used.
Status of This Memo
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 May 27, 2021.
Copyright Notice
Copyright (c) 2020 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 Simplified BSD License text as described in Section 4.e of
Templin Expires May 27, 2021 [Page 1]
Internet-Draft IPv6 Link-Local Address Type Field November 2020
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. The IPv6 Link-Local Address Type Field . . . . . . . . . . . 3
4. LLA-Based Prefix Delegation (PD) . . . . . . . . . . . . . . 4
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5
6. Security Considerations . . . . . . . . . . . . . . . . . . . 5
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 5
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 6
8.1. Normative References . . . . . . . . . . . . . . . . . . 6
8.2. Informative References . . . . . . . . . . . . . . . . . 6
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 7
1. Introduction
The IPv6 link-local address (LLA) prefix is defined in [RFC4291] as
the prefix fe80::/10 followed by 54 "zero" bits, then followed by a
64-bit interface identifier. There are multiple methods for
generating LLAs, and multiple may be in use on the same link (and
sometimes even the same interface) at the same time.
For example, [I-D.ietf-6man-rfc4941bis], [RFC7217], [RFC4291],
[RFC3972], [I-D.templin-6man-omni-interface] and possibly others
define diverse methods for generating interface identifiers for
constructing LLAs on a given interface. Administrative configuration
(e.g., manually setting the interface ID) is also an option available
to all interfaces.
IPv6 multi-addressing allows each interface to assign multiple IPv6
addresses, and even multiple IPv6 LLAs. On some interfaces, it may
even be the case that multiple LLAs of different types would be
configured at the same time. But, since the diverse methods for
generating interface identifiers are not coordinated with one
another, some interfaces may need a way to differentiate the types of
LLAs as well as to avoid collisions and duplication.
This document defines a Type field in the LLA prefix for
differentiating LLA construction types. The Type field also has a
companion Function field which can be used to perform Type-specific
functions such as Prefix Delegation (PD).
This document updates [RFC4291].
Templin Expires May 27, 2021 [Page 2]
Internet-Draft IPv6 Link-Local Address Type Field November 2020
2. Terminology
The terminology in the normative references applies.
3. The IPv6 Link-Local Address Type Field
[RFC4291] defines the IPv6 LLA format as the prefix fe80::/10,
followed by 54 zero bits, then followed by a 64-bit Interface
Identifier as shown in Figure 1:
| 10 |
| bits | 54 bits | 64 bits |
+----------+-------------------------+----------------------------+
|1111111010| 0 | interface ID |
+----------+-------------------------+----------------------------+
Figure 1: IPv6 Link-Local Address Format
In this format, there is currently no use for the 54 bits of 0s, and
existing IPv6-over-(foo) documents such as [RFC2464] expect them
always to be zero regardless of the method used in generating the
Interface ID.
However, new IPv6-over-(foo) documents could benefit from having a
coded indication of the LLA construction type. This would not only
allow the interface to differentiate between the LLA
autoconfiguration methods used by the sender in packets received with
LLAs, but it would also provide a means for avoiding address
duplication between diverse address autoconfiguration methods used on
the same link.
This document defines a new Type field in the IPv6 LLA prefix. The
Type field and a companion Function field occupy the least
significant 16 bits of the prefix fe80::/64 as shown in Figure 2:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1|1|1|1|1|1|1|0|1|0| zeros (22 bits) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| zeros (16 bits) | Function | Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 2: IPv6 LLA Prefix with Type and Function Fields
In this format, Type is an 8-bit field that identifies the LLA type
on IPv6-over-(foo) interfaces that recognize the field, and Function
Templin Expires May 27, 2021 [Page 3]
Internet-Draft IPv6 Link-Local Address Type Field November 2020
is an 8-bit Type-specific field. The values for Type that are
currently defined are:
Link-Local Format Type
***************** ****
Unspecified (default) 0
Administratively Configured 1
RFC4941bis 2
RFC7217 3
RFC4291 4
RFC3972 5
OMNI 6
Figure 3
For example, on IPv6-over-(foo) interface types that recognize the
Type field, an IPv6 link-local address formed according to [RFC7217]
would be written as: fe80:0:0:3::[Interface ID], while one formed
according to [RFC3972] would be written as: fe80:0:0:5::[Interface
ID]. For some link types, it is possible that multiple types would
be assigned on the same link and possibly even on the same interface.
Note that for existing IPv6-over-(foo) link types, the Type and
Function fields are always set to the value 0 (unspecified) and the
link local address format fe80::/64 still applies as it always has.
4. LLA-Based Prefix Delegation (PD)
Prefix Delegation (PD) concerns a Requesting Router (RR) requesting
an IPv6 PD from a Delegating Router (DR) on the same link. The Type
and Function extensions of the LLA are used to drive the PD process
as discussed below.
RRs autoconfigure a Type '2' "Temporary" LLA according to
[I-D.ietf-6man-rfc4941bis] and set the Function field to a prefix
length value between 1 and 64 to indicate the length of PD that is
being requested (if a PD is not requested, the RR instead sets the
Function field to the value 0). The RR then uses the LLA as the IPv6
source address of a Router Solicitation (RS) message used to request
a PD.
When the DR receives the RS message, it coordinates with the PD
service to receive an IPv6 prefix delegation. The DR then
autoconfigures a 'Type 6' "OMNI" LLA according to
[I-D.templin-6man-omni-interface], where the delegated prefix is
encoded in the interface identifier of the LLA. For example, if the
delegated prefix is 2001:db8:1:2::/NN, the DR writes the LLA as
fe80::2001:db8:1:2, then sets the Type field to the value '6' and the
Templin Expires May 27, 2021 [Page 4]
Internet-Draft IPv6 Link-Local Address Type Field November 2020
Function field to the value 'NN' as fe80:0:0:NN06:2001:db8:1:2. The
DR then sets the LLA as the destination address of a Router
Advertisement (RA) message, and sends the RA message back to the RR.
When the RR receives the RA message, it both derives the delegated
prefix from the LLA destination address and assigns the LLA to the
receiving interface. The RR can then distribute the delegated prefix
to its downstream-attached networks.
Note that if the RR knows in advance its own OMNI LLA (for example,
if the OMNI LLA were administratively configured a priori) it can
send an RS message with the OMNI LLA as the source address in its
first exchange with the DR. If the DR is able to confirm that the RR
is authorized to use its claimed OMNI LLA, it sends an RA message
back to the RR with the same OMNI LLA as the IPv6 destination
address.
5. IANA Considerations
This document defines a Type field for IPv6 link-local addresses, for
which IANA is instructed to create and maintain a new registry
entitled "IPv6 Link-Local Address Type values". Initial values are
given below; future assignments are to be made through Expert Review
[RFC8126]:
Link-Local Format Type
***************** ****
Unspecified (default) 0
Administratively Configured 1
RFC4941bis 2
RFC7217 3
RFC4291 4
RFC3972 5
OMNI 6
Figure 4: IANA IPv6 Link-Local Address Type Registry
6. Security Considerations
Security considerations for IPv6 [RFC8200] apply.
7. Acknowledgements
This document is aligned with the IETF 6man (IPv6) working group.
.
Templin Expires May 27, 2021 [Page 5]
Internet-Draft IPv6 Link-Local Address Type Field November 2020
8. References
8.1. Normative References
[I-D.ietf-6man-rfc4941bis]
Gont, F., Krishnan, S., Narten, T., and R. Draves,
"Temporary Address Extensions for Stateless Address
Autoconfiguration in IPv6", draft-ietf-6man-rfc4941bis-12
(work in progress), November 2020.
[I-D.templin-6man-omni-interface]
Templin, F. and T. Whyman, "Transmission of IP Packets
over Overlay Multilink Network (OMNI) Interfaces", draft-
templin-6man-omni-interface-50 (work in progress), October
2020.
[RFC3972] Aura, T., "Cryptographically Generated Addresses (CGA)",
RFC 3972, DOI 10.17487/RFC3972, March 2005,
<https://www.rfc-editor.org/info/rfc3972>.
[RFC4291] Hinden, R. and S. Deering, "IP Version 6 Addressing
Architecture", RFC 4291, DOI 10.17487/RFC4291, February
2006, <https://www.rfc-editor.org/info/rfc4291>.
[RFC7217] Gont, F., "A Method for Generating Semantically Opaque
Interface Identifiers with IPv6 Stateless Address
Autoconfiguration (SLAAC)", RFC 7217,
DOI 10.17487/RFC7217, April 2014,
<https://www.rfc-editor.org/info/rfc7217>.
[RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for
Writing an IANA Considerations Section in RFCs", BCP 26,
RFC 8126, DOI 10.17487/RFC8126, June 2017,
<https://www.rfc-editor.org/info/rfc8126>.
[RFC8200] Deering, S. and R. Hinden, "Internet Protocol, Version 6
(IPv6) Specification", STD 86, RFC 8200,
DOI 10.17487/RFC8200, July 2017,
<https://www.rfc-editor.org/info/rfc8200>.
8.2. Informative References
[RFC2464] Crawford, M., "Transmission of IPv6 Packets over Ethernet
Networks", RFC 2464, DOI 10.17487/RFC2464, December 1998,
<https://www.rfc-editor.org/info/rfc2464>.
Templin Expires May 27, 2021 [Page 6]
Internet-Draft IPv6 Link-Local Address Type Field November 2020
Author's Address
Fred L. Templin (editor)
The Boeing Company
P.O. Box 3707
Seattle, WA 98124
USA
Email: fltemplin@acm.org
Templin Expires May 27, 2021 [Page 7]