idnits 2.17.1 draft-ietf-ipv6-unique-local-addr-09.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** It looks like you're using RFC 3978 boilerplate. You should update this to the boilerplate described in the IETF Trust License Policy document (see https://trustee.ietf.org/license-info), which is required now. -- Found old boilerplate from RFC 3978, Section 5.1.a on line 16. -- Found old boilerplate from RFC 3978, Section 5.5 on line 812. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 789. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 796. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 802. ** The document seems to lack an RFC 3978 Section 5.1 IPR Disclosure Acknowledgement. ** This document has an original RFC 3978 Section 5.4 Copyright Line, instead of the newer IETF Trust Copyright according to RFC 4748. ** This document has an original RFC 3978 Section 5.5 Disclaimer, instead of the newer disclaimer which includes the IETF Trust according to RFC 4748. ** The document uses RFC 3667 boilerplate or RFC 3978-like boilerplate instead of verbatim RFC 3978 boilerplate. After 6 May 2005, submission of drafts without verbatim RFC 3978 boilerplate is not accepted. The following non-3978 patterns matched text found in the document. That text should be removed or replaced: This document is an Internet-Draft and is subject to all provisions of Section 3 of RFC 3667. By submitting this Internet-Draft, each author represents that any applicable patent or other IPR claims of which he or she is aware have been or will be disclosed, and any of which he or she becomes aware will be disclosed, in accordance with Section 6 of BCP 79. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- == No 'Intended status' indicated for this document; assuming Proposed Standard Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** There are 4 instances of too long lines in the document, the longest one being 1 character in excess of 72. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the RFC 3978 Section 5.4 Copyright Line does not match the current year -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- Couldn't find a document date in the document -- date freshness check skipped. Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Missing Reference: 'RFC 2119' is mentioned on line 111, but not defined == Unused Reference: 'RFC2119' is defined on line 599, but no explicit reference was found in the text ** Obsolete normative reference: RFC 3513 (ref. 'ADDARCH') (Obsoleted by RFC 4291) -- Possible downref: Non-RFC (?) normative reference: ref. 'FIPS' ** Downref: Normative reference to an Informational RFC: RFC 3587 (ref. 'GLOBAL') ** Obsolete normative reference: RFC 2463 (ref. 'ICMPV6') (Obsoleted by RFC 4443) ** Obsolete normative reference: RFC 2460 (ref. 'IPV6') (Obsoleted by RFC 8200) ** Obsolete normative reference: RFC 1305 (ref. 'NTP') (Obsoleted by RFC 5905) ** Obsolete normative reference: RFC 1750 (ref. 'RANDOM') (Obsoleted by RFC 4086) ** Downref: Normative reference to an Informational RFC: RFC 3174 (ref. 'SHA1') -- Obsolete informational reference (is this intentional?): RFC 2462 (ref. 'ADDAUTO') (Obsoleted by RFC 4862) -- Obsolete informational reference (is this intentional?): RFC 3484 (ref. 'ADDSEL') (Obsoleted by RFC 6724) -- Obsolete informational reference (is this intentional?): RFC 3315 (ref. 'DHCP6') (Obsoleted by RFC 8415) Summary: 13 errors (**), 0 flaws (~~), 4 warnings (==), 11 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 INTERNET-DRAFT R. Hinden, Nokia 3 January 21, 2005 B. Haberman, JHU-APL 5 Unique Local IPv6 Unicast Addresses 7 9 Status of this Memo 11 This document is an Internet-Draft and is subject to all provisions 12 of section 3 of RFC 3667. By submitting this Internet-Draft, each 13 author represents that any applicable patent or other IPR claims of 14 which he or she is aware have been or will be disclosed, and any of 15 which he or she become aware will be disclosed, in accordance with 16 RFC 3668. 18 Internet-Drafts are working documents of the Internet Engineering 19 Task Force (IETF), its areas, and its working groups. Note that 20 other groups may also distribute working documents as Internet- 21 Drafts. 23 Internet-Drafts are draft documents valid for a maximum of six months 24 and may be updated, replaced, or obsoleted by other documents at any 25 time. It is inappropriate to use Internet-Drafts as reference 26 material or to cite them other than as "work in progress." 28 The list of current Internet-Drafts can be accessed at 29 http://www.ietf.org/ietf/1id-abstracts.txt. 31 The list of Internet-Draft Shadow Directories can be accessed at 32 http://www.ietf.org/shadow.html. 34 This internet draft expires on July 26, 2005. 36 Abstract 38 This document defines an IPv6 unicast address format that is globally 39 unique and is intended for local communications, usually inside of a 40 site. They are not expected to be routable on the global Internet. 42 Table of Contents 44 1.0 Introduction....................................................2 45 2.0 Acknowledgments.................................................3 46 3.0 Local IPv6 Unicast Addresses....................................3 47 3.1 Format..........................................................3 48 3.1.1 Background....................................................4 49 3.2 Global ID.......................................................5 50 3.2.1 Locally Assigned Global IDs...................................5 51 3.2.2 Sample Code for Pseudo-Random Global ID Algorithm.............5 52 3.2.3 Analysis of the Uniqueness of Global IDs......................6 53 3.3 Scope Definition................................................7 54 4.0 Operational Guidelines..........................................7 55 4.1 Routing.........................................................7 56 4.2 Renumbering and Site Merging....................................8 57 4.3 Site Border Router and Firewall Packet Filtering................8 58 4.4 DNS Issues......................................................9 59 4.5 Application and Higher Level Protocol Issues....................9 60 4.6 Use of Local IPv6 Addresses for Local Communications...........10 61 4.7 Use of Local IPv6 Addresses with VPNs..........................11 62 5.0 Global Routing Considerations..................................11 63 5.1 From the Standpoint of the Internet............................11 64 5.2 From the Standpoint of a Site..................................12 65 6.0 Advantages and Disadvantages...................................12 66 7.0 Security Considerations........................................13 67 8.0 IANA Considerations............................................13 68 9.0 References.....................................................13 69 9.1 Normative References...........................................13 70 9.2 Informative References.........................................14 71 10.0 Authors' Addresses............................................15 72 11.0 Change Log....................................................16 73 12.0 Intellectual Property.........................................18 74 13.0 Disclaimer of Validity........................................19 75 14.0 Copyright Statement...........................................19 77 1.0 Introduction 79 This document defines an IPv6 unicast address format that is globally 80 unique and is intended for local communications [IPV6]. These 81 addresses are called Unique Local IPv6 Unicast Addresses and are 82 abbreviated in this document as Local IPv6 addresses. They are not 83 expected to be routable on the global Internet. They are routable 84 inside of a more limited area such as a site. They may also be 85 routed between a limited set of sites. 87 Local IPv6 unicast addresses have the following characteristics: 89 - Globally unique prefix (with high probability of uniqueness). 90 - Well known prefix to allow for easy filtering at site 91 boundaries. 92 - Allows sites to be combined or privately interconnected without 93 creating any address conflicts or requiring renumbering of 94 interfaces using these prefixes. 95 - Internet Service Provider independent and can be used for 96 communications inside of a site without having any permanent or 97 intermittent Internet connectivity. 98 - If accidentally leaked outside of a site via routing or DNS, 99 there is no conflict with any other addresses. 100 - In practice, applications may treat these addresses like global 101 scoped addresses. 103 This document defines the format of Local IPv6 addresses, how to 104 allocate them, and usage considerations including routing, site 105 border routers, DNS, application support, VPN usage, and guidelines 106 for how to use for local communication inside a site. 108 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 109 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 110 document are to be interpreted as described in [RFC 2119]. 112 2.0 Acknowledgments 114 The underlying idea of creating Local IPv6 addresses described in 115 this document has been proposed a number of times by a variety of 116 people. The authors of this draft do not claim exclusive credit. 117 Credit goes to Brian Carpenter, Christian Huitema, Aidan Williams, 118 Andrew White, Charlie Perkins, and many others. The authors would 119 also like to thank Brian Carpenter, Charlie Perkins, Harald 120 Alvestrand, Keith Moore, Margaret Wasserman, Shannon Behrens, Alan 121 Beard, Hans Kruse, Geoff Huston, Pekka Savola, Christian Huitema, Tim 122 Chown, Steve Bellovin, Alex Zinin, Tony Hain, Bill Fenner, Sam 123 Hartman, and Elwyn Davies for their comments and suggestions on this 124 document. 126 3.0 Local IPv6 Unicast Addresses 128 3.1 Format 130 The Local IPv6 addresses are created using a pseudo-randomly 131 allocated global ID. They have the following format: 133 | 7 bits |1| 40 bits | 16 bits | 64 bits | 134 +--------+-+------------+-----------+-----------------------------+ 135 | Prefix |L| Global ID | Subnet ID | Interface ID | 136 +--------+-+------------+-----------+-----------------------------+ 138 Where: 140 Prefix FC00::/7 prefix to identify Local IPv6 unicast 141 addresses. 143 L Set to 1 if the prefix is locally assigned. 144 Set to 0 may be defined in the future. See 145 section 3.2 for additional information. 147 Global ID 40-bit global identifier used to create a 148 globally unique prefix. See section 3.2 for 149 additional information. 151 Subnet ID 16-bit Subnet ID is an identifier of a subnet 152 within the site. 154 Interface ID 64-bit Interface ID as defined in [ADDARCH]. 156 3.1.1 Background 158 There were a range of choices available when choosing the size of the 159 prefix and Global ID field length. There is a direct tradeoff 160 between having a Global ID field large enough to support foreseeable 161 future growth and not using too much of the IPv6 address space 162 needlessly. A reasonable way of evaluating a specific field length 163 is to compare it to a projected 2050 world population of 9.3 billion 164 [POPUL] and the number of resulting /48 prefixes per person. A range 165 of prefix choices is shown in the following table: 167 Prefix Global ID Number of Prefixes % of IPv6 168 Length /48 Prefixes per Person Address Space 170 /11 37 137,438,953,472 15 0.049% 171 /10 38 274,877,906,944 30 0.098% 172 /9 39 549,755,813,888 59 0.195% 173 /8 40 1,099,511,627,776 118 0.391% 174 /7 41 2,199,023,255,552 236 0.781% 175 /6 42 4,398,046,511,104 473 1.563% 177 A very high utilization ratio of these allocations can be assumed 178 because the Global ID field does not require internal structure, and 179 there is no reason to be able to aggregate the prefixes. 181 The authors believe that a /7 prefix resulting in a 41 bit Global ID 182 space (including the L bit) is a good choice. It provides for a 183 large number of assignments (i.e., 2.2 trillion) and at the same time 184 uses less than .8% of the total IPv6 address space. It is unlikely 185 that this space will be exhausted. If more than this were to be 186 needed, then additional IPv6 address space could be allocated for 187 this purpose. 189 3.2 Global ID 191 The allocation of Global IDs is pseudo-random [RANDOM]. They MUST 192 NOT be assigned sequentially or with well known numbers. This is to 193 ensure that there is not any relationship between allocations and to 194 help clarify that these prefixes are not intended to be routed 195 globally. Specifically, these prefixes are not designed to 196 aggregate. 198 This document defines a specific local method to allocate Global IDs, 199 indicated by setting the L bit to 1. Another method, indicated by 200 clearing the L bit, may be defined later. Apart from the allocation 201 method, all Local IPv6 addresses behave and are treated identically. 203 The local assignments are self generated and do not need any central 204 coordination or assignment, but have an extremely high probability of 205 being unique. 207 3.2.1 Locally Assigned Global IDs 209 Locally assigned Global IDs MUST be generated with a pseudo-random 210 algorithm consistent with [RANDOM]. Section 3.2.2 describes a 211 suggested algorithm. It is important that all sites generating 212 Global IDs use a functionally similar algorithm to ensure there is a 213 high probability of uniqueness. 215 The use of a pseudo-random algorithm to generate Global IDs in the 216 locally assigned prefix gives an assurance that any network numbered 217 using such a prefix is highly unlikely to have that address space 218 clash with any other network that has another locally assigned prefix 219 allocated to it. This is a particularly useful property when 220 considering a number of scenarios including networks that merge, 221 overlapping VPN address space, or hosts mobile between such networks. 223 3.2.2 Sample Code for Pseudo-Random Global ID Algorithm 225 The algorithm described below is intended to be used for locally 226 assigned Global IDs. In each case the resulting global ID will be 227 used in the appropriate prefix as defined in section 3.2. 229 1) Obtain the current time of day in 64-bit NTP format [NTP]. 230 2) Obtain an EUI-64 identifier from the system running this 231 algorithm. If an EUI-64 does not exist, one can be created from 232 a 48-bit MAC address as specified in [ADDARCH]. If an EUI-64 233 cannot be obtained or created, a suitably unique identifier, 234 local to the node, should be used (e.g. system serial number). 235 3) Concatenate the time of day with the system-specific identifier 236 creating a key. 237 4) Compute an SHA-1 digest on the key as specified in [FIPS, SHA1]; 238 the resulting value is 160 bits. 239 5) Use the least significant 40 bits as the Global ID. 240 6) Concatenate FC00::/7, the L bit set to 1, and the 40 bit Global 241 ID to create a Local IPv6 address prefix. 243 This algorithm will result in a Global ID that is reasonably unique 244 and can be used to create a locally assigned Local IPv6 address 245 prefix. 247 3.2.3 Analysis of the Uniqueness of Global IDs 249 The selection of a pseudo random Global ID is similar to the 250 selection of an SSRC identifier in RTP/RTCP defined in section 8.1 of 251 [RTP]. This analysis is adapted from that document. 253 Since Global IDs are chosen randomly (and independently), it is 254 possible that separate networks have chosen the same Global ID. For 255 any given network with one or more random Global IDs that has inter- 256 connections to other such networks, having a total of N such IDs, the 257 probability that two or more of these IDs will collide can be 258 approximated using the formula: 260 P = 1 - exp(-N**2 / 2**(L+1)) 262 where P is the probability of collision, N is the number of 263 interconnected Global IDs, and L is the length of the Global ID. 265 The following table shows the probability of a collision for a range 266 of connections using a 40 bit Global ID field. 268 Connections Probability of Collision 270 2 1.81*10^-12 271 10 4.54*10^-11 272 100 4.54*10^-09 273 1000 4.54*10^-07 274 10000 4.54*10^-05 276 Based on this analysis the uniqueness of locally generated Global IDs 277 is adequate for sites planning a small to moderate amount of inter- 278 site communication using locally generated Global IDs. 280 3.3 Scope Definition 282 By default, the scope of these addresses is global. That is, they 283 are not limited by ambiguity like the site-local addresses defined in 284 [ADDARCH]. Rather, these prefixes are globally unique, and as such, 285 their applicability is greater than site-local addresses. Their 286 limitation is in the routability of the prefixes, which is limited to 287 a site and any explicit routing agreements with other sites to 288 propagate them (also see section 4.1). Also, unlike site-locals, a 289 site may have more than one of these prefixes and use them at the 290 same time. 292 4.0 Operational Guidelines 294 The guidelines in this section do not require any change to the 295 normal routing and forwarding functionality in an IPv6 host or 296 router. These are configuration and operational usage guidelines. 298 4.1 Routing 300 Local IPv6 addresses are designed to be routed inside of a site in 301 the same manner as other types of unicast addresses. They can be 302 carried in any IPv6 routing protocol without any change. 304 It is expected that they would share the same Subnet IDs with 305 provider based global unicast addresses if they were being used 306 concurrently [GLOBAL]. 308 The default behavior of exterior routing protocol sessions between 309 administrative routing regions must be to ignore receipt of and not 310 advertise prefixes in the FC00::/7 block. A network operator may 311 specifically configure prefixes longer than FC00::/7 for inter-site 312 communication. 314 If BGP is being used at the site border with an ISP, the default BGP 315 configuration must filter out any Local IPv6 address prefixes, both 316 incoming and outgoing. It must be set both to keep any Local IPv6 317 address prefixes from being advertised outside of the site as well as 318 to keep these prefixes from being learned from another site. The 319 exception to this is if there are specific /48 or longer routes 320 created for one or more Local IPv6 prefixes. 322 For link-state IGPs, it is suggested that a site utilizing IPv6 local 323 addresses prefixes be contained either within one IGP domain or area. 324 By containing an IPv6 local address prefix to a single link-state 325 area or domain, the distribution of prefixes can be controlled. 327 4.2 Renumbering and Site Merging 329 The use of Local IPv6 addresses in a site results in making 330 communication using these addresses independent of renumbering a 331 site's provider based global addresses. 333 When merging multiple sites the addresses created with these prefixes 334 are unlikely to need to be renumbered because all of the addresses 335 have a high probability of being unique. Routes for each specific 336 prefix would have to be configured to allow routing to work correctly 337 between the formerly separate sites. 339 4.3 Site Border Router and Firewall Packet Filtering 341 While no serious harm will be done if packets with these addresses 342 are sent outside of a site via a default route, it is recommended 343 that routers be configured by default to keep any packets with Local 344 IPv6 addresses from leaking outside of the site and to keep any site 345 prefixes from being advertised outside of their site. 347 Site border routers and firewalls should be configured to not forward 348 any packets with Local IPv6 source or destination addresses outside 349 of the site unless they have been explicitly configured with routing 350 information about specific /48 or longer Local IPv6 prefixes. This 351 will ensure that packets with Local IPv6 destination addresses will 352 not be forwarded outside of the site via a default route. The 353 default behavior of these devices should be to install a "reject" 354 route for these prefixes. Site border routers should respond with 355 the appropriate ICMPv6 Destination Unreachable message to inform the 356 source that the packet was not forwarded. [ICMPV6]. This feedback is 357 important to avoid transport protocol timeouts. 359 Routers that maintain peering arrangements between Autonomous Systems 360 throughout the Internet should obey the recommendations for site 361 border routers unless configured otherwise. 363 4.4 DNS Issues 365 At the present time AAAA and PTR records for locally assigned local 366 IPv6 addresses are not recommended to be installed in the global DNS. 367 The operational issues relating to this are beyond the scope of this 368 document. 370 For background on this recommendation, the concern about adding AAAA 371 and PTR records to the global DNS for locally assigned Local IPv6 372 addresses stems from the lack of complete assurance that the prefixes 373 are unique. There is a small possibility that the same PTR record 374 might be registered by two different organizations. Due to this 375 concern, adding AAAA records is thought to be unwise because matching 376 PTR records can not be registered 378 4.5 Application and Higher Level Protocol Issues 380 Application and other higher level protocols can treat Local IPv6 381 addresses in the same manner as other types of global unicast 382 addresses. No special handling is required. This type of address 383 may not be reachable, but that is no different from other types of 384 IPv6 global unicast address. Applications need to be able to handle 385 multiple addresses that may or may not be reachable at any point in 386 time. In most cases this complexity should be hidden in APIs. 388 From a host's perspective this difference shows up as different 389 reachability than global unicast and could be handled by default that 390 way. In some cases it is better for nodes and applications to treat 391 them differently from global unicast addresses. A starting point 392 might be to give them preference over global unicast, but fall back 393 to global unicast if a particular destination is found to be 394 unreachable. Much of this behavior can be controlled by how they are 395 allocated to nodes and put into the DNS. However it is useful if a 396 host can have both types of addresses and use them appropriately. 398 Note that the address selection mechanisms of [ADDSEL], and in 399 particular the policy override mechanism replacing default address 400 selection, are expected to be used on a site where Local IPv6 401 addresses are configured. 403 4.6 Use of Local IPv6 Addresses for Local Communication 405 Local IPv6 addresses, like global scope unicast addresses, are only 406 assigned to nodes if their use has been enabled (via IPv6 address 407 autoconfiguration [ADDAUTO], DHCPv6 [DHCP6], or manually). They are 408 not created automatically in the way that IPv6 link-local addresses 409 are and will not appear or be used unless they are purposely 410 configured. 412 In order for hosts to autoconfigure Local IPv6 addresses, routers 413 have to be configured to advertise Local IPv6 /64 prefixes in router 414 advertisements, or a DHCPv6 server must have been configured to 415 assign them. In order for a node to learn the Local IPv6 address of 416 another node, the Local IPv6 address must have been installed in a 417 naming system (e.g., DNS, proprietary naming system, etc.) For these 418 reasons, it is straight forward to control their usage in a site. 420 To limit the use of Local IPv6 addresses the following guidelines 421 apply: 423 - Nodes that are to only be reachable inside of a site: The local 424 DNS should be configured to only include the Local IPv6 425 addresses of these nodes. Nodes with only Local IPv6 addresses 426 must not be installed in the global DNS. 428 - Nodes that are to be limited to only communicate with other 429 nodes in the site: These nodes should be set to only 430 autoconfigure Local IPv6 addresses via [ADDAUTO] or to only 431 receive Local IPv6 addresses via [DHCP6]. Note: For the case 432 where both global and Local IPv6 prefixes are being advertised 433 on a subnet, this will require a switch in the devices to only 434 autoconfigure Local IPv6 addresses. 436 - Nodes that are to be reachable from inside of the site and from 437 outside of the site: The DNS should be configured to include 438 the global addresses of these nodes. The local DNS may be 439 configured to also include the Local IPv6 addresses of these 440 nodes. 442 - Nodes that can communicate with other nodes inside of the site 443 and outside of the site: These nodes should autoconfigure global 444 addresses via [ADDAUTO] or receive global address via [DHCP6]. 445 They may also obtain Local IPv6 addresses via the same 446 mechanisms. 448 4.7 Use of Local IPv6 Addresses with VPNs 450 Local IPv6 addresses can be used for inter-site Virtual Private 451 Networks (VPN) if appropriate routes are set up. Because the 452 addresses are unique these VPNs will work reliably and without the 453 need for translation. They have the additional property that they 454 will continue to work if the individual sites are renumbered or 455 merged. 457 5.0 Global Routing Considerations 459 Section 4.1 provides operational guidelines that forbid default 460 routing of local addresses between sites. Concerns were raised to 461 the IPv6 working group and to the IETF as a whole that sites may 462 attempt to use local addresses as globally routed provider- 463 independent addresses. This section describes why using local 464 addresses as globally-routed provider-independent addresses is 465 unadvisable. 467 5.1 From the Standpoint of the Internet 469 There is a mismatch between the structure of IPv6 local addresses and 470 the normal IPv6 wide area routing model. The /48 prefix of an IPv6 471 local addresses fits nowhere in the normal hierarchy of IPv6 unicast 472 addresses. Normal IPv6 unicast addresses can be routed 473 hierarchically down to physical subnet (link) level and only have to 474 be flat-routed on the physical subnet. IPv6 local addresses would 475 have to be flat-routed even over the wide area Internet. 477 Thus, packets whose destination address is an IPv6 local address 478 could be routed over the wide area only if the corresponding /48 479 prefix were carried by the wide area routing protocol in use, such as 480 BGP. This contravenes the operational assumption that long prefixes 481 will be aggregated into many fewer short prefixes, to limit the table 482 size and convergence time of the routing protocol. If a network uses 483 both normal IPv6 addresses [ADDARCH] and IPv6 local addresses, these 484 types of address will certainly not aggregate with each other, since 485 they differ from the most significant bit onwards. Neither will IPv6 486 local addresses aggregate with each other, due to their random bit 487 patterns. This means that there would be a very significant 488 operational penalty for attempting to use IPv6 local address prefixes 489 generically with currently known wide area routing technology. 491 5.2 From the Standpoint of a Site 493 There are a number of design factors in IPv6 local addresses that 494 reduce the likelihood that IPv6 local addresses will be used as 495 arbitrary global unicast addresses. These include: 497 - The default rules to filter packets and routes make it very 498 difficult to use IPv6 local addresses for arbitrary use across 499 the Internet. For a site to use them as general purpose unicast 500 addresses, they would have to make sure that the default rules 501 were not being used by all other sites and intermediate ISPs 502 used for their current and future communication. 504 - They are not mathematically guaranteed to be unique and are not 505 registered in public databases. Collisions, while highly 506 unlikely, are possible and a collision can compromise the 507 integrity of the communications. The lack of public 508 registration creates operational problems. 510 - The addresses are allocated randomly. If a site had multiple 511 prefixes that they wanted to be used globally the cost of 512 advertising them would be very high as they could not be 513 aggregated. 515 - They have a long prefix (i.e, /48) so a single local address 516 prefix doesn't provide enough address space to be used 517 exclusively by the largest organizations. 519 6.0 Advantages and Disadvantages 521 6.1 Advantages 523 This approach has the following advantages: 525 - Provides Local IPv6 prefixes that can be used independently of 526 any provider based IPv6 unicast address allocations. This is 527 useful for sites not always connected to the Internet or sites 528 that wish to have a distinct prefix that can be used to localize 529 traffic inside of the site. 530 - Applications can treat these addresses in an identical manner as 531 any other type of global IPv6 unicast addresses. 532 - Sites can be merged without any renumbering of the Local IPv6 533 addresses. 534 - Sites can change their provider based IPv6 unicast address 535 without disrupting any communication using Local IPv6 addresses. 536 - Well known prefix that allows for easy filtering at site 537 boundary. 539 - Can be used for inter-site VPNs. 540 - If accidently leaked outside of a site via routing or DNS, there 541 is no conflict with any other addresses. 543 6.2 Disadvantages 545 This approach has the following disadvantages: 547 - Not possible to route Local IPv6 prefixes on the global Internet 548 with current routing technology. Consequentially, it is 549 necessary to have the default behavior of site border routers to 550 filter these addresses. 551 - There is a very low probability of non-unique locally assigned 552 Global IDs being generated by the algorithm in section 3.2.3. 553 This risk can be ignored for all practical purposes, but it 554 leads to a theoretical risk of clashing address prefixes. 556 7.0 Security Considerations 558 Local IPv6 addresses do not provide any inherent security to the 559 nodes that use them. They may be used with filters at site 560 boundaries to keep Local IPv6 traffic inside of the site, but this is 561 no more or less secure than filtering any other type of global IPv6 562 unicast addresses. 564 Local IPv6 addresses do allow for address-based security mechanisms, 565 including IPsec, across end to end VPN connections. 567 8.0 IANA Considerations 569 The IANA is instructed to assign the FC00::/7 prefix for Unique Local 570 IPv6 unicast addresses. 572 9.0 References 574 9.1 Normative References 576 [ADDARCH] Hinden, R., S. Deering, S., "IP Version 6 Addressing 577 Architecture", RFC 3513, April 2003. 579 [FIPS] "Federal Information Processing Standards Publication", 580 (FIPS PUB) 180-1, Secure Hash Standard, 17 April 1995. 582 [GLOBAL] Hinden, R., S. Deering, E. Nordmark, "IPv6 Global Unicast 583 Address Format", RFC 3587, August 2003. 585 [ICMPV6] Conta, A., S. Deering, "Internet Control Message Protocol 586 (ICMPv6) for the Internet Protocol Version 6 (IPv6) 587 Specification", RFC2463, December 1998. 589 [IPV6] Deering, S., R. Hinden, "Internet Protocol, Version 6 590 (IPv6) Specification", RFC 2460, December 1998. 592 [NTP] Mills, David L., "Network Time Protocol (Version 3) 593 Specification, Implementation and Analysis", RFC 1305, 594 March 1992. 596 [RANDOM] Eastlake, D. 3rd, S. Crocker, J. Schiller, "Randomness 597 Recommendations for Security", RFC 1750, December 1994. 599 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 600 Requirement Levels", RFC 2119, BCP14, March 1997. 602 [SHA1] D. Eastlake 3rd, P. Jones, "US Secure Hash Algorithm 1 603 (SHA1)", RFC 3174, September 2001. 605 9.2 Informative References 607 [ADDAUTO] Thomson, S., T. Narten, "IPv6 Stateless Address 608 Autoconfiguration", RFC 2462, December 1998. 610 [ADDSEL] Draves, R., "Default Address Selection for Internet 611 Protocol version 6 (IPv6)", RFC 3484, February 2003. 613 [DHCP6] Droms, R., et. al., "Dynamic Host Configuration Protocol 614 for IPv6 (DHCPv6)", RFC3315, July 2003. 616 [POPUL] Population Reference Bureau, "World Population Data Sheet 617 of the Population Reference Bureau 2002", August 2002. 619 [RTP] Schulzrinne, H., S. Casner, R. Frederick, V. Jacobson, 620 "RTP: A Transport Protocol for Real-Time Applications" 621 RFC3550, July 2003. 623 10.0 Authors' Addresses 625 Robert M. Hinden 626 Nokia 627 313 Fairchild Drive 628 Mountain View, CA 94043 629 USA 631 phone: +1 650 625-2004 632 email: bob.hinden@nokia.com 634 Brian Haberman 635 Johns Hopkins University 636 Applied Physics Lab 637 11100 Johns Hopkins Road 638 Laurel, MD 20723 639 USA 641 phone: +1 443 778 1319 642 email: brian@innovationslab.net 644 11.0 Change Log 646 Draft 647 o Removed all mention of centrally assigned IPv6 local address 648 addresses based on IESG comments. L=0 is left to be defined in 649 the future. 650 o Added new section titled "Global Routing Considerations" that 651 discusses the issues relating to why using these addresses for 652 general purpose unicast address on the global internet is not a 653 good idea. 654 o Several editorial changes. 656 Draft 657 o Moved sections 4-10, into one new section 4.0 titled 658 "operational guidelines" to clarify the their scope. 659 o Clarified routing requirements to make it clearer that these 660 prefixes should not be routed on the global Internet. 661 o Various editorial changes. 663 Draft 664 o Changed the format in section 3.1 in add a "L" (local/central) 665 bit and reduced the size of the global-ID to 40 bits. This is 666 equivalent to the previous separate prefixes and makes the 667 document clearer. 668 o Changed pseudo-random algorithm to use SHA-1 instead of MD5. 669 o Moved [POPUL] to be an informative reference. 670 o Added paragraph in Routing section to discuss the use of IGPs. 671 o Various editorial changes. 673 Draft 674 o Clarify text to permit prefixes longer than /48 to be 675 configured. 676 o Changed text in section 7.0 to recommend that locally assigned 677 IPv6 local addresses are not installed in the global DNS and 678 removed text about consequences of if they were installed in the 679 global DNS. 680 o Clarify the text in section 5.1 to state that there is a high 681 probability that there will be no address conflict when 682 renumbering. 683 o Several minor editorial changes. 685 Draft 686 o Removed the definition and technical requirements for centrally 687 assigned local address. The Centrally assigned local addresses 688 will be defined in a separate document. This document defines 689 the specific prefixes to be used for centrally and locally 690 assigned IPv6 local addresses, but only the locally assigned 691 local addresses are defined here. 693 Draft 695 o Clarified text in section 3.2.1 that central assigned prefixes 696 should be assigned under the authority of a single allocation 697 organization. 698 o Added step to suggested pseudo-random algorithm that in the case 699 of centrally assigned prefixes the computed Global IDs should be 700 verified against the escrow. 701 o Added new text to section 3.2.2 that explains in more detail the 702 need for pseudo-random Global IDs (i.e., avoid duplicate 703 allocations). 704 o Rewrote section 7.0 to describe DNS AAAA and PTR records, and 705 clarify when they might be installed in the global DNS. 706 o Various editorial changes. 708 Draft 710 o Removed requirement of a fee per central allocation and updated 711 IANA considerations to reflect this. Rewrote text to focus on 712 the requirement to avoid hoarding of allocations. 713 o Changed "filtering" and "black hole routes" to "reject" routes. 714 o Changed uppers case requirements (i.e., MUST, SHOULD, etc.) to 715 lower case in sections giving operational advice. 716 o Removed paragraph mentioning "Multicast DNS". 717 o Various editorial changes. 719 Draft 721 o Removed mention of 10 euro charge and changed text in section 722 3.2.1 and IANA considerations to restate the requirement for low 723 cost allocations and added specific requirement to prevent 724 hording. 725 o Added need to send ICMPv6 destination unreachable messages if 726 packets are filtered or dropped at site boundaries. 727 o Changed format section to list prefix sizes and definition, and 728 changed discussion of prefix sizes to new background section. 729 o Various editorial changes. 731 Draft 733 o Removed example of PIR as an example of an allocation authority 734 and clarified the text that the IANA should delegate the 735 centrally assigned prefix to an allocation authority. 736 o Changed sample code for generating pseudo random Global IDs to 737 not require any human input. Changes from using birthday to 738 unique token (e.g., EUI-64, serial number, etc.) available on 739 machine running the algorithm. 740 o Added a new section analyzing the uniqueness properties of the 741 pseudo random number algorithm. 742 o Added text to recommend that centrally assigned local addresses 743 be used for site planning extensive inter-site communication. 744 o Clarified that domain border routers should follow site border 745 router recommendations. 746 o Clarified that AAAA DNS records should not be installed in the 747 global DNS. 748 o Several editorial changes. 750 Draft 752 o Changed file name to become an IPv6 w.g. group document. 753 o Clarified language in Routing and Firewall sections. 754 o Several editorial changes. 756 Draft 758 o Changed title and name of addresses defined in this document to 759 "Unique Local IPv6 Unicast Addresses" with abbreviation of 760 "Local IPv6 addresses". 761 o Several editorial changes. 763 Draft 765 o Added section on scope definition and updated application 766 requirement section. 767 o Clarified that, by default, the scope of these addresses is 768 global. 769 o Renumbered sections and general text improvements 770 o Removed reserved Global ID values 771 o Added pseudo code for local allocation submitted by Brian 772 Haberman and added him as an author. 773 o Split Global ID values into centrally assigned and local 774 assignments and added text to describe local assignments 776 Draft 778 o Initial Draft 780 12.0 Intellectual Property 782 The IETF takes no position regarding the validity or scope of any 783 Intellectual Property Rights or other rights that might be claimed to 784 pertain to the implementation or use of the technology described in 785 this document or the extent to which any license under such rights 786 might or might not be available; nor does it represent that it has 787 made any independent effort to identify any such rights. Information 788 on the procedures with respect to rights in RFC documents can be 789 found in BCP 78 and BCP 79. 791 Copies of IPR disclosures made to the IETF Secretariat and any 792 assurances of licenses to be made available, or the result of an 793 attempt made to obtain a general license or permission for the use of 794 such proprietary rights by implementers or users of this 795 specification can be obtained from the IETF on-line IPR repository at 796 http://www.ietf.org/ipr. 798 The IETF invites any interested party to bring to its attention any 799 copyrights, patents or patent applications, or other proprietary 800 rights that may cover technology that may be required to implement 801 this standard. Please address the information to the IETF at ietf- 802 ipr@ietf.org. 804 13.0 Disclaimer of Validity 806 This document and the information contained herein are provided on an 807 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 808 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET 809 ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, 810 INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE 811 INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 812 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 814 14.0 Copyright Statement 816 Copyright (C) The Internet Society (2004). This document is subject 817 to the rights, licenses and restrictions contained in BCP 78, and 818 except as set forth therein, the authors retain all their rights.