[Docs] [txt|pdf|xml] [Tracker] [Email] [Nits]
Versions: 00
Network Working Group B. Carpenter
Internet-Draft Univ. of Auckland
Intended status: Standards Track June 8, 2016
Expires: December 10, 2016
What does 'global' mean in IPv6?
draft-carpenter-6man-whats-global-00
Abstract
The word 'global' is used in two different ways in various
IPv6-related RFCs and an IANA registry. This document describes the
resulting problem.
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 http://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 December 10, 2016.
Copyright Notice
Copyright (c) 2016 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
(http://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
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Carpenter Expires December 10, 2016 [Page 1]
Internet-Draft What's Global? June 2016
Table of Contents
1. Problem description . . . . . . . . . . . . . . . . . . . . . 2
2. Possible fixes . . . . . . . . . . . . . . . . . . . . . . . 3
3. Security Considerations . . . . . . . . . . . . . . . . . . . 4
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4
5. Normative References . . . . . . . . . . . . . . . . . . . . 4
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 4
1. Problem description
As defined in the IPv6 Addressing Architecture
[I-D.ietf-6man-rfc4291bis], most of the IPv6 address space is
reserved for Global Unicast addresses. The high order bits of such
addresses are named 'global routing prefix'. However, the word
'global' is not itself defined in the context of unicast addresses.
One subset of Global Unicast address space is defined for Unique
Local Addresses [RFC4193]. One can quarrel with something being
called 'global' and 'local' at the same time, but RFC 4193 is
categorical:
This document defines an IPv6 unicast address format that is globally
unique and is intended for local communications, usually inside of a
site. These addresses are not expected to be routable on the global
Internet.
...
- Globally unique prefix (with high probability of uniqueness).
...
- In practice, applications may treat these addresses like global
scoped addresses.
...
By default, the scope of these addresses is global. That is, they
are not limited by ambiguity like the site-local addresses defined in
[ADDARCH]. Rather, these prefixes are globally unique, and as such,
their applicability is greater than site-local addresses. Their
limitation is in the routability of the prefixes, which is limited to
a site and any explicit routing agreements with other sites to
propagate them...
In summary: ULAs are defined in these standards track documents as
'global'.
However, the IANA registry for special-purpose IPv6 addresses
<http://www.iana.org/assignments/iana-ipv6-special-registry/iana-
ipv6-special-registry.xhtml>, and the RFC that controls it [RFC6890]
use the following definition:
Carpenter Expires December 10, 2016 [Page 2]
Internet-Draft What's Global? June 2016
o Global - A boolean value indicating whether an IP datagram whose
destination address is drawn from the allocated special-purpose
address block is forwardable beyond a specified administrative
domain.
It is evident, even from the last sentence quoted above from RFC
4193, that ULAs do not meet this definition of 'global'. As a
result, they are marked in the registry with Global = False. The
registry also assigns them the property Forwardable = True, which is
of course valid, but the fact remains that some RFCs say that ULAs
are global, but RFC 6890 and the registry say that they are not.
This inconsistency has consequences. Of course, it is always
possible for code that manipulates IPv6 addresses to determine with
certainty that a given address is, or is not, a ULA. But any code
that uses the property 'global' from the IANA registry as a decision
criterion might be wrong.
As an example, consider the Python 'ipaddress' module
<https://docs.python.org/3.4/library/
ipaddress.html#ipaddress.IPv4Address.is_private>, which explicitly
cites the IANA registry. It provides the property 'is_global' which
tests False for ULAs. A reader of RFC 4193 would expect True. The
correct test in Python (apart from an explicit match with fc00::/7)
is (is_private and not is_link_local).
2. Possible fixes
1. Do nothing.
2. Change the registry entry for ULAs to Global=True (and update
text and RFC 6890 accordingly).
3. That, plus rename the registry column from 'Global' to 'Global
scope'.
4. Change the registry entry for ULAs to Global=Undefined (and
update text and RFC 6890 accordingly).
5. Rename the registry column from 'Global' to 'Globally reachable'
(and update text and RFC 6890 accordingly).
6. That, plus add a registry column for 'Global scope'.
7. Your suggestion goes here.
Carpenter Expires December 10, 2016 [Page 3]
Internet-Draft What's Global? June 2016
3. Security Considerations
Misclassification of a ULA as non-global might cause it to be used
for a purpose that should be limited to link-local addresses for
security reasons.
4. IANA Considerations
If any changes are made as a result of this discussion, they will
require IANA actions.
5. Normative References
[I-D.ietf-6man-rfc4291bis]
Hinden, R. and S. Deering, "IP Version 6 Addressing
Architecture", draft-ietf-6man-rfc4291bis-02 (work in
progress), April 2016.
[RFC4193] Hinden, R. and B. Haberman, "Unique Local IPv6 Unicast
Addresses", RFC 4193, DOI 10.17487/RFC4193, October 2005,
<http://www.rfc-editor.org/info/rfc4193>.
[RFC6890] Cotton, M., Vegoda, L., Bonica, R., Ed., and B. Haberman,
"Special-Purpose IP Address Registries", BCP 153,
RFC 6890, DOI 10.17487/RFC6890, April 2013,
<http://www.rfc-editor.org/info/rfc6890>.
Author's Address
Brian Carpenter
Department of Computer Science
University of Auckland
PB 92019
Auckland 1142
New Zealand
Email: brian.e.carpenter@gmail.com
Carpenter Expires December 10, 2016 [Page 4]
Html markup produced by rfcmarkup 1.129d, available from
https://tools.ietf.org/tools/rfcmarkup/