David Farmer
2017-07-15 17:54:20 UTC
Listening to the discussion for the last couple weeks, it seems apparent
that a simple statement requiring or recommending 64 bit IIDs doesn't
accurately reflect the true nature of the IPv6 architecture. Also a
problem statement was asked for, and I think that is it, "a simple
statement requiring or recommending 64 bit IIDs doesn't accurately reflect
the true nature of the IPv6 architecture."
A statement simply requiring 64 bit IIDs, as in RFC4291, ignores the
following;
- /128 prefixes are frequently assigned to loopback addresses for routing
protocols.
- /127 or /126 prefixes are frequently assigned to point-to-point router
links.
- Further it is common to assign these /128, /127, and /126 prefixes out of
a common /64 prefix.
- ND and unicast routing are explicitly designed to work with IIDs of any
length
- DHCPv6 IA_NA and IA_TA provide no routing information, the on-link prefix
come from PIOs in RAs, and can be any length.
- Most IPv6 implementations allow the manual configuration of prefixes of
any length
On the other hand, a statement simply recommending 64 bit IIDs doesn't
accurately reflect the following either;
- The Link-Local IID length has to be known, and there are no easy
mechanisms to discover it, therefore it is defined to be 64 bits for all
current link types.
- SLAAC uses the Link-Local IID to create other Unicast Address types and
requires 64 bit IIDs for Unicast Address assignment and on-link
determination for proper operation.
- As currently defined, many other parts of IPv6 assume Unicast Address
assignments based on 64 bit IIDs, Embeded RP Multicast, Mobile IP, etc...
I think the following more accurately conveys the true nature of the IPv6
architecture in regards to IIDs;
Several components of IPv6 architecturally require Unicast Addresses with
fixed length Interface Identifiers that are 64 bits long, except addresses
that start with the binary value 000, primary of these is Stateless Address
Autoconfiguration (SLAAC) [RFC4862], other examples are discussed in
[RFC7421]. Whereas other components of IPv6 are explicitly designed operate
with Interface Identifiers of any length, Neighbor Discovery (ND)
[RFC4861], DHCPv6 [RFC3315] and unicast routing [RFC7608] are examples of
these. Therefore, the use of 64 bit Interface Identifiers are recommended
to ensure all components of IPv6 operate as designed. However, there are
several situations where Interface Identifiers of other lengths can safely
be used, these include loopback interfaces, point-to-point router links
[RFC6164], and links where all nodes are configured manually or with
DHCPv6. Although, links with any nodes that are configured with SLAAC
require 64 bit Interface Identifiers.
What do others think?
that a simple statement requiring or recommending 64 bit IIDs doesn't
accurately reflect the true nature of the IPv6 architecture. Also a
problem statement was asked for, and I think that is it, "a simple
statement requiring or recommending 64 bit IIDs doesn't accurately reflect
the true nature of the IPv6 architecture."
A statement simply requiring 64 bit IIDs, as in RFC4291, ignores the
following;
- /128 prefixes are frequently assigned to loopback addresses for routing
protocols.
- /127 or /126 prefixes are frequently assigned to point-to-point router
links.
- Further it is common to assign these /128, /127, and /126 prefixes out of
a common /64 prefix.
- ND and unicast routing are explicitly designed to work with IIDs of any
length
- DHCPv6 IA_NA and IA_TA provide no routing information, the on-link prefix
come from PIOs in RAs, and can be any length.
- Most IPv6 implementations allow the manual configuration of prefixes of
any length
On the other hand, a statement simply recommending 64 bit IIDs doesn't
accurately reflect the following either;
- The Link-Local IID length has to be known, and there are no easy
mechanisms to discover it, therefore it is defined to be 64 bits for all
current link types.
- SLAAC uses the Link-Local IID to create other Unicast Address types and
requires 64 bit IIDs for Unicast Address assignment and on-link
determination for proper operation.
- As currently defined, many other parts of IPv6 assume Unicast Address
assignments based on 64 bit IIDs, Embeded RP Multicast, Mobile IP, etc...
I think the following more accurately conveys the true nature of the IPv6
architecture in regards to IIDs;
Several components of IPv6 architecturally require Unicast Addresses with
fixed length Interface Identifiers that are 64 bits long, except addresses
that start with the binary value 000, primary of these is Stateless Address
Autoconfiguration (SLAAC) [RFC4862], other examples are discussed in
[RFC7421]. Whereas other components of IPv6 are explicitly designed operate
with Interface Identifiers of any length, Neighbor Discovery (ND)
[RFC4861], DHCPv6 [RFC3315] and unicast routing [RFC7608] are examples of
these. Therefore, the use of 64 bit Interface Identifiers are recommended
to ensure all components of IPv6 operate as designed. However, there are
several situations where Interface Identifiers of other lengths can safely
be used, these include loopback interfaces, point-to-point router links
[RFC6164], and links where all nodes are configured manually or with
DHCPv6. Although, links with any nodes that are configured with SLAAC
require 64 bit Interface Identifiers.
What do others think?
--
===============================================
David Farmer Email:***@umn.edu
Networking & Telecommunication Services
Office of Information Technology
University of Minnesota
2218 University Ave SE Phone: 612-626-0815
Minneapolis, MN 55414-3029 Cell: 612-812-9952
===============================================
===============================================
David Farmer Email:***@umn.edu
Networking & Telecommunication Services
Office of Information Technology
University of Minnesota
2218 University Ave SE Phone: 612-626-0815
Minneapolis, MN 55414-3029 Cell: 612-812-9952
===============================================