The 05 update to v6ops-nap- was sent to the ID editor earlier today. Attached is the diff between it and the existing -04. I believe it addresses all the outstanding comments. Tony > -----Original Message----- > From: Ralph Droms [mailto:rdroms@cisco.com] > Sent: Saturday, December 02, 2006 12:29 AM > To: Tony Hain; 'Brian E Carpenter' > Cc: 'Gunter Van de Velde (gvandeve)'; 'Eric Klein'; 'Fred Baker (fred)'; > 'Cullen Jennings'; 'Margaret Wasserman' > Subject: Re: draft-ietf-v6ops-nap-04 > > This revision looks to me to be OK for publication... > > - Ralph > > > On 11/29/06 4:53 PM, "Tony Hain" <alh-ietf@tndh.net> wrote: > > > Brian E Carpenter wrote: > >> ... > >> There is a classification of NAT types in RFC 2663 and another one > >> in RFC 3489. But I'm not sure that would help us. I don't think the > >> differences are significant in this context. They mainly affect the > >> gymnastics needed by upper layers, and NAP6 avoids all that. > > > > I agree, the differences really don't make a difference here. > > > >> > >>> and the one about an HA adding latency, which I > >>> believe is bogus in context since the HA is sitting on path as the nat > >>> replacement. > >> > >> Might be worth saying exactly that: Any overhead introduced by the > >> HA may be considered roughly equivalent to that introduced by a NAT, > >> but without the additional overhead of an ALG. > > > > Added text: > > Note that in this usage context the HA is replacing the NAT function at > the > > edge of the network, so concerns about additional latency for routing > > through a tunnel to the HA do not apply because it is effectively on the > > same path that the NAT traffic would have taken. > > > >> > >> I agree with all the changes. > >> > >> Only one nit that the Editor isn't guaranteed to find struck me: > >> > >>> 4.4 Privacy and Topology Hiding using IPv6 > >>> > >>> Partial host privacy is achieved in IPv6 using RFC 041 pseudo-random > >> > >> s/041/3041/ > > > > Fixed. > > > >> > >> Thanks for all the work. > >> > >> Brian > > > > If all the authors agree with this version I will send it as -05.txt > > > > Tony > > > >Title: Diff: draft-ietf-v6ops-nap-04.txt - draft-ietf-v6ops-nap-05-draft2.txt
draft-ietf-v6ops-nap-04.txt | draft-ietf-v6ops-nap-05-draft2.txt | |||
---|---|---|---|---|
Network Working Group G. Van de Velde | Network Working Group G. Van de Velde | |||
Internet-Draft T. Hain | Internet-Draft T. Hain | |||
Intended status: Informational R. Droms | Intended status: Informational R. Droms | |||
Expires: April 16, 2007 Cisco Systems | Expires: June 2, 2007 Cisco Systems | |||
B. Carpenter | B. Carpenter | |||
IBM | IBM | |||
E. Klein | E. Klein | |||
Tel Aviv University | Tel Aviv University | |||
October 13, 2006 | November 29, 2006 | |||
Network Architecture Protection for IPv6 | Network Architecture Protection for IPv6 | |||
<draft-ietf-v6ops-nap-04.txt> | <draft-ietf-v6ops-nap-05.txt> | |||
Status of this Memo | Status of this Memo | |||
By submitting this Internet-Draft, each author represents that any | By submitting this Internet-Draft, each author represents that any | |||
applicable patent or other IPR claims of which he or she is aware | 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 | 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. | aware will be disclosed, in accordance with Section 6 of BCP 79. | |||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF), its areas, and its working groups. Note that | Task Force (IETF), its areas, and its working groups. Note that | |||
skipping to change at page 1, line 39 | skipping to change at page 1, line 39 | |||
and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
The list of current Internet-Drafts can be accessed at | The list of current Internet-Drafts can be accessed at | |||
http://www.ietf.org/ietf/1id-abstracts.txt. | http://www.ietf.org/ietf/1id-abstracts.txt. | |||
The list of Internet-Draft Shadow Directories can be accessed at | The list of Internet-Draft Shadow Directories can be accessed at | |||
http://www.ietf.org/shadow.html. | http://www.ietf.org/shadow.html. | |||
This Internet-Draft will expire on April 16, 2007. | This Internet-Draft will expire on June 2, 2007. | |||
Copyright Notice | Copyright Notice | |||
Copyright (C) The Internet Society (2006). | Copyright (C) The Internet Society (2006). | |||
Abstract | Abstract | |||
Although there are many perceived benefits to Network Address | Although there are many perceived benefits to Network Address | |||
Translation (NAT), its primary benefit of "amplifying" available | Translation (NAT), its primary benefit of "amplifying" available | |||
address space is not needed in IPv6. In addition to NAT's many | address space is not needed in IPv6. In addition to NAT's many | |||
serious disadvantages, there is a perception that other benefits | serious disadvantages, there is a perception that other benefits | |||
exist, such as a variety of management and security attributes that | exist, such as a variety of management and security attributes that | |||
could be useful for an Internet Protocol site. IPv6 does not support | could be useful for an Internet Protocol site. IPv6 was designed | |||
NAT by design and this document shows how Network Architecture | with the intention of making NAT unnecessary, and this document shows | |||
Protection (NAP6) using IPv6 can provide the same or more benefits | how Network Architecture Protection (NAP6) using IPv6 can provide the | |||
without the need for address translation. | same or more benefits without the need for address translation. | |||
Table of Contents | Table of Contents | |||
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 | 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
2. Perceived Benefits of NAT and its Impact on IPv4 . . . . . . . 7 | 2 Perceived Benefits of NAT and its Impact on IPv4 . . . . . . . 7 | |||
2.1. Simple Gateway between Internet and Private Network . . . 7 | 2.1 Simple Gateway between Internet and Private Network . . . . 7 | |||
2.2. Simple Security due to Stateful Filter Implementation . . 7 | 2.2 Simple Security due to Stateful Filter Implementation . . . 7 | |||
2.3. User/Application tracking . . . . . . . . . . . . . . . . 8 | 2.3 User/Application tracking . . . . . . . . . . . . . . . . . 8 | |||
2.4. Privacy and Topology Hiding . . . . . . . . . . . . . . . 9 | 2.4 Privacy and Topology Hiding . . . . . . . . . . . . . . . . 9 | |||
2.5. Independent Control of Addressing in a Private Network . . 10 | 2.5 Independent Control of Addressing in a Private Network . . 10 | |||
2.6. Global Address Pool Conservation . . . . . . . . . . . . . 10 | 2.6 Global Address Pool Conservation . . . . . . . . . . . . . 10 | |||
2.7. Multihoming and Renumbering with NAT . . . . . . . . . . . 11 | 2.7 Multihoming and Renumbering with NAT . . . . . . . . . . . 11 | |||
3. Description of the IPv6 Tools . . . . . . . . . . . . . . . . 12 | 3 Description of the IPv6 Tools . . . . . . . . . . . . . . . . 12 | |||
3.1. Privacy Addresses (RFC 3041) . . . . . . . . . . . . . . . 12 | 3.1 Privacy Addresses (RFC 3041) . . . . . . . . . . . . . . . 12 | |||
3.2. Unique Local Addresses . . . . . . . . . . . . . . . . . . 13 | 3.2 Unique Local Addresses . . . . . . . . . . . . . . . . . . 13 | |||
3.3. DHCPv6 Prefix Delegation . . . . . . . . . . . . . . . . . 14 | 3.3 DHCPv6 Prefix Delegation . . . . . . . . . . . . . . . . . 14 | |||
3.4. Untraceable IPv6 Addresses . . . . . . . . . . . . . . . . 14 | 3.4 Untraceable IPv6 Addresses . . . . . . . . . . . . . . . . 14 | |||
4. Using IPv6 Technology to Provide the Market Perceived | 4 Using IPv6 Technology to Provide the Market Perceived | |||
Benefits of NAT . . . . . . . . . . . . . . . . . . . . . . . 14 | Benefits of NAT . . . . . . . . . . . . . . . . . . . . . . . 15 | |||
4.1. Simple Gateway between Internet and Internal Network . . . 15 | 4.1 Simple Gateway between Internet and Internal Network . . . 15 | |||
4.2. IPv6 and Simple Security . . . . . . . . . . . . . . . . . 15 | 4.2 IPv6 and Simple Security . . . . . . . . . . . . . . . . . 16 | |||
4.3. User/Application Tracking . . . . . . . . . . . . . . . . 18 | 4.3 User/Application Tracking . . . . . . . . . . . . . . . . . 18 | |||
4.4. Privacy and Topology Hiding using IPv6 . . . . . . . . . . 18 | 4.4 Privacy and Topology Hiding using IPv6 . . . . . . . . . . 18 | |||
4.5. Independent Control of Addressing in a Private Network . . 21 | 4.5 Independent Control of Addressing in a Private Network . . 21 | |||
4.6. Global Address Pool Conservation . . . . . . . . . . . . . 21 | 4.6 Global Address Pool Conservation . . . . . . . . . . . . . 22 | |||
4.7. Multihoming and Renumbering . . . . . . . . . . . . . . . 22 | 4.7 Multihoming and Renumbering . . . . . . . . . . . . . . . . 22 | |||
5. Case Studies . . . . . . . . . . . . . . . . . . . . . . . . . 22 | 5 Case Studies . . . . . . . . . . . . . . . . . . . . . . . . . 23 | |||
5.1. Medium/large private networks . . . . . . . . . . . . . . 23 | 5.1 Medium/large private networks . . . . . . . . . . . . . . . 23 | |||
5.2. Small Private Networks . . . . . . . . . . . . . . . . . . 24 | 5.2 Small Private Networks . . . . . . . . . . . . . . . . . . 25 | |||
5.3. Single User Connection . . . . . . . . . . . . . . . . . . 26 | 5.3 Single User Connection . . . . . . . . . . . . . . . . . . 27 | |||
5.4. ISP/Carrier Customer Networks . . . . . . . . . . . . . . 27 | 5.4 ISP/Carrier Customer Networks . . . . . . . . . . . . . . . 27 | |||
6. IPv6 Gap Analysis . . . . . . . . . . . . . . . . . . . . . . 28 | 6 IPv6 Gap Analysis . . . . . . . . . . . . . . . . . . . . . . 28 | |||
6.1. Simple Security . . . . . . . . . . . . . . . . . . . . . 28 | 6.1 Simple Security . . . . . . . . . . . . . . . . . . . . . . 28 | |||
6.2. Subnet Topology Masking . . . . . . . . . . . . . . . . . 28 | 6.2 Subnet Topology Masking . . . . . . . . . . . . . . . . . . 29 | |||
6.3. Minimal Traceability of Privacy Addresses . . . . . . . . 28 | 6.3 Minimal Traceability of Privacy Addresses . . . . . . . . . 29 | |||
6.4. Site Multihoming . . . . . . . . . . . . . . . . . . . . . 29 | 6.4 Site Multihoming . . . . . . . . . . . . . . . . . . . . . 29 | |||
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 29 | 7 IANA Considerations . . . . . . . . . . . . . . . . . . . . . 30 | |||
8. Security Considerations . . . . . . . . . . . . . . . . . . . 29 | 8 Security Considerations . . . . . . . . . . . . . . . . . . . 30 | |||
9. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . 30 | 9 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . 30 | |||
10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 30 | 10 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 31 | |||
11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 30 | 11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 31 | |||
11.1. Normative References . . . . . . . . . . . . . . . . . . . 30 | 11.1 Normative References . . . . . . . . . . . . . . . . . . . 31 | |||
11.2. Informative References . . . . . . . . . . . . . . . . . . 31 | 11.2 Informative References . . . . . . . . . . . . . . . . . . 31 | |||
Appendix A. Additional Benefits due to Native IPv6 and | Appendix A Additional Benefits due to Native IPv6 and | |||
Universal Unique Addressing . . . . . . . . . . . . . 32 | Universal Unique Addressing . . . . . . . . . . . . . 33 | |||
A.1. Universal Any-to-Any Connectivity . . . . . . . . . . . . 32 | A.1 Universal Any-to-Any Connectivity . . . . . . . . . . . . . 33 | |||
A.2. Auto-configuration . . . . . . . . . . . . . . . . . . . . 33 | A.2 Auto-configuration . . . . . . . . . . . . . . . . . . . . 34 | |||
A.3. Native Multicast Services . . . . . . . . . . . . . . . . 33 | A.3 Native Multicast Services . . . . . . . . . . . . . . . . . 34 | |||
A.4. Increased Security Protection . . . . . . . . . . . . . . 33 | A.4 Increased Security Protection . . . . . . . . . . . . . . . 34 | |||
A.5. Mobility . . . . . . . . . . . . . . . . . . . . . . . . . 34 | A.5 Mobility . . . . . . . . . . . . . . . . . . . . . . . . . 35 | |||
A.6. Merging Networks . . . . . . . . . . . . . . . . . . . . . 34 | A.6 Merging Networks . . . . . . . . . . . . . . . . . . . . . 35 | |||
Appendix B. Revision history . . . . . . . . . . . . . . . . . . 35 | Appendix B Revision history . . . . . . . . . . . . . . . . . . . 36 | |||
B.1. Changes from *-vandevelde-v6ops-nap-00 to | B.1 Changes from *-vandevelde-v6ops-nap-00 to | |||
*-vandevelde-v6ops-nap-01 . . . . . . . . . . . . . . . . 35 | *-vandevelde-v6ops-nap-01 . . . . . . . . . . . . . . . . . 36 | |||
B.2. Changes from *-vandevelde-v6ops-nap-01 to | B.2 Changes from *-vandevelde-v6ops-nap-01 to | |||
*-ietf-v6ops-nap-00 . . . . . . . . . . . . . . . . . . . 35 | *-ietf-v6ops-nap-00 . . . . . . . . . . . . . . . . . . . . 36 | |||
B.3. Changes from *-ietf-v6ops-nap-00 to *-ietf-v6ops-nap-01 . 35 | B.3 Changes from *-ietf-v6ops-nap-00 to *-ietf-v6ops-nap-01 . . 36 | |||
B.4. Changes from *-ietf-v6ops-nap-01 to *-ietf-v6ops-nap-02 . 35 | B.4 Changes from *-ietf-v6ops-nap-01 to *-ietf-v6ops-nap-02 . . 36 | |||
B.5. Changes from *-ietf-v6ops-nap-02 to *-ietf-v6ops-nap-03 . 39 | B.5 Changes from *-ietf-v6ops-nap-02 to *-ietf-v6ops-nap-03 . . 40 | |||
B.6. Changes from *-ietf-v6ops-nap-03 to *-ietf-v6ops-nap-04 . 41 | B.6 Changes from *-ietf-v6ops-nap-03 to *-ietf-v6ops-nap-04 . . 42 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 42 | B.7 Changes from *-ietf-v6ops-nap-04 to *-ietf-v6ops-nap-05 . . 43 | |||
Intellectual Property and Copyright Statements . . . . . . . . . . 44 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 44 | |||
Intellectual Property and Copyright Statements . . . . . . . . . . 46 | ||||
1. Introduction | 1 Introduction | |||
There have been periodic claims that IPv6 will require a Network | There have been periodic claims that IPv6 will require a Network | |||
Address Translation (NAT), because with IPv4 people use NAT to | Address Translation (NAT), because network administrators use NAT to | |||
accomplish that person's preferred task. This document will explain | meet a variety of needs when using IPv4 and those needs will also | |||
why those pronouncements are false by showing how to accomplish the | have to be met when using IPv6. Although there are many perceived | |||
task goal without address translation. Although there are many | benefits to NAT, its primary benefit of "amplifying" available | |||
perceived benefits to NAT, its primary benefit of "amplifying" | address space is not needed in IPv6. The serious disadvantages and | |||
available address space is not needed in IPv6. The serious | impact on applications by ambiguous address space and Network Address | |||
disadvantages and impact on applications by ambiguous address space | Translation [3] [7]have been well documented [6] [8]so there will not | |||
and Network Address Translation [1] [5]have been well documented [4] | be much additional discussion here. However, given its wide | |||
[6]so there will not be much additional discussion here. However, | deployment NAT undoubtedly has some perceived benefits, though the | |||
given its wide deployment NAT undoubtedly has some perceived | bulk of those using it have not evaluated the technical trade-offs. | |||
benefits, though the bulk of those using it have not evaluated the | Indeed, it is often claimed that some connectivity and security | |||
technical trade-offs. Indeed, it is often claimed that some | concerns can only be solved by using a NAT device, without any | |||
connectivity and security concerns can only be solved by using a NAT | mention of the negative impacts on applications. This is amplified | |||
device, without any mention of the negative impacts on applications. | through the widespread sharing of vendor best practice documents and | |||
This is amplified through the widespread sharing of vendor best | sample configurations that do not differentiate the translation | |||
practice documents and sample configurations that do not | function of address expansion from the state function of limiting | |||
differentiate the translation function of address expansion from the | connectivity. | |||
state function of limiting connectivity. | ||||
This document describes the goals for utilizing a NAT device in an | This document describes the uses of a NAT device in an IPv4 | |||
IPv4 environment that are regularly cited as solutions for perceived | environment that are regularly cited as 'solutions' for perceived | |||
problems. It then shows how these needs can be met without using the | problems. It then shows how the goals of the network manager can be | |||
header modification feature of NAT in an IPv6 network. It should be | met in an IPv6 network without using the header modification feature | |||
noted that this document is 'informational', as it discusses | of NAT. It should be noted that this document is 'informational', as | |||
approaches that will work to accomplish the goals. It is | it discusses approaches that will work to accomplish the goals of the | |||
specifically not a BCP that is recommending any one approach. | network manager. It is specifically not a BCP that is recommending | |||
any one approach, or a manual on how to configure a network. | ||||
As far as security and privacy are concerned, this document considers | As far as security and privacy are concerned, this document considers | |||
how to mitigate a number of threats. Some are obviously external, | how to mitigate a number of threats. Some are obviously external, | |||
such as having a hacker or a worm infected machine outside trying to | such as having a hacker or a worm infected machine outside trying to | |||
penetrate and attack the local network. Some are local such as a | penetrate and attack the local network. Some are local such as a | |||
disgruntled employee disrupting business operations, or the | disgruntled employee disrupting business operations, or the | |||
unintentional negligence of a user downloading some malware which | unintentional negligence of a user downloading some malware which | |||
then proceeds to attack from within. Some may be inherent in the | then proceeds to attack from within. Some may be inherent in the | |||
device hardware ("embedded") such as having some firmware in a | device hardware ("embedded") such as having some firmware in a | |||
domestic appliance "call home" to its manufacturer without the user's | domestic appliance "call home" to its manufacturer without the user's | |||
consent. | consent. | |||
Another consideration discussed is the view that NAT can be used to | Another consideration discussed is the view that NAT can be used to | |||
fulfill the goals of a security policy. At a technical level the | fulfill the goals of a security policy. On the one hand, NAT does | |||
translation process fundamentally can not produce security because | satisfy some policy goals, such as topology hiding; at the same time | |||
mangling the address in the header does not fulfill any useful | it defeats others, such as the ability to produce an end-to-end audit | |||
security functions; in fact it breaks the ability to produce an audit | trail at network level. That said, there are artifacts of NAT | |||
trail which is a fundamental security tool. That said, the artifacts | devices that do provide some value. | |||
of NAT devices do provide some value. | ||||
1. The need to establish state before anything gets through from | 1. The need to establish state before anything gets through from | |||
outside to inside solves one set of problems. | outside to inside solves one set of problems. | |||
2. The need to stop receiving any packets when finished with a flow | 2. The expiration of state to stop receiving any packets when | |||
solves a set of problems | finished with a flow solves a set of problems | |||
3. the need to appear to be attached at the edge of the network | 3. The ability for nodes to appear to be attached at the edge of the | |||
solves a set of problems | network solves a set of problems | |||
4. and the ability to have addresses that are not publicly routed | 4. The ability to have addresses that are not publicly routed solves | |||
solves yet another set (mostly changes where the state is and | yet another set (mostly changes where the state is and scale | |||
scale requirements for the first one). | requirements for the first one). | |||
This document describes several techniques that may be combined in an | This document describes several techniques that may be combined in an | |||
IPv6 deployment to protect the integrity of its network architecture. | IPv6 deployment to protect the integrity of its network architecture. | |||
It will focus on the 'how to accomplish a goal' perspective, leaving | It will focus on the 'how to accomplish a goal' perspective, leaving | |||
most of the 'why that goal' perspective for other documents. These | most of the 'why that goal is useful' perspective for other | |||
techniques, known collectively as Network Architecture Protection | documents. These techniques, known collectively as Network | |||
(NAP6), retain the concept of a well defined boundary between | Architecture Protection (NAP6), retain the concept of a well defined | |||
"inside" and "outside" the private network, and allow firewalling, | boundary between "inside" and "outside" the private network, while | |||
topology hiding, and privacy. NAP6 will achieve these security goals | allowing firewalling, topology hiding, and privacy. NAP6 will | |||
without address translation whilst regaining the ability for | achieve these security goals without address translation whilst | |||
arbitrary any-to-any connectivity. | regaining the ability for arbitrary any-to-any connectivity. | |||
IPv6 Network Architecture Protection can be summarized in the | IPv6 Network Architecture Protection can be summarized in the | |||
following table. It presents the marketed "benefits" of IPv4+NAT | following table. It presents the marketed benefits of IPv4+NAT with | |||
with a cross-reference of how those are delivered in both the IPv4 | a cross-reference of how those are delivered in both the IPv4 and | |||
and IPv6 environments. | IPv6 environments. | |||
Goal IPv4 IPv6 | Goal IPv4 IPv6 | |||
+------------------+-----------------------+-----------------------+ | +------------------+-----------------------+-----------------------+ | |||
| Simple Gateway | DHCP - single | DHCP-PD - arbitrary | | | Simple Gateway | DHCP - single | DHCP-PD - arbitrary | | |||
| as default router| address upstream | length customer | | | as default router| address upstream | length customer | | |||
| and address pool | DHCP - limited | prefix upstream | | | and address pool | DHCP - limited | prefix upstream | | |||
| manager | number of individual | SLAAC via RA | | | manager | number of individual | SLAAC via RA | | |||
| | devices downstream | downstream | | | | devices downstream | downstream | | |||
| | see section 2.1 | see section 4.1 | | | | see section 2.1 | see section 4.1 | | |||
+------------------|-----------------------|-----------------------+ | +------------------|-----------------------|-----------------------+ | |||
skipping to change at page 7, line 4 | skipping to change at page 7, line 5 | |||
+------------------|-----------------------|-----------------------+ | +------------------|-----------------------|-----------------------+ | |||
| Renumbering and | Address translation | Preferred lifetime | | | Renumbering and | Address translation | Preferred lifetime | | |||
| Multi-homing | at border | per prefix & Multiple| | | Multi-homing | at border | per prefix & Multiple| | |||
| | | addresses per | | | | | addresses per | | |||
| | | interface | | | | | interface | | |||
| | see section 2.7 | see section 4.7 | | | | see section 2.7 | see section 4.7 | | |||
+------------------+-----------------------+-----------------------+ | +------------------+-----------------------+-----------------------+ | |||
This document first identifies the perceived benefits of NAT in more | This document first identifies the perceived benefits of NAT in more | |||
detail, and then shows how IPv6 NAP6 can provide each of them. It | detail, and then shows how IPv6 NAP6 can provide each of them. It | |||
concludes with a IPv6 NAP6 case study and a gap analysis of work that | concludes with a IPv6 NAP6 case study and a gap analysis of standards | |||
remains to be done for a complete NAP6 solution. | work that remains to be done for an optimal NAP6 solution. | |||
2. Perceived Benefits of NAT and its Impact on IPv4 | 2 Perceived Benefits of NAT and its Impact on IPv4 | |||
This section provides insight into the generally perceived benefits | This section provides insight into the generally perceived benefits | |||
of the use of IPv4 NAT. The goal of this description is not to | of the use of IPv4 NAT. The goal of this description is not to | |||
analyze these benefits or the accuracy of the perception (detailed | analyze these benefits or the accuracy of the perception (detailed | |||
discussions in [4]), but to describe the deployment requirements and | discussions in [6]), but to describe the deployment requirements and | |||
set a context for the later descriptions of the IPv6 approaches for | set a context for the later descriptions of the IPv6 approaches for | |||
dealing with those requirements. | dealing with those requirements. | |||
2.1. Simple Gateway between Internet and Private Network | 2.1 Simple Gateway between Internet and Private Network | |||
A NAT device can connect a private network with addresses allocated | A NAT device can connect a private network with addresses allocated | |||
from any part of the space (ambiguous [1] or global registered & | from any part of the space (ambiguous [3]or global registered & | |||
unregistered address) towards the Internet, though extra effort is | unregistered address) towards the Internet, though extra effort is | |||
needed when the same range exists on both sides of the NAT. The | needed when the same range exists on both sides of the NAT. The | |||
address space of the private network can be built from globally | address space of the private network can be built from globally | |||
unique addresses, from ambiguous address space or from both | unique addresses, from ambiguous address space or from both | |||
simultaneously. In the simple case of private use addresses, without | simultaneously. In the simple case of private use addresses, without | |||
needing specific configuration the NAT device enables access between | needing specific configuration the NAT device enables access between | |||
the client side of a distributed client-server application in the | the client side of a distributed client-server application in the | |||
private network and the server side located in the public Internet. | private network and the server side located in the public Internet. | |||
Wide-scale deployments have shown that using NAT to act as a simple | Wide-scale deployments have shown that using NAT to act as a simple | |||
gateway attaching a private IPv4 network to the Internet is simple | gateway attaching a private IPv4 network to the Internet is simple | |||
and practical for the non-technical end user. Frequently a simple | and practical for the non-technical end user. Frequently a simple | |||
user interface, or even a default configuration is sufficient for | user interface, or even a default configuration is sufficient for | |||
configuring both device and application access rights. | configuring both device and application access rights. | |||
This simplicity comes at a price as the resulting topology puts | This simplicity comes at a price, as the resulting topology puts | |||
restrictions on applications. The NAT simplicity works well when the | restrictions on applications. The NAT simplicity works well when the | |||
applications are limited to a client/server model with the server | applications are limited to a client/server model with the server | |||
deployed on the public side of the NAT. For peer-to-peer, multi- | deployed on the public side of the NAT. For peer-to-peer, multi- | |||
party, or servers deployed on the private side of the NAT, helper | party, or servers deployed on the private side of the NAT, helper | |||
technologies must be available. These helper technologies are | technologies must also be deployed. These helper technologies are | |||
frequently complex to develop and manage, creating a hidden cost to | frequently complex to develop and manage, creating a hidden cost to | |||
this 'simple gateway'. | this 'simple gateway'. | |||
2.2. Simple Security due to Stateful Filter Implementation | 2.2 Simple Security due to Stateful Filter Implementation | |||
It is frequently believed that through its session-oriented | It is frequently believed that through its session-oriented | |||
operation, NAT puts in an extra barrier to keep the private network | operation, NAT puts in an extra barrier to keep the private network | |||
protected from outside influences. Since a NAT device typically | protected from outside influences. Since a NAT device typically | |||
keeps state only for individual sessions, attackers, worms, etc. | keeps state only for individual sessions, attackers, worms, etc. | |||
cannot exploit this state to attack a specific host on any other | cannot exploit this state to attack a specific host on any other | |||
port, though in the port overload case of NAPT attacking all active | port, though in the port overload case of NAPT attacking all active | |||
ports will impact a potentially wide number of hosts. This benefit | ports will impact a potentially wide number of hosts. This benefit | |||
may be partially real, however, experienced hackers are well aware of | may be partially real, however, experienced hackers are well aware of | |||
NAT devices and are very familiar with private address space, and | NAT devices and are very familiar with private address space, and | |||
have devised methods of attack (such as trojan horses) that readily | have devised methods of attack (such as trojan horses) that readily | |||
penetrate NAT boundaries. For these reasons the sense of security | penetrate NAT boundaries. While the stateful filtering offered by | |||
provided by NAT is actually an illusion. | NAT offers a measure of protection against a variety of | |||
straightforward network attacks, it does not protect against all | ||||
attacks despite being presented as a one-size-fits-all answer. | ||||
The act of address translation does not provide security in itself; | The act of translating address bits within the header does not | |||
for example, consider a configuration with static NAT translation and | provide security in itself. For example consider a configuration | |||
all inbound ports translating to a single machine. In such a | with static NAT translation and all inbound ports translating to a | |||
scenario the security risk for that machine is identical to the case | single machine. In such a scenario the security risk for that | |||
with no NAT device in the communication path. As result there is no | machine is identical to the case with no NAT device in the | |||
specific security value in the address translation function. The | communication path, as any connection to the pubic address will be | |||
perceived security of NAT comes from the lack of pre- established or | delivered to the mapped target. | |||
permanent mapping state. Dynamically establishing state in response | ||||
to internal requests reduces the threat of unexpected external | The perceived security of NAT comes from the lack of pre- established | |||
connections to internal devices. This role, often marketed as a | or permanent mapping state. This is often used as a 'better than | |||
firewall, is really an arbitrary artifact while a real firewall has | nothing' level of protection because it doesn't require complex | |||
explicit management controls. | management to filter out unwanted traffic. Dynamically establishing | |||
state in response to internal requests reduces the threat of | ||||
unexpected external connections to internal devices, and this level | ||||
of protection would also be available from a basic firewall. (A | ||||
basic firewall, supporting clients accessing public side servers, | ||||
would improve on that level of protection by avoiding the problem of | ||||
state persisting as different clients use the same private side | ||||
address over time.) This role, often marketed as a firewall, is | ||||
really an arbitrary artifact while a real firewall has often offers | ||||
explicit and more comprehensive management controls. | ||||
In some cases, NAT operators (including domestic users) may be | In some cases, NAT operators (including domestic users) may be | |||
obliged to configure quite complex port mapping rules to allow | obliged to configure quite complex port mapping rules to allow | |||
external access to local applications such as a multi-player game or | external access to local applications such as a multi-player game or | |||
web servers. In this case the NAT actually adds management | web servers. In this case the NAT actually adds management | |||
complexity compared to a simple router. In situations where two or | complexity compared to the simple router discussed in 2.1. In | |||
more devices need to host the same application or otherwise use the | situations where two or more devices need to host the same | |||
same public port this complexity shifts from difficult to impossible. | application or otherwise use the same public port, this complexity | |||
shifts from difficult to impossible. | ||||
2.3. User/Application tracking | 2.3 User/Application tracking | |||
One usage of NAT is for the local network administrator to track user | One usage of NAT is for the local network administrator to track user | |||
and application traffic. Although NATs create temporary state for | and application traffic. Although NATs create temporary state for | |||
active sessions, in general they provide limited capabilities for the | active sessions, in general they provide limited capabilities for the | |||
administrator of the NAT to gather information about who in the | administrator of the NAT to gather information about who in the | |||
private network is requesting access to which Internet location. | private network is requesting access to which Internet location. | |||
This is done by periodically logging the network address translation | This is done by periodically logging the network address translation | |||
details of the private and the public addresses from the NAT device's | details of the private and the public addresses from the NAT device's | |||
state database. | state database. | |||
The subsequent checking of this database is not always a simple task, | The subsequent checking of this database is not always a simple task, | |||
especially if Port Address Translation is used. It also has an | especially if Port Address Translation is used. It also has an | |||
unstated assumption that the administrative instance has a mapping | unstated assumption that the administrative instance has a mapping | |||
between a private IPv4-address and a network element or user at all | between a private IPv4-address and a network element or user at all | |||
times, or the administrator has a time-correlated list of the | times, or the administrator has a time-correlated list of the | |||
address/port mappings. | address/port mappings. | |||
2.4. Privacy and Topology Hiding | 2.4 Privacy and Topology Hiding | |||
One goal of 'topology hiding' is to prevent external entities from | One goal of 'topology hiding' is to prevent external entities from | |||
making a correlation between the topological location of devices on | making a correlation between the topological location of devices on | |||
the local network. The ability of NAT to provide Internet access to | the local network. The ability of NAT to provide Internet access to | |||
a large community of users by the use of a single (or a few) global | a large community of users by the use of a single (or a few) global | |||
IPv4 routable addresses offers a simple mechanism to hide the | IPv4 routable address(es) offers a simple mechanism to hide the | |||
internal topology of a network. In this scenario the large community | internal topology of a network. In this scenario the large community | |||
will be represented in the Internet by a single (or a few) IPv4 | will be represented in the Internet by a single (or a few) IPv4 | |||
address(es). | address(es). | |||
The use of NAT then results in a user behind a NAT gateway actually | By using NAT a system appears to the Internet as if it originated | |||
appearing from the Internet as a user inside the NAT box itself; | inside the NAT box itself; i.e., the IPv4 address that appears on the | |||
i.e., the IPv4 address that appears on the Internet is only | Internet is only sufficient to identify the NAT so all internal nodes | |||
sufficient to identify the NAT so all internal nodes appear to exist | appear to exist at the demarcation edge. When concealed behind a NAT | |||
at the demarcation edge. When concealed behind a NAT it is | it is impossible to tell from the outside which member of a family, | |||
impossible to tell from the outside which member of a family, which | which customer of an Internet cafe, or which employee of a company | |||
customer of an Internet cafe, or which employee of a company | ||||
generated or received a particular packet. Thus, although NATs do | generated or received a particular packet. Thus, although NATs do | |||
nothing to provide application level privacy, they do prevent the | nothing to provide application level privacy, they do prevent the | |||
external tracking and profiling of individual systems by means of | external tracking and profiling of individual systems by means of | |||
their IP addresses, usually known as 'device profiling'. | their IP addresses, usually known as 'device profiling'. | |||
At the same time a NAT creates a smaller pool of addresses for a much | At the same time a NAT creates a smaller pool of addresses for a much | |||
more focused point of attack, where the adversary does not need to | more focused point of attack, where the adversary does not need to | |||
scan the entire local network but can instead concentrate on the | scan the entire local network but can instead concentrate on the | |||
active ports associated with the NAT adress. By periodically | active ports associated with the public NAT adress. By periodically | |||
scanning the limited 16 bit port range on the public side of the NAT, | scanning the limited 16 bit port range on the public side of the NAT, | |||
the attack will routinely find all ports that are open to active | the attack will routinely find all ports that are open to active | |||
nodes. | internal nodes. | |||
There is a similarity with privacy based on application level | There is a similarity with privacy based on application level | |||
proxies. When using an application level gateway for browsing the | proxies. When using an application level gateway for browsing the | |||
web for example, the 'privacy' of a web user can be provided by | web for example, the 'privacy' of a web user can be provided by | |||
masking the true identity of the original web user towards the | masking the true identity of the original web user towards the | |||
outside world (although the details of what is - or is not - logged | outside world (although the details of what is - or is not - logged | |||
at the NAT/proxy will be different). | at the NAT/proxy will be different). | |||
Some network managers prefer to hide as much as possible of their | Some network managers prefer to hide as much as possible of their | |||
internal network topology from outsiders as a useful precaution to | internal network topology from outsiders as a useful precaution to | |||
skipping to change at page 10, line 11 | skipping to change at page 10, line 22 | |||
ports. Once a list of available devices has been mapped, a port-scan | ports. Once a list of available devices has been mapped, a port-scan | |||
on these IP addresses can be performed. Scanning works by tracking | on these IP addresses can be performed. Scanning works by tracking | |||
which ports do not receive unreachable errors from either the | which ports do not receive unreachable errors from either the | |||
firewall or host. With the list of open ports an attacker can | firewall or host. With the list of open ports an attacker can | |||
optimize the time needed for a successful attack by correlating it | optimize the time needed for a successful attack by correlating it | |||
with known vulnerabilities to reduce the number of attempts. For | with known vulnerabilities to reduce the number of attempts. For | |||
example, FTP usually runs on port 21, and HTTP usually runs on port | example, FTP usually runs on port 21, and HTTP usually runs on port | |||
80. Any vulnerable open ports could be used for access to an end | 80. Any vulnerable open ports could be used for access to an end | |||
system to command it to start initiating attacks on others. | system to command it to start initiating attacks on others. | |||
2.5. Independent Control of Addressing in a Private Network | 2.5 Independent Control of Addressing in a Private Network | |||
Many private IPv4 networks take benefit from using the address space | Many private IPv4 networks make use of the address space defined in | |||
defined in RFC 1918 to enlarge the available addressing space for | RFC 1918 to enlarge the available addressing space for their private | |||
their private network, and at the same time reduce their need for | network, and at the same time reduce their need for globally routable | |||
globally routable addresses. This type of local control of address | addresses. This type of local control of address resources allows a | |||
resources allows a sufficiently large pool for a clean and | sufficiently large pool for a clean and hierarchical addressing | |||
hierarchical addressing structure in the local network. | structure in the local network. | |||
Another benefit is due to the usage of independent addresses on | Another benefit is the ability to change providers with minimal | |||
majority of the network infrastructure there is an increased ability | operational difficulty due to the usage of independent addresses on | |||
to change provider with less operational difficulties. | majority of the network infrastructure. Changing the addresses on | |||
the public side of the NAT avoids the administrative challenge of | ||||
changing every device in the network. | ||||
Section 2.7 describes some disadvantages that appear if independent | Section 2.7 describes some disadvantages that appear if independent | |||
networks using ambiguous addresses [1]have to be merged. | networks using ambiguous addresses [3]have to be merged. | |||
2.6. Global Address Pool Conservation | 2.6 Global Address Pool Conservation | |||
While the widespread use of IPv4+NAT has reduced the potential | While the widespread use of IPv4+NAT has reduced the potential | |||
consumption rate, the ongoing depletion of the IPv4 address range has | consumption rate, the ongoing depletion of the IPv4 address range has | |||
already taken the remaining pool of unallocated IPv4 addresses below | already taken the remaining pool of unallocated IPv4 addresses well | |||
25%. While mathematical models based on historical IPv4 prefix | below 25%. While mathematical models based on historical IPv4 prefix | |||
consumption periodically attempt to predict the future exhaustion | consumption periodically attempt to predict the future exhaustion | |||
date of the IPv4 address pool, a direct result of this continuous | date of the IPv4 address pool, a direct result of this continuous | |||
resource consumption is that the administrative overhead for | resource consumption is that the administrative overhead for | |||
acquiring globally unique IPv4 addresses will continue increasing in | acquiring globally unique IPv4 addresses will continue increasing in | |||
direct response to tightening allocation policies. | direct response to tightening allocation policies. | |||
In response to the increasing administrative overhead many Internet | In response to the increasing administrative overhead many Internet | |||
Service Providers (ISPs) have already resorted to the ambiguous | Service Providers (ISPs) have already resorted to the ambiguous | |||
addresses defined in RFC 1918 behind a NAT for the various services | addresses defined in RFC 1918 behind a NAT for the various services | |||
they provide as well as connections for their end customers. This | they provide as well as connections for their end customers. This | |||
skipping to change at page 11, line 20 | skipping to change at page 11, line 32 | |||
The limit of this approach is something substantially less than 2^48 | The limit of this approach is something substantially less than 2^48 | |||
possible active **application** endpoints (approximately [2^32 minus | possible active **application** endpoints (approximately [2^32 minus | |||
2^29] * [2* 2^16 minus well known port space]), as distinct from | 2^29] * [2* 2^16 minus well known port space]), as distinct from | |||
addressable devices each with their own application endpoint range. | addressable devices each with their own application endpoint range. | |||
Those who advocate layering of NAT frequently forget to mention that | Those who advocate layering of NAT frequently forget to mention that | |||
there are topology restrictions placed on the applications. Forced | there are topology restrictions placed on the applications. Forced | |||
into this limiting situation such customers can rightly claim that | into this limiting situation such customers can rightly claim that | |||
despite the optimistic predictions of mathematical models, the global | despite the optimistic predictions of mathematical models, the global | |||
pool of IPv4 addresses is effectively already exhausted. | pool of IPv4 addresses is effectively already exhausted. | |||
2.7. Multihoming and Renumbering with NAT | 2.7 Multihoming and Renumbering with NAT | |||
Allowing a network to be multihomed and renumbering a network are | Allowing a network to be multihomed and renumbering a network are | |||
quite different functions. However these are argued together as | quite different functions. However these are argued together as | |||
reasons for using NAT, because making a network multihomed is often a | reasons for using NAT, because making a network multihomed is often a | |||
transitional state required as part of network renumbering, and NAT | transitional state required as part of network renumbering, and NAT | |||
interacts with both in the same way. | interacts with both in the same way. | |||
For enterprise networks, it is highly desirable to provide resiliency | For enterprise networks, it is highly desirable to provide resiliency | |||
and load-balancing to be connected to more than one Internet Service | and load-balancing to be connected to more than one Internet Service | |||
Provider (ISP) and to be able to change ISPs at will. This means | Provider (ISP) and to be able to change ISPs at will. This means | |||
that a site must be able to operate under more than one CIDR prefix | that a site must be able to operate under more than one CIDR prefix | |||
[16]and/or readily change its CIDR prefix. Unfortunately, IPv4 was | [2]and/or readily change its CIDR prefix. Unfortunately, IPv4 was | |||
not designed to facilitate either of these maneuvers. However, if a | not designed to facilitate either of these maneuvers. However, if a | |||
site is connected to its ISPs via NAT boxes, only those boxes need to | site is connected to its ISPs via NAT boxes, only those boxes need to | |||
deal with multihoming and renumbering issues. | deal with multihoming and renumbering issues. | |||
Similarly, if two enterprise IPv4 networks need to be merged and | Similarly, if two enterprise IPv4 networks need to be merged and | |||
RFC1918 addresses are used, there is a high probability of address | RFC1918 addresses are used, there is a high probability of address | |||
overlaps. In those situations it may well be that installing a NAT | overlaps. In those situations it may well be that installing a NAT | |||
box between them will avoid the need to renumber one or both. For | box between them will avoid the need to renumber one or both. For | |||
any enterprise, this can be a short term financial saving, and allow | any enterprise, this can be a short term financial saving, and allow | |||
more time to renumber the network components. The long term solution | more time to renumber the network components. The long term solution | |||
is a single network without usage of NAT to avoid the ongoing | is a single network without usage of NAT to avoid the ongoing | |||
operational complexity of overlapping addresses. | operational complexity of overlapping addresses. | |||
The addition of an extra NAT as a solution may be sufficient for some | The addition of an extra NAT as a solution may be sufficient for some | |||
networks; however when the merging networks were already using | networks; however when the merging networks were already using | |||
address translation it will create major problems due to | address translation it will create major problems due to | |||
administrative difficulties of overlapping address spaces in the | administrative difficulties of overlapping address spaces in the | |||
merged networks. | merged networks. | |||
3. Description of the IPv6 Tools | 3 Description of the IPv6 Tools | |||
This section describes several features that can be used as part of | This section describes several features that can be used as part of | |||
the NAP6 solution to replace the protection features associated with | the NAP6 solution to replace the protection features associated with | |||
IPv4 NAT. | IPv4 NAT. | |||
The reader must clearly distinguish between features of IPv6 that | The reader must clearly distinguish between features of IPv6 that | |||
were fully defined when this document was drafted and those that were | were fully defined when this document was drafted and those that were | |||
potential features that still required more work to define them. The | potential features that still required more work to define them. The | |||
latter are summarized later in the 'Gap Analysis' section of this | latter are summarized later in the 'Gap Analysis' section of this | |||
document. However, we do not distinguish in this document between | document. However, we do not distinguish in this document between | |||
fully defined features of IPv6 and those that were already widely | fully defined features of IPv6 and those that were already widely | |||
implemented at the time of writing. | implemented at the time of writing. | |||
3.1. Privacy Addresses (RFC 3041) | 3.1 Privacy Addresses (RFC 3041) | |||
There are situations where it is desirable to prevent device | There are situations where it is desirable to prevent device | |||
profiling, for example by web sites that are accessed from the device | profiling, for example by web sites that are accessed from the device | |||
as it moves around the Internet. IPv6 privacy addresses were defined | as it moves around the Internet. IPv6 privacy addresses were defined | |||
to provide that capability. IPv6 addresses consist of a routing | to provide that capability. IPv6 addresses consist of a routing | |||
prefix, subnet-id part (SID) and an interface identifier part (IID). | prefix, subnet-id part (SID) and an interface identifier part (IID). | |||
As originally defined, IPv6 stateless address auto-configuration | As originally defined, IPv6 stateless address auto-configuration | |||
(SLAAC) will typically embed the IEEE Link Identifier of the | (SLAAC) will typically embed the IEEE Link Identifier of the | |||
interface as the IID part, though this practice facilitates tracking | interface as the IID part, though this practice facilitates tracking | |||
and profiling of a device through the consistent IID. RFC 3041 [7] | and profiling of a device through the consistent IID. RFC 3041 | |||
describes an extension to SLAAC to enhance device privacy. Use of | [9]describes an extension to SLAAC to enhance device privacy. Use of | |||
the privacy address extension causes nodes to generate global-scope | the privacy address extension causes nodes to generate global-scope | |||
addresses from interface identifiers that change over time, | addresses from interface identifiers that change over time, | |||
consistent with system administrator policy. Changing the interface | consistent with system administrator policy. Changing the interface | |||
identifier (thus the global-scope addresses generated from it) over | identifier (thus the global-scope addresses generated from it) over | |||
time makes it more difficult for eavesdroppers and other information | time makes it more difficult for eavesdroppers and other information | |||
collectors to identify when addresses used in different transactions | collectors to identify when addresses used in different transactions | |||
actually correspond to the same node. A relatively short valid | actually correspond to the same node. A relatively short valid | |||
lifetime for the privacy address also has the side effect of reducing | lifetime for the privacy address also has the effect of reducing the | |||
the attack profile of a device, as it is not directly attackable once | attack profile of a device, as it is not directly attackable once it | |||
it stops answering at the temporary use address. | stops answering at the temporary use address. | |||
While the primary implementation and source of randomized RFC 3041 | While the primary implementation and source of randomized RFC 3041 | |||
addresses is expected to be from end-systems running stateless auto- | addresses is expected to be from end-systems running stateless auto- | |||
configuration, there is nothing that prevents a DHCP server from | configuration, there is nothing that prevents a DHCP server from | |||
running the RFC 3041 algorithm for any new IEEE identifier it hears | running the RFC 3041 algorithm for any new IEEE identifier it hears | |||
in a request, then remembering that for future queries. This would | in a request, then remembering that for future queries. This would | |||
allow using them in DNS for registered services since the assumption | allow using them in DNS for registered services since the assumption | |||
of a DHCP server based deployment would be a persistent value that | of a DHCP server based deployment would be a persistent value that | |||
minimizes DNS churn. A DHCP based deployment would also allow for | minimizes DNS churn. A DHCP based deployment would also allow for | |||
local policy to periodically change the entire collection of end | local policy to periodically change the entire collection of end | |||
device addresses while maintaining some degree of central knowledge | device addresses while maintaining some degree of central knowledge | |||
and control over which addresses should be in use at any point in | and control over which addresses should be in use at any point in | |||
time. | time. | |||
Randomizing the IID, as defined in RFC 3041, is effectively a sparse | Randomizing the IID, as defined in RFC 3041, is effectively a sparse | |||
allocation technique which only precludes tracking of the lower 64 | allocation technique which only precludes tracking of the lower 64 | |||
bits of the IPv6 address. Masking of the subnet ID will require | bits of the IPv6 address. Masking of the subnet ID will require | |||
additional approaches as discussed below in 3.4. Additional | additional approaches as discussed below in 3.4. Additional | |||
considerations are discussed in [19]. | considerations are discussed in [20]. | |||
3.2. Unique Local Addresses | 3.2 Unique Local Addresses | |||
Achieving the goal of autonomy, that many perceive as a value of NAT, | Achieving the goal of autonomy, that many perceive as a value of NAT, | |||
is required for local network and application services stability | is required for local network and application services stability | |||
during periods of intermittent connectivity or moving between one or | during periods of intermittent connectivity or moving between one or | |||
more providers. Such autonomy in a single routing prefix environment | more providers. Such autonomy in a single routing prefix environment | |||
would lead to massive expansion of the global routing tables (as seen | would lead to massive expansion of the global routing tables (as seen | |||
in IPv4), so IPv6 provides for simultaneous use of multiple prefixes. | in IPv4), so IPv6 provides for simultaneous use of multiple prefixes. | |||
The Unique Local Address prefix (ULA) [15]has been set aside for use | The Unique Local Address prefix (ULA) [19]has been set aside for use | |||
in local communications. The ULA address prefix for any network is | in local communications. The ULA address prefix for any network is | |||
routable over a locally defined collection of routers. These | routable over a locally defined collection of routers. These | |||
prefixes are not intended to be routed on the public global Internet | prefixes are not intended to be routed on the public global Internet | |||
as large scale inter-domain distribution of routes for ULA prefixes | as large scale inter-domain distribution of routes for ULA prefixes | |||
would have a negative impact on global route aggregation. | would have a negative impact on global route aggregation. | |||
ULAs have the following characteristics: | ULAs have the following characteristics: | |||
o For all practical purposes a globally unique prefix | o For all practical purposes a globally unique prefix | |||
* Allows networks to be combined or privately interconnected | * Allows networks to be combined or privately interconnected | |||
without creating address conflicts or requiring renumbering of | without creating address conflicts or requiring renumbering of | |||
interfaces using these prefixes | interfaces using these prefixes | |||
* If accidentally leaked outside of a network via routing or DNS, | * If accidentally leaked outside of a network via routing or DNS, | |||
it is highly unlikely that there will be a conflict with any | it is highly unlikely that there will be a conflict with any | |||
other addresses | other addresses | |||
o ISP independent and can be used for communications inside of a | o ISP independent and can be used for communications inside of a | |||
network without having any permanent or only intermittent Internet | network without having any permanent or only intermittent Internet | |||
connectivity | connectivity | |||
o Well-known prefix to allow for easy filtering at network | o Well-known prefix to allow for easy filtering at network | |||
boundaries preventing leakage of local routes and packets. | boundaries preventing leakage of routes and packets that should | |||
remain local. | ||||
o In practice, applications may treat these addresses like global | o In practice, applications may treat these addresses like global | |||
scoped addresses but address selection algorithms may need to | scoped addresses but address selection algorithms may need to | |||
distinguish between ULAs and ordinary global scope unicast | distinguish between ULAs and ordinary global scope unicast | |||
addresses to assure stability. The policy table defined in [10] | addresses to assure stability. The policy table defined in [13]is | |||
is one way to bias this selection, by giving higher preference to | one way to bias this selection, by giving higher preference to | |||
FC00::/7 over 2001::/3. Mixing the two kinds of addresses may | FC00::/7 over 2001::/3. Mixing the two kinds of addresses may | |||
lead to undeliverable packets during times of instability, but | lead to undeliverable packets during times of instability, but | |||
that mixing is not likely to happen when the rules of RFC 3484 are | that mixing is not likely to happen when the rules of RFC 3484 are | |||
followed. | followed. | |||
o ULAs have no intrinsic security properties. However, they have | o ULAs have no intrinsic security properties. However, they have | |||
the useful property that their routing scope is limited by default | the useful property that their routing scope is limited by default | |||
within an administrative boundary. Their usage is suggested at | within an administrative boundary. Their usage is suggested at | |||
several points in this document, as a matter of administrative | several points in this document, as a matter of administrative | |||
convenience. | convenience. | |||
3.3. DHCPv6 Prefix Delegation | 3.3 DHCPv6 Prefix Delegation | |||
One of the functions of a simple gateway is managing the local use | One of the functions of a simple gateway is managing the local use | |||
address range. The Prefix Delegation (DHCP-PD) options [11] provide | address range. The Prefix Delegation (DHCP-PD) options [14]provide a | |||
a mechanism for automated delegation of IPv6 prefixes using the | mechanism for automated delegation of IPv6 prefixes using the Dynamic | |||
Dynamic Host Configuration Protocol (DHCP) [9]. This mechanism | Host Configuration Protocol (DHCP) [12]. This mechanism (DHCP-PD) is | |||
(DHCP-PD) is intended for delegating a long-lived prefix from a | intended for delegating a long-lived prefix from a delegating router | |||
delegating router (possibly incorporating a DHCPv6 server) to a | (possibly incorporating a DHCPv6 server) to a requesting router, | |||
requesting router, possibly across an administrative boundary, where | possibly across an administrative boundary, where the delegating | |||
the delegating router does not require knowledge about the topology | router does not require knowledge about the topology of the links in | |||
of the links in the network to which the prefixes will be assigned. | the network to which the prefixes will be assigned. | |||
3.4. Untraceable IPv6 Addresses | 3.4 Untraceable IPv6 Addresses | |||
The main goal of untraceable IPv6 addresses is to create an | The main goal of untraceable IPv6 addresses is to create an | |||
apparently amorphous network infrastructure as seen from external | apparently amorphous network infrastructure, as seen from external | |||
networks to protect the local infrastructure from malicious outside | networks, to protect the local infrastructure from malicious outside | |||
influences and from mapping of any correlation between the network | influences and from mapping of any correlation between the network | |||
activities of multiple devices from external networks. When using | activities of multiple devices from external networks. When using | |||
untraceable IPv6 addresses, it could be that two apparently | untraceable IPv6 addresses, it could be that two apparently | |||
sequential addresses are allocated to devices on very different parts | sequential addresses are allocated to devices on very different parts | |||
of the local network instead of belonging to devices adjacent to each | of the local network instead of belonging to devices adjacent to each | |||
other on the same subnet. | other on the same subnet. | |||
Since IPv6 addresses will not be in short supply even within a single | Since IPv6 addresses will not be in short supply even within a single | |||
/64 (or shorter) prefix, it is possible to generate them effectively | /64 (or shorter) prefix, it is possible to generate them effectively | |||
at random when untraceability is required. They will be globally | at random when untraceability is required. They will be globally | |||
skipping to change at page 14, line 46 | skipping to change at page 15, line 13 | |||
assignment is intended to mislead the outside world about the | assignment is intended to mislead the outside world about the | |||
structure of the local network. In particular the subnet structure | structure of the local network. In particular the subnet structure | |||
may be invisible in the address. Thus a flat routing mechanism will | may be invisible in the address. Thus a flat routing mechanism will | |||
be needed within the site. The local routers need to maintain a | be needed within the site. The local routers need to maintain a | |||
correlation between the topological location of the device and the | correlation between the topological location of the device and the | |||
untraceable IPv6 address. For smaller deployments this correlation | untraceable IPv6 address. For smaller deployments this correlation | |||
could be done by generating IPv6 host route entries, or for larger | could be done by generating IPv6 host route entries, or for larger | |||
ones by utilizing an indirection device such as a Mobile IPv6 Home | ones by utilizing an indirection device such as a Mobile IPv6 Home | |||
Agent. Additional details are in section 4.7. | Agent. Additional details are in section 4.7. | |||
4. Using IPv6 Technology to Provide the Market Perceived Benefits of | 4 Using IPv6 Technology to Provide the Market Perceived Benefits of NAT | |||
NAT | ||||
The facilities in IPv6 described in Section 3 can be used to provide | The facilities in IPv6 described in Section 3 can be used to provide | |||
the protection perceived to be associated with IPv4 NAT. This | the protection perceived to be associated with IPv4 NAT. This | |||
section gives some examples of how IPv6 can be used securely. | section gives some examples of how IPv6 can be used securely. | |||
4.1. Simple Gateway between Internet and Internal Network | 4.1 Simple Gateway between Internet and Internal Network | |||
As a simple gateway, the device manages both packet routing and local | As a simple gateway, the device manages both packet routing and local | |||
address management. A basic IPv6 router should have a default | address management. A basic IPv6 router should have a default | |||
configuration to advertise inside the site a locally generated random | configuration to advertise inside the site a locally generated random | |||
ULA prefix, independently from the state of any external | ULA prefix, independently from the state of any external | |||
connectivity. This would allow local nodes in a topology more | connectivity. This would allow local nodes in a topology more | |||
complex than a single link to communicate amongst themselves | complex than a single link to communicate amongst themselves | |||
independent of the state of a global connection. If the network | independent of the state of a global connection. If the network | |||
happened to concatenate with another local network, the randomness in | happened to concatenate with another local network, the randomness in | |||
ULA creation is highly unlikely to result in address collisions. | ULA creation is highly unlikely to result in address collisions. | |||
With external connectivity the simple gateway should use DHCP-PD to | With external connectivity the simple gateway should use DHCP-PD to | |||
acquire a routing prefix from the service provider for use when | acquire a routing prefix from the service provider for use when | |||
connecting to the global Internet. End-system connections involving | connecting to the global Internet. End-system connections involving | |||
other nodes on the global Internet will always use the global IPv6 | other nodes on the global Internet that follow the policy table in | |||
addresses derived from this prefix delegation. It should be noted | RFC 3484 will always use the global IPv6 addresses derived from this | |||
that the address selection policy table in end-systems defined in RFC | prefix delegation. It should be noted that the address selection | |||
3484 should be configured to prefer the ULA prefix range over the | policy table should be configured to prefer the ULA prefix range over | |||
DHCP-PD prefix range when the goal is to keep local communications | the DHCP-PD prefix range when the goal is to keep local | |||
stable during periods of transient external connectivity. | communications stable during periods of transient external | |||
connectivity. | ||||
In the very simple case there is no explicit routing protocol on | In the very simple case there is no explicit routing protocol on | |||
either side of the gateway, and a single default route is used | either side of the gateway, and a single default route is used | |||
internally pointing out to the global Internet. A slightly more | internally pointing out to the global Internet. A slightly more | |||
complex case might involve local internal routing protocols, but with | complex case might involve local internal routing protocols, but with | |||
the entire local network sharing a common global prefix there would | the entire local network sharing a common global prefix there would | |||
still not be a need for an external routing protocol as the service | still not be a need for an external routing protocol as the service | |||
provider could install a route for the prefix delegated via DHCP-PD | provider could install a route for the prefix delegated via DHCP-PD | |||
pointing toward the connecting link. | pointing toward the connecting link. | |||
4.2. IPv6 and Simple Security | 4.2 IPv6 and Simple Security | |||
The vulnerability of an IPv6 host is similar to that of an IPv4 host | The vulnerability of an IPv6 host directly connected towards the | |||
directly connected towards the Internet. The use of firewall and | Internet is similar to that of an IPv4 host. The use of firewall and | |||
Intrusion Detection Systems (IDS) is recommended for those that want | Intrusion Detection Systems (IDS) is recommended for those that want | |||
boundary protection in addition to host defenses. A proxy may be | boundary protection in addition to host defenses. A proxy may be | |||
used for certain applications, but with the caveat that the end to | used for certain applications, but with the caveat that the end to | |||
end transparency is broken. However, with IPv6, the following | end transparency is broken. However, with IPv6, the following | |||
protections are available without the use of NAT while maintaining | protections are available without the use of NAT while maintaining | |||
end-to-end reachability: | end-to-end reachability: | |||
1. Short lifetimes on privacy extension suffixes reduce the attack | 1. Short lifetimes on privacy extension suffixes reduce the attack | |||
profile since the node will not respond to the address once its | profile since the node will not respond to the address once its | |||
lifetime becomes invalid. | lifetime becomes invalid. | |||
2. IPsec is often cited as the reason for improved security because | ||||
2. IPsec is a mandatory service for IPv6 implementations. IPsec | it is a mandatory service for IPv6 implementations. Broader | |||
functions to authenticate the correspondent, prevent session | availability does not by itself improve security because its use | |||
hijacking, prevent content tampering, and optionally masks the | is still regulated by the availability of a key infrastructure. | |||
packet contents. While IPsec is commonly available in some IPv4 | IPsec functions to authenticate the correspondent, prevent | |||
implementations and can support NATs, NAT support has limitations | session hijacking, prevent content tampering, and optionally | |||
and does not work in all situations. In addition, the use of | masks the packet contents. While IPsec is commonly available in | |||
IPsec with NATs consumes extra bandwidth for UDP encapsulation | some IPv4 implementations and with extensions can support NAT | |||
and keepalive overhead [12]. In the IPv4/NAT environment, the | traversals, NAT support has limitations and does not work in all | |||
usage of IPSec has been largely limited to edge-to-edge VPN | situations. The use of IPsec with NATs requires an additional | |||
deployments, its potential for end-to-end deployment is | UDP encapsulation and keepalive overhead [15]. In the IPv4/NAT | |||
significantly enhanced in an IPv6 network. It should be noted | environment, the usage of IPSec has been largely limited to edge- | |||
that encrypted IPsec traffic will bypass content-aware firewalls, | to-edge VPN deployments. The potential for end-to-end IPsec use | |||
which is presumed to be acceptable for parties with whom the site | is significantly enhanced when NAT is removed from the network, | |||
has established a security association. | as connections can be initiated from either end. It should be | |||
noted that encrypted IPsec traffic will bypass content-aware | ||||
firewalls, which is presumed to be acceptable for parties with | ||||
whom the site has established a security association. | ||||
3. The size of the address space of a typical subnet (64 bits of | 3. The size of the address space of a typical subnet (64 bits of | |||
IID) will make a complete subnet ping sweep virtually impossible | IID) will make a complete subnet ping sweep virtually impossible | |||
due to the potential number of combinations available. Reducing | due to the potential number of combinations available [21]. | |||
the security threat of port scans on identified nodes requires | Reducing the security threat of port scans on identified nodes | |||
sparse distribution within the subnet to minimize the probability | requires sparse distribution within the subnet to minimize the | |||
of scans finding adjacent nodes. This scanning protection will | probability of scans finding adjacent nodes. This scanning | |||
be nullified if IIDs are configured in any structured groupings | protection will be nullified if IIDs are configured in any | |||
within the IID space. Provided that IIDs are essentially | structured groupings within the IID space. Provided that IIDs | |||
randomly distributed across the available space, address scanning | are essentially randomly distributed across the available space, | |||
based attacks will effectively fail. This protection exists if | address scanning based attacks will effectively fail. This | |||
the attacker has no direct access to the specific subnet and | protection exists if the attacker has no direct access to the | |||
therefore is trying to scan it remotely. If an attacker has | specific subnet and therefore is trying to scan it remotely. If | |||
local access then he could use ND [3]and ping6 to the link-scope | an attacker has local access then he could use ND [5]and ping6 to | |||
multicast ff02::1 to detect the IEEE based address of local | the link-scope multicast ff02::1 to detect the IEEE based address | |||
neighbors, then apply the global prefix to those to simplify its | of local neighbors, then apply the global prefix to those to | |||
search (of course, a locally connected attacker has many scanning | simplify its search (of course, a locally connected attacker has | |||
options with IPv4 as well). | many scanning options with IPv4 as well). | |||
Assuming the network administrator is aware of [20]the increased size | Assuming the network administrator is aware of [21]the increased size | |||
of the IPv6 address will make topology probing much harder, and | of the IPv6 address will make topology probing much harder, and | |||
almost impossible for IPv6 devices. The intention of topology | almost impossible for IPv6 devices. The intention of topology | |||
probing is to identify a selection of the available hosts inside an | probing is to identify a selection of the available hosts inside an | |||
enterprise. This mostly starts with a ping-sweep. Since the IPv6 | enterprise. This mostly starts with a ping-sweep. Since the IPv6 | |||
subnets are 64 bits worth of address space, this means that an | subnets are 64 bits worth of address space, this means that an | |||
attacker has to send out a simply unrealistic number of pings to map | attacker has to send out a simply unrealistic number of pings to map | |||
the network, and virus/worm propagation will be thwarted in the | the network, and virus/worm propagation will be thwarted in the | |||
process. At full-rate full-duplex 40Gbps (400 times the typical | process. At full-rate full-duplex 40Gbps (400 times the typical | |||
100Mbps LAN, and 13,000 times the typical DSL/Cable access link) it | 100Mbps LAN, and 13,000 times the typical DSL/Cable access link) it | |||
takes over 5000 years to scan the entirety of a single 64 bit subnet. | takes over 5000 years to scan the entirety of a single 64 bit subnet. | |||
skipping to change at page 17, line 15 | skipping to change at page 17, line 32 | |||
address the same threats if correctly configured firewalls and IDS | address the same threats if correctly configured firewalls and IDS | |||
systems are used at the perimeter. | systems are used at the perimeter. | |||
It must be noted that even a firewall doesn't fully secure | It must be noted that even a firewall doesn't fully secure | |||
a network. Many attacks come from inside or are at a layer | a network. Many attacks come from inside or are at a layer | |||
higher than the firewall can protect against. In the final | higher than the firewall can protect against. In the final | |||
analysis, every system has to be responsible for its own | analysis, every system has to be responsible for its own | |||
security, and every process running on a system has to be | security, and every process running on a system has to be | |||
robust in the face of challenges like stack overflows etc. | robust in the face of challenges like stack overflows etc. | |||
What a firewall does is prevent a network administration | What a firewall does is prevent a network administration | |||
from having to pay for bandwidth to carry unauthorized | from having to carry unauthorized | |||
traffic, and in so doing reduce the probability of certain | traffic, and in so doing reduce the probability of certain | |||
kinds of attacks across the protected boundary. | kinds of attacks across the protected boundary. | |||
To implement simple security for IPv6 in, for example, a DSL | To implement simple security for IPv6 in, for example a DSL or Cable | |||
connected home network, the DSL broadband gateway/router should be | Modem connected home network, the broadband gateway/router should be | |||
equipped with stateful firewall capabilities. These should provide a | equipped with stateful firewall capabilities. These should provide a | |||
default configuration where incoming traffic is limited to return | default configuration where incoming traffic is limited to return | |||
traffic resulting from outgoing packets (sometimes known as | traffic resulting from outgoing packets (sometimes known as | |||
reflective session state). There should also be an easy interface | reflective session state). There should also be an easy interface | |||
which allows users to create inbound 'pinholes' for specific purposes | which allows users to create inbound 'pinholes' for specific purposes | |||
such as online-gaming. Another consideration would be the capability | such as online-gaming. | |||
for service provider mediated pinhole management where things like | ||||
voice call signaling could dynamically establish pinholes based on | ||||
predefined authentication rules. | ||||
Administrators and the designers of configuration interfaces for | Administrators and the designers of configuration interfaces for | |||
simple IPv6 firewalls need to provide a means of documenting the | simple IPv6 firewalls need to provide a means of documenting the | |||
security caveats that arise from a given set configuration rules so | security caveats that arise from a given set configuration rules so | |||
that users (who are normally oblivious to such things) can be made | that users (who are normally oblivious to such things) can be made | |||
aware of the risks. As rules are improved iteratively, the goal will | aware of the risks. As rules are improved iteratively, the goal will | |||
be to make use of the IPv6 Internet more secure without increasing | be to make use of the IPv6 Internet more secure without increasing | |||
the perceived complexity for users who just want to accomplish a | the perceived complexity for users who just want to accomplish a | |||
task. | task. | |||
4.3. User/Application Tracking | 4.3 User/Application Tracking | |||
IPv6 enables the collection of information about data flows. Due to | IPv6 enables the collection of information about data flows. Due to | |||
the fact that all addresses used for Internet and intra-/inter- site | the fact that all addresses used for Internet and intra-/inter- site | |||
communication are unique, it is possible for an enterprise or ISP to | communication are unique, it is possible for an enterprise or ISP to | |||
get very detailed information on any communication exchange between | get very detailed information on any communication exchange between | |||
two or more devices. Unless privacy addresses [7] are in use, this | two or more devices. Unless privacy addresses [9]are in use, this | |||
enhances the capability of data- flow tracking for security audits | enhances the capability of data- flow tracking for security audits | |||
compared with IPv4 NAT, because in IPv6 a flow between a sender and | compared with IPv4 NAT, because in IPv6 a flow between a sender and | |||
receiver will always be uniquely identified due to the unique IPv6 | receiver will always be uniquely identified due to the unique IPv6 | |||
source and destination addresses. | source and destination addresses. | |||
At the same time, this tracking is per address. In environments | At the same time, this tracking is per address. In environments | |||
where the goal is tracking back to the user, additional external | where the goal is tracking back to the user, additional external | |||
information will be necessary correlating a user with an address. In | information will be necessary correlating a user with an address. In | |||
the case of short lifetime privacy address usage, this external | the case of short lifetime privacy address usage, this external | |||
information will need to be based on more stable information such as | information will need to be based on more stable information such as | |||
the layer 2 media address. | the layer 2 media address. | |||
4.4. Privacy and Topology Hiding using IPv6 | 4.4 Privacy and Topology Hiding using IPv6 | |||
Partial host privacy is achieved in IPv6 using pseudo-random privacy | Partial host privacy is achieved in IPv6 using RFC 3041 pseudo-random | |||
addresses RFC 3041 which are generated as required, so that a session | privacy addresses [9]which are generated as required, so that a | |||
can use an address that is valid only for a limited time. This only | session can use an address that is valid only for a limited time. | |||
allows such a session to be traced back to the subnet that originates | This only allows such a session to be traced back to the subnet that | |||
it, but not immediately to the actual host, where IPv4 NAT is only | originates it, but not immediately to the actual host, where IPv4 NAT | |||
traceable to the most public NAT interface. | is only traceable to the most public NAT interface. | |||
Due to the large IPv6 address space available there is plenty of | Due to the large IPv6 address space available there is plenty of | |||
freedom to randomize subnet allocations. By doing this, it is | freedom to randomize subnet allocations. By doing this, it is | |||
possible to reduce the correlation between a subnet and its location. | possible to reduce the correlation between a subnet and its location. | |||
When doing both subnet and IID randomization [7]a casual snooper | When doing both subnet and IID randomization a casual snooper won't | |||
won't be able to deduce much about the networks topology. The | be able to deduce much about the networks topology. The obtaining of | |||
obtaining of a single address will tell the snooper very little about | a single address will tell the snooper very little about other | |||
other addresses. This is different from IPv4 where address space | addresses. This is different from IPv4 where address space | |||
limitations cause this to be not true. In most usage cases this | limitations cause this to be not true. In most usage cases this | |||
concept should be sufficient for address privacy and topology hiding, | concept should be sufficient for address privacy and topology hiding, | |||
with the cost being a more complex internal routing configuration. | with the cost being a more complex internal routing configuration. | |||
As discussed in Section 3.1, there are multiple parts to the IPv6 | As discussed in Section 3.1, there are multiple parts to the IPv6 | |||
address, and different techniques to manage privacy for each which | address, and different techniques to manage privacy for each which | |||
may be combined to protect the entire address. In the case where a | may be combined to protect the entire address. In the case where a | |||
network administrator wishes to fully isolate the internal IPv6 | network administrator wishes to fully isolate the internal IPv6 | |||
topology, and the majority of its internal use addresses, one option | topology, and the majority of its internal use addresses, one option | |||
is to run all internal traffic using Unique Local Addresses (ULA). | is to run all internal traffic using Unique Local Addresses (ULA). | |||
By definition this prefix block is not to be advertised into the | By definition this prefix block is not to be advertised into the | |||
public routing system, so without a routing path external traffic | public routing system, so without a routing path external traffic | |||
will never reach the site. For the set of hosts that do in fact need | will never reach the site. For the set of hosts that do in fact need | |||
to interact externally, by using multiple IPv6 prefixes (ULAs and one | to interact externally, by using multiple IPv6 prefixes (ULAs and one | |||
or more global addresses) all of the internal nodes that do not need | or more global addresses) all of the internal nodes that do not need | |||
external connectivity, and the internally used addresses of those | external connectivity, and the internally used addresses of those | |||
that do will be masked from the outside. The policy table defined in | that do will be masked from the outside. The policy table defined in | |||
[10]provides a mechanism to bias the selection process when multiple | [13]provides a mechanism to bias the selection process when multiple | |||
prefixes are in use such that the ULA would be preferred when the | prefixes are in use such that the ULA would be preferred when the | |||
correspondent is also local. | correspondent is also local. | |||
There are other scenarios for the extreme situation when a network | There are other scenarios for the extreme situation when a network | |||
manager also wishes to fully conceal the internal IPv6 topology. In | manager also wishes to fully conceal the internal IPv6 topology. In | |||
these cases the goal in replacing the IPv4 NAT approach is to make | these cases the goal in replacing the IPv4 NAT approach is to make | |||
all of the topology hidden nodes appear from the outside to logically | all of the topology hidden nodes appear from the outside to logically | |||
exist at the edge of the network, just as they would when behind a | exist at the edge of the network, just as they would when behind a | |||
NAT. | NAT. This figure shows the relationship between the logical subnets | |||
and the topology masking router discussed in the bullet points that | ||||
o One approach uses explicit host routes in the IGP to remove the | follow. | |||
external correlation between physical topology attachment point | ||||
and end-to-end IPv6 address. In the figure below the hosts would | ||||
be allocated prefixes from one or more logical subnets, and would | ||||
inject host routes to internally identify their real attachment | ||||
point. This solution does however show severe scalability issues | ||||
and requires hosts to securely participate in the IGP, as well as | ||||
having the firewall block all external to internal traceroute for | ||||
the logical subnet. The specific limitations are dependent on the | ||||
IGP protocol, the physical topology, and the stability of the | ||||
system. In any case the approach should be limited to uses with | ||||
substantially fewer than the maximum number of routes that the IGP | ||||
can support (generally between 5,000 and 50,000 total entries | ||||
including subnet routes). Hosts should also listen to the IGP for | ||||
duplicate use before finalizing an interface address assignment as | ||||
the duplicate address detection will only check for use on the | ||||
attached segment, not the logical subnet. | ||||
o Another technical approach to fully hide the internal topology is | ||||
use of a tunneling mechanism. Mobile IPv6 without route | ||||
optimization is one approach for using an automated tunnel, as it | ||||
always starts in tunnel mode via the Home Agent (HA). In this | ||||
deployment model the application perceived addresses of the nodes | ||||
are routed via the edge HA. This indirection method truly masks | ||||
the internal topology, as from outside the local network all nodes | ||||
with global access appear to share the prefix of one or more | ||||
logical subnets attached to the HA rather than their real | ||||
attachment point. Duplicate address detection is handled as a | ||||
normal process of the HA binding update. While turning off all | ||||
binding updates with the coorespondent node would appear to be | ||||
necessary to prevent leakage of topology information, that | ||||
approach would also force all internal traffic using the home | ||||
address to route via the HA tunnel, which may be undesirable. A | ||||
more efficient method would be to allow internal route | ||||
optimizations while dropping outbound binding update messages at | ||||
the firewall. Another approach for the internal traffic would be | ||||
to use the policy table of RFC 3484 to bias a ULA prefix as | ||||
preferred internally, leaving the logical subnet Home Address | ||||
external for use. The downsides with a Mobile IPv6 based solution | ||||
is that it requires a home agent in the network, the configuration | ||||
of a security association with the HA for each hidden node, and | ||||
consumes some amount of bandwidth for tunnel overhead. | ||||
o Another method (where the layer 2 topology allows) uses a virtual | ||||
lan approach to logically attach the devices to one or more | ||||
subnets on the edge router. This approach leads the end nodes to | ||||
believe they actually share a common segment. The downsides of | ||||
this approach is that all internal traffic would be directed over | ||||
sub-optimal paths via the edge router, as well as the complexity | ||||
of managing a distributed logical lan. | ||||
Internet | Internet | |||
| | | | |||
\ | \ | |||
| | | | |||
+------------------+ | +------------------+ | |||
| topology |-+-+-+-+-+-+-+-+-- | | topology |-+-+-+-+-+-+-+-+-- | |||
| masking | Logical subnets | | masking | Logical subnets | |||
| router |-+-+-+-+-+-+-+-+-- | | router |-+-+-+-+-+-+-+-+-- | |||
+------------------+ for topology | +------------------+ for topology | |||
| hidden nodes | | hidden nodes | |||
| | | | |||
Real internal -------------+- | Real internal -------------+- | |||
topology | | | topology | | | |||
| -+---------- | | -+---------- | |||
-----------+--------+ | -----------+--------+ | |||
| | | | |||
| | | | |||
| | | | |||
o One approach uses explicit host routes in the IGP to remove the | ||||
external correlation between physical topology attachment point | ||||
and end-to-end IPv6 address. In the figure above the hosts would | ||||
be allocated prefixes from one or more logical subnets, and would | ||||
inject host routes into the IGP to internally identify their real | ||||
attachment point. This solution does however show severe | ||||
scalability issues and requires hosts to securely participate in | ||||
the IGP, as well as having the firewall block all external to | ||||
internal traceroute for the logical subnet. The specific | ||||
limitations are dependent on the IGP protocol, the physical | ||||
topology, and the stability of the system. In any case the | ||||
approach should be limited to uses with substantially fewer than | ||||
the maximum number of routes that the IGP can support (generally | ||||
between 5,000 and 50,000 total entries including subnet routes). | ||||
Hosts should also listen to the IGP for duplicate use before | ||||
finalizing an interface address assignment as the duplicate | ||||
address detection will only check for use on the attached segment, | ||||
not the logical subnet. | ||||
o Another technical approach to fully hide the internal topology is | ||||
use of a tunneling mechanism. Mobile IPv6 without route | ||||
optimization is one approach for using an automated tunnel, as it | ||||
always starts in tunnel mode via the Home Agent (HA). In this | ||||
deployment model the application perceived addresses of the nodes | ||||
are routed via the edge HA acting as the topology masking router | ||||
(above). This indirection method truly masks the internal | ||||
topology, as from outside the local network all nodes with global | ||||
access appear to share the prefix of one or more logical subnets | ||||
attached to the HA rather than their real attachment point. Note | ||||
that in this usage context the HA is replacing the NAT function at | ||||
the edge of the network, so concerns about additional latency for | ||||
routing through a tunnel to the HA do not apply because it is | ||||
effectively on the same path that the NAT traffic would have | ||||
taken. Duplicate address detection is handled as a normal process | ||||
of the HA binding update. While turning off all binding updates | ||||
with the coorespondent node would appear to be necessary to | ||||
prevent leakage of topology information, that approach would also | ||||
force all internal traffic using the home address to route via the | ||||
HA tunnel, which may be undesirable. A more efficient method | ||||
would be to allow internal route optimizations while dropping | ||||
outbound binding update messages at the firewall. Another | ||||
approach for the internal traffic would be to use the policy table | ||||
of RFC 3484 to bias a ULA prefix as preferred internally, leaving | ||||
the logical subnet Home Address external for use. The downsides | ||||
with a Mobile IPv6 based solution is that it requires a home agent | ||||
in the network, the configuration of a security association with | ||||
the HA for each hidden node, and consumes some amount of bandwidth | ||||
for tunnel overhead. | ||||
o Another method (where the layer 2 topology allows) uses a virtual | ||||
lan approach to logically attach the devices to one or more | ||||
subnets on the edge router. This approach leads the end nodes to | ||||
believe they actually share a common segment. The downsides of | ||||
this approach is that all internal traffic would be directed over | ||||
sub-optimal paths via the edge router, as well as the complexity | ||||
of managing a distributed logical lan. | ||||
One issue to be aware of is that subnet scope multicast will not work | One issue to be aware of is that subnet scope multicast will not work | |||
for the logical hidden subnets, except in the vlan case. While a | for the logical hidden subnets, except in the vlan case. While a | |||
limited scope multicast to a collection of nodes that are arbitrarily | limited scope multicast to a collection of nodes that are arbitrarily | |||
scattered makes no technical sense, care should be exercised to avoid | scattered makes no technical sense, care should be exercised to avoid | |||
deploying applications that expect limited scope multicast in | deploying applications that expect limited scope multicast in | |||
conjunction with topology hiding. | conjunction with topology hiding. | |||
Another issue that this document will not define is the mechanism for | Another issue that this document will not define is the mechanism for | |||
a topology hidden node to learn its logical subnet. While manual | a topology hidden node to learn its logical subnet. While manual | |||
configuration would clearly be sufficient, DHCP could be used for | configuration would clearly be sufficient, DHCP could be used for | |||
address assignment, with the recipient node discovering it is in a | address assignment, with the recipient node discovering it is in a | |||
hidden mode when the attached subnet prefix doesn't match the one | hidden mode when the attached subnet prefix doesn't match the one | |||
assigned. | assigned. | |||
4.5. Independent Control of Addressing in a Private Network | 4.5 Independent Control of Addressing in a Private Network | |||
IPv6 provides for autonomy in local use addresses through ULAs. At | IPv6 provides for autonomy in local use addresses through ULAs. At | |||
the same time IPv6 simplifies simultaneous use of multiple addresses | the same time IPv6 simplifies simultaneous use of multiple addresses | |||
per interface so that an IPv6 NAT is not required between the ULA and | per interface so that an IPv6 NAT is not required between the ULA and | |||
the public Internet because nodes that need access to the public | the public Internet because nodes that need access to the public | |||
Internet will have a global use address as well. When using IPv6, | Internet will have a global use address as well. When using IPv6, | |||
the need to ask for more address space will become far less likely | the need to ask for more address space will become far less likely | |||
due to the increased size of the subnets, along with an allocation | due to the increased size of the subnets, along with an allocation | |||
policy that recognizes table fragmentation is also an important | policy that recognizes table fragmentation is also an important | |||
consideration. While global IPv6 allocation policy is managed | consideration. While global IPv6 allocation policy is managed | |||
through the Regional Internet Registries, it is expected that they | through the Regional Internet Registries, it is expected that they | |||
will continue with derivatives of [8] for the foreseeable future so | will continue with derivatives of [10]for the foreseeable future so | |||
the number of subnet prefixes available to an organization should not | the number of subnet prefixes available to an organization should not | |||
be a limitation which would create an artificial demand for NAT. | be a limitation which would create an artificial demand for NAT. | |||
Ongoing subnet address maintenance may become simpler when IPv6 | Ongoing subnet address maintenance may become simpler when IPv6 | |||
technology is utilized. Under IPv4 address space policy restrictions | technology is utilized. Under IPv4 address space policy restrictions | |||
each subnet must be optimized, so one has to look periodically into | each subnet must be optimized, so one has to look periodically into | |||
the number of hosts on a segment and the subnet size allocated to the | the number of hosts on a segment and the subnet size allocated to the | |||
segment and rebalance. For example an enterprise today may have a | segment and rebalance. For example an enterprise today may have a | |||
mix of IPv4 /28 - /23 size subnets, and may shrink/grow these as | mix of IPv4 /28 - /23 size subnets, and may shrink/grow these as | |||
their network user base changes. For IPv6 all subnets have /64 | their network user base changes. For IPv6 all subnets have /64 | |||
prefixes which will reduce the operational and configuration | prefixes which will reduce the operational and configuration | |||
overhead. | overhead. | |||
4.6. Global Address Pool Conservation | 4.6 Global Address Pool Conservation | |||
IPv6 provides sufficient space to completely avoid the need for | IPv6 provides sufficient space to completely avoid the need for | |||
overlapping address space. Since allocations in IPv6 are based on | overlapping address space. Since allocations in IPv6 are based on | |||
subnets rather than hosts a reasonable way to look at the pool is | subnets rather than hosts a reasonable way to look at the pool is | |||
that there are about 17*10^18 unique subnet values where sparse | that there are about 17*10^18 unique subnet values where sparse | |||
allocation practice within those provides for new opportunities such | allocation practice within those provides for new opportunities such | |||
as SEND 3971 [13]. As previously discussed, the serious | as SEND 3971 [17]. As previously discussed, the serious | |||
disadvantages of ambiguous address space have been well documented, | disadvantages of ambiguous address space have been well documented, | |||
and with sufficient space there is no need to continue the | and with sufficient space there is no need to continue the | |||
increasingly aggressive conservation practices that are necessary | increasingly aggressive conservation practices that are necessary | |||
with IPv4. While IPv6 allocation policies and ISP business practice | with IPv4. While IPv6 allocation policies and ISP business practice | |||
will continue to evolve, the recommendations in RFC 3177 are based on | will continue to evolve, the recommendations in RFC 3177 are based on | |||
the technical potential of the vast IPv6 address space. That | the technical potential of the vast IPv6 address space. That | |||
document demonstrates that there is no resource limitation which will | document demonstrates that there is no resource limitation which will | |||
require the adoption of the IPv4 workaround of ambiguous space behind | require the adoption of the IPv4 workaround of ambiguous space behind | |||
a NAT. As an example of the direct contrast, many expansion oriented | a NAT. As an example of the direct contrast, many expansion oriented | |||
IPv6 deployment scenarios result in multiple IPv6 addresses per | IPv6 deployment scenarios result in multiple IPv6 addresses per | |||
device, as opposed to the constriction of IPv4 scenarios where | device, as opposed to the constriction of IPv4 scenarios where | |||
multiple devices are forced to share a scarce global address through | multiple devices are forced to share a scarce global address through | |||
a NAT. | a NAT. | |||
4.7. Multihoming and Renumbering | 4.7 Multihoming and Renumbering | |||
IPv6 was designed to allow sites and hosts to run with several | IPv6 was designed to allow sites and hosts to run with several | |||
simultaneous CIDR allocated prefixes, and thus with several | simultaneous CIDR allocated prefixes, and thus with several | |||
simultaneous ISPs. An address selection mechanism [10] is specified | simultaneous ISPs. An address selection mechanism [13]is specified | |||
so that hosts will behave consistently when several addresses are | so that hosts will behave consistently when several addresses are | |||
simultaneously valid. The fundamental difficulty that IPv4 has in | simultaneously valid. The fundamental difficulty that IPv4 has in | |||
regard to multiple addresses therefore does not apply to IPv6. IPv6 | regard to multiple addresses therefore does not apply to IPv6. IPv6 | |||
sites can and do run today with multiple ISPs active, and the | sites can and do run today with multiple ISPs active, and the | |||
processes for adding, removing, and renumbering active prefixes at a | processes for adding, removing, and renumbering active prefixes at a | |||
site have been documented in [14] and [21]. However, multihoming and | site have been documented in [18]and [22]. However, multihoming and | |||
renumbering remain technically challenging even with IPv6 with | renumbering remain technically challenging even with IPv6 with | |||
regards to, for instance, session continuity across multihoming | regards to session continuity across multihoming events or | |||
events or interactions with ingress filtering (but see the Gap | interactions with ingress filtering (see the Gap Analysis below). | |||
Analysis below). | ||||
The IPv6 address space allocated by the ISP will be dependent upon | The IPv6 address space allocated by the ISP will be dependent upon | |||
the connecting Service provider. This will likely result in a | the connecting Service provider. This will likely result in a | |||
renumbering effort when the network changes between service | renumbering effort when the network changes between service | |||
providers. When changing ISPs or ISPs readjusting their addressing | providers. When changing ISPs or ISPs readjusting their addressing | |||
pool, DHCP-PD [11] can be used as an almost zero- touch external | pool, DHCP-PD [14]can be used as an almost zero- touch external | |||
mechanism for prefix change in conjunction with a ULA prefix for | mechanism for prefix change in conjunction with a ULA prefix for | |||
internal connection stability. With appropriate management of the | internal connection stability. With appropriate management of the | |||
lifetime values and overlap of the external prefixes, a smooth make- | lifetime values and overlap of the external prefixes, a smooth make- | |||
before-break transition is possible as existing communications will | before-break transition is possible as existing communications will | |||
continue on the old prefix as long as it remains valid, while any new | continue on the old prefix as long as it remains valid, while any new | |||
communications will use the new prefix. | communications will use the new prefix. | |||
5. Case Studies | 5 Case Studies | |||
In presenting these case studies we have chosen to consider | In presenting these case studies we have chosen to consider | |||
categories of network divided first according to their function | categories of network divided first according to their function | |||
either as carrier/ISP networks or end user (such as enterprise) | either as carrier/ISP networks or end user (such as enterprise) | |||
networks with the latter category broken down according to the number | networks with the latter category broken down according to the number | |||
of connected end hosts. For each category of networks we can use | of connected end hosts. For each category of networks we can use | |||
IPv6 Network Architecture Protection to achieve a secure and flexible | IPv6 Network Architecture Protection to achieve a secure and flexible | |||
infrastructure, which provides an enhanced network functionality in | infrastructure, which provides an enhanced network functionality in | |||
comparison with the usage of address translation. | comparison with the usage of address translation. | |||
o Medium/Large Private Networks (typically >10 connections) | o Medium/Large Private Networks (typically >10 connections) | |||
o Small Private Networks (typically 1 to 10 connections) | o Small Private Networks (typically 1 to 10 connections) | |||
o Single User Connection (typically 1 connection) | o Single User Connection (typically 1 connection) | |||
o ISP/Carrier Customer Networks | o ISP/Carrier Customer Networks | |||
5.1. Medium/large private networks | 5.1 Medium/large private networks | |||
The majority of private enterprise, academic, research, or government | The majority of private enterprise, academic, research, or government | |||
networks fall into this category. Many of these networks have one or | networks fall into this category. Many of these networks have one or | |||
more exit points to the Internet. Though these organizations have | more exit points to the Internet. Though these organizations have | |||
sufficient resources to acquire addressing independence when using | sufficient resources to acquire addressing independence when using | |||
IPv4 there are several reasons why they might choose to use NAT in | IPv4 there are several reasons why they might choose to use NAT in | |||
such a network. For the ISP there is no need to import the IPv4 | such a network. For the ISP there is no need to import the IPv4 | |||
address range from the remote end-customer, which facilitates IPv4 | address range from the remote end-customer, which facilitates IPv4 | |||
route summarization. The customer can use a larger IPv4 address | route summarization. The customer can use a larger IPv4 address | |||
range (probably with less-administrative overhead) by the use of RFC | range (probably with less-administrative overhead) by the use of RFC | |||
skipping to change at page 24, line 46 | skipping to change at page 25, line 20 | |||
access between local and external hosts to those local hosts being | access between local and external hosts to those local hosts being | |||
authorized for this capability. | authorized for this capability. | |||
The use of permanent ULA addresses on a site provides the benefit | The use of permanent ULA addresses on a site provides the benefit | |||
that even if an enterprise would change its ISP, the renumbering will | that even if an enterprise would change its ISP, the renumbering will | |||
only affect those devices that have a wish to connect beyond the | only affect those devices that have a wish to connect beyond the | |||
site. Internal servers and services would not change their allocated | site. Internal servers and services would not change their allocated | |||
IPv6 ULA address, and the service would remain available even during | IPv6 ULA address, and the service would remain available even during | |||
global address renumbering. | global address renumbering. | |||
5.2. Small Private Networks | 5.2 Small Private Networks | |||
Also known as SOHO (Small Office/Home Office) networks, this category | Also known as SOHO (Small Office/Home Office) networks, this category | |||
describes those networks which have few routers in the topology, and | describes those networks which have few routers in the topology, and | |||
usually have a single network egress point. Typically these networks | usually have a single network egress point. Typically these networks | |||
are: | are: | |||
o connected via either a dial-up connection or broadband access | o connected via either a dial-up connection or broadband access | |||
o don't have dedicated Network Operation Center (NOC) | o don't have dedicated Network Operation Center (NOC) | |||
o and through economic pressure are typically forced today to use | o and through economic pressure are typically forced today to use | |||
NAT | NAT | |||
skipping to change at page 26, line 28 | skipping to change at page 27, line 5 | |||
with IPv4 to provide RFC 1918 addresses, in this environment the ISP | with IPv4 to provide RFC 1918 addresses, in this environment the ISP | |||
will not be motivated to allocate private addresses towards the | will not be motivated to allocate private addresses towards the | |||
single user connection because there are enough global addresses | single user connection because there are enough global addresses | |||
available at essentially the same cost. Also it will be likely that | available at essentially the same cost. Also it will be likely that | |||
the single device wants to mask its identity to the called party or | the single device wants to mask its identity to the called party or | |||
its attack profile over a shorter time window than the life of the | its attack profile over a shorter time window than the life of the | |||
ISP attachment, so it will need to enable IPv6 privacy extensions | ISP attachment, so it will need to enable IPv6 privacy extensions | |||
which in turn leads to the need for a minimum allocation of a /64 | which in turn leads to the need for a minimum allocation of a /64 | |||
prefix rather than a single address. | prefix rather than a single address. | |||
5.3. Single User Connection | 5.3 Single User Connection | |||
This group identifies the users which are connected via a single IPv4 | This group identifies the users which are connected via a single IPv4 | |||
address and use a single piece of equipment (PC, PDA, etc.). This | address and use a single piece of equipment (PC, PDA, etc.). This | |||
user may get an ambiguous IPv4 address (frequently imposed by the | user may get an ambiguous IPv4 address (frequently imposed by the | |||
ISP) from the service provider which is based on RFC 1918. If | ISP) from the service provider which is based on RFC 1918. If | |||
ambiguous addressing is utilized, the service provider will execute | ambiguous addressing is utilized, the service provider will execute | |||
NAT on the allocated IPv4 address for global Internet connectivity. | NAT on the allocated IPv4 address for global Internet connectivity. | |||
This also limits the Internet capability of the equipment to being | This also limits the Internet capability of the equipment to being | |||
mainly a receiver of Internet data, and makes it quite hard for the | mainly a receiver of Internet data, and makes it quite hard for the | |||
equipment to become a world wide Internet server (i.e. HTTP, FTP, | equipment to become a world wide Internet server (i.e. HTTP, FTP, | |||
skipping to change at page 27, line 5 | skipping to change at page 27, line 30 | |||
equipment (PC, PDA, etc.). | equipment (PC, PDA, etc.). | |||
In IPv6 world the assumption is that there is unrestricted | In IPv6 world the assumption is that there is unrestricted | |||
availability of a large amount of globally routable and unique IPv6 | availability of a large amount of globally routable and unique IPv6 | |||
addresses. The ISP will not be motivated to allocate private | addresses. The ISP will not be motivated to allocate private | |||
addresses towards the single user connection because he has enough | addresses towards the single user connection because he has enough | |||
global addresses available, if scarcity was the motivation with IPv4 | global addresses available, if scarcity was the motivation with IPv4 | |||
to provide RFC 1918 addresses. If the single user wants to mask his | to provide RFC 1918 addresses. If the single user wants to mask his | |||
identity, he may choose to enable IPv6 privacy extensions. | identity, he may choose to enable IPv6 privacy extensions. | |||
5.4. ISP/Carrier Customer Networks | 5.4 ISP/Carrier Customer Networks | |||
This group refers to the actual service providers that are providing | This group refers to the actual service providers that are providing | |||
the IP access and transport services. They tend to have three | the IP access and transport services. They tend to have three | |||
separate IP domains that they support: | separate IP domains that they support: | |||
o For the first they fall into the Medium/large private networks | o For the first they fall into the Medium/large private networks | |||
category (above) for their own internal networks, LANs etc. | category (above) for their own internal networks, LANs etc. | |||
o The second is the Operations network which addresses their | o The second is the Operations network which addresses their | |||
backbone and access switches, and other hardware, this is separate | backbone and access switches, and other hardware, this is separate | |||
for both engineering reasons as well as simplicity in managing the | for both engineering reasons as well as simplicity in managing the | |||
security of the backbone. | security of the backbone. | |||
skipping to change at page 27, line 45 | skipping to change at page 28, line 21 | |||
be consistent with the DNS PTR records. As scarcity of IPv6 | be consistent with the DNS PTR records. As scarcity of IPv6 | |||
addresses is not a concern, it will be possible for the ISP to | addresses is not a concern, it will be possible for the ISP to | |||
provide global routable IPv6 prefixes without a requirement for | provide global routable IPv6 prefixes without a requirement for | |||
address translation. An ISP may for commercial reasons still decide | address translation. An ISP may for commercial reasons still decide | |||
to restrict the capabilities of the end users by other means like | to restrict the capabilities of the end users by other means like | |||
traffic and/or route filtering etc. | traffic and/or route filtering etc. | |||
If the carrier network is a mobile provider, then IPv6 is encouraged | If the carrier network is a mobile provider, then IPv6 is encouraged | |||
in comparison with the combination of IPv4+NAT for 3GPP attached | in comparison with the combination of IPv4+NAT for 3GPP attached | |||
devices. When looking in chapter 2.3 of RFC3314 'Recommendations for | devices. When looking in chapter 2.3 of RFC3314 'Recommendations for | |||
IPv6 in 3GPP Standards' [17]it is found that the IPv6 WG recommends | IPv6 in 3GPP Standards' [11]it is found that the IPv6 WG recommends | |||
that one or more /64 prefixes should be assigned to each primary PDP | that one or more /64 prefixes should be assigned to each primary PDP | |||
context. This will allow sufficient address space for a 3GPP- | context. This will allow sufficient address space for a 3GPP- | |||
attached node to allocate privacy addresses and/or route to a multi- | attached node to allocate privacy addresses and/or route to a multi- | |||
link subnet, and will discourage the use of NAT within 3GPP-attached | link subnet, and will discourage the use of NAT within 3GPP-attached | |||
devices. | devices. | |||
6. IPv6 Gap Analysis | 6 IPv6 Gap Analysis | |||
Like IPv4 and any major standards effort, IPv6 standardization work | Like IPv4 and any major standards effort, IPv6 standardization work | |||
continues as deployments are ongoing. This section discusses several | continues as deployments are ongoing. This section discusses several | |||
topics for which additional standardization, or documentation of best | topics for which additional standardization, or documentation of best | |||
practice, is required to fully realize the benefits of NAP6. None of | practice, is required to fully realize the benefits or provide | |||
these items are show-stoppers for immediate usage of NAP6 in | optimizations when deploying NAP6. From a standardization | |||
scenarios where there are no current gaps. | perspective there is no obstacle to immediate deployment of the NAP6 | |||
approach in many scenarios, though product implimentations may lag | ||||
the standardization efforts. That said, the list below identifies | ||||
additional work that should be undertaken to cover the missing | ||||
scenarios. | ||||
6.1. Simple Security | 6.1 Simple Security | |||
Firewall traversal by dynamic pinhole management requires further | Firewall traversal by dynamic pinhole management requires further | |||
study. Several partial solutions exist including ICE [23], UPNP | study. Several partial solutions exist including ICE [24], UPNP | |||
[24], as well as alternative proposals for Service Provider based | [25]. Alternative approaches are looking to define service provider | |||
control. The basic security provided by a stateful firewall will | mediated pinhole management, where things like voice call signaling | |||
require some degree of default configuration and automation to mask | could dynamically establish pinholes based on predefined | |||
the technical complexity from a consumer who merely wants a secure | authentication rules. The basic security provided by a stateful | |||
environment with working applications. There is no reason a stateful | firewall will require some degree of default configuration and | |||
IPv6 firewall product cannot be shipped with the equivalent default | automation to mask the technical complexity from a consumer who | |||
protection that is offered by today's IPv4/NAT products. | merely wants a secure environment with working applications. There | |||
is no reason a stateful IPv6 firewall product cannot be shipped with | ||||
default protection that is equal to or better than that offered by | ||||
today's IPv4/NAT products. | ||||
6.2. Subnet Topology Masking | 6.2 Subnet Topology Masking | |||
There really is no functional gap here as a centrally assigned pool | There really is no functional standards gap here as a centrally | |||
of addresses in combination with host routes in the IGP is an | assigned pool of addresses in combination with host routes in the IGP | |||
effective way to mask topology for smaller deployments. If necessary | is an effective way to mask topology for smaller deployments. If | |||
a best practice document could be developed describing the | necessary a best practice document could be developed describing the | |||
interaction between DHCP and various IGPs which would in effect | interaction between DHCP and various IGPs which would in effect | |||
define Untraceable Addresses. | define Untraceable Addresses. | |||
As an alternative for larger deployments, there is no gap in the HA | As an alternative for larger deployments, there is no gap in the HA | |||
tunneling approach when firewalls are configured to block outbound | tunneling approach when firewalls are configured to block outbound | |||
binding update messages. A border Home Agent using internal | binding update messages. A border Home Agent using internal | |||
tunneling to the logical mobile node (potentially rack mounted) can | tunneling to the logical mobile (potentially rack mounted) node can | |||
completely mask all internal topology, while avoiding the strain from | completely mask all internal topology, while avoiding the strain from | |||
a large number of host routes in the IGP. Some optimization work | a large number of host routes in the IGP. Some optimization work | |||
could be done in Mobile IP to define a policy message where a mobile | could be done in Mobile IP to define a policy message where a mobile | |||
node would learn from the Home Agent that it should not try to inform | node would learn from the Home Agent that it should not try to inform | |||
its correspondent about route optimization and thereby expose its | its correspondent about route optimization and thereby expose its | |||
real location. This optimization which reduces the load on the | real location. This optimization, which reduces the load on the | |||
firewall would result in less optimal internal traffic routing as | firewall, would result in less optimal internal traffic routing as | |||
that would also transit the HA. Trade-off's for this optimization | that would also transit the HA unless ULAs were used internally. | |||
work should be investigated in the IETF. | Trade-off's for this optimization work should be investigated in the | |||
IETF. | ||||
6.3. Minimal Traceability of Privacy Addresses | 6.3 Minimal Traceability of Privacy Addresses | |||
Privacy addresses [7] may certainly be used to limit the traceability | Privacy addresses [9]may certainly be used to limit the traceability | |||
of external traffic flows back to specific hosts, but lacking a | of external traffic flows back to specific hosts, but lacking a | |||
topology masking component above they would still reveal the subnet | topology masking component above they would still reveal the subnet | |||
address bits. For complete privacy a best practice document | address bits. For complete privacy a best practice document | |||
describing the combination of privacy addresses with topology masking | describing the combination of privacy addresses with topology masking | |||
may be required. This work remains to be done, and should be pursued | may be required. This work remains to be done, and should be pursued | |||
by the IETF. | by the IETF. | |||
6.4. Site Multihoming | 6.4 Site Multihoming | |||
This complex problem has never been completely solved for IPv4, which | This complex problem has never been completely solved for IPv4, which | |||
is exactly why NAT has been used as a partial solution. For IPv6, | is exactly why NAT has been used as a partial solution. For IPv6, | |||
after several years of work, the IETF has converged on an | after several years of work, the IETF has converged on an | |||
architectural approach intended with service restoration as initial | architectural approach intended with service restoration as initial | |||
aim [22]. When this document was drafted, the IETF was actively | aim [23]. When this document was drafted, the IETF was actively | |||
defining the details of this approach to the multihoming problem. | defining the details of this approach to the multihoming problem. | |||
The approach appears to be most suitable for small and medium sites, | The approach appears to be most suitable for small and medium sites, | |||
though it will conflict with existing firewall state procedures. At | though it will conflict with existing firewall state procedures. At | |||
this time there are also active discussions in the address registries | this time there are also active discussions in the address registries | |||
investigating the possibility of assigning provider-independent | investigating the possibility of assigning provider-independent | |||
address space. Their challenge is finding a reasonable metric for | address space. Their challenge is finding a reasonable metric for | |||
limiting the number of organizations that would qualify for a global | limiting the number of organizations that would qualify for a global | |||
routing entry. Additional work appears to be necessary to satisfy | routing entry. Additional work appears to be necessary to satisfy | |||
the entire range of requirements. | the entire range of requirements. | |||
7. IANA Considerations | 7 IANA Considerations | |||
This document requests no action by IANA | This document requests no action by IANA | |||
8. Security Considerations | 8 Security Considerations | |||
While issues which are potentially security related are discussed | While issues which are potentially security related are discussed | |||
throughout the document, the approaches herein do not introduce any | throughout the document, the approaches herein do not introduce any | |||
new security concerns. Product marketing departments have widely | new security concerns. Product marketing departments have widely | |||
sold IPv4 NAT as a security tool and suppliers have been implementing | sold IPv4 NAT as a security tool and suppliers have been implementing | |||
address translation functionality in their firewalls, though the | address translation functionality in their firewalls, though the | |||
misleading nature of those claims has been previously documented in | misleading nature of those claims has been previously documented in | |||
[2] and [4]. | [4]and [6]. | |||
This document defines IPv6 approaches which collectively achieve the | This document defines IPv6 approaches which collectively achieve the | |||
goals of the network manager without the negative impact on | goals of the network manager without the negative impact on | |||
applications or security that are inherent in a NAT approach. To the | applications or security that are inherent in a NAT approach. While | |||
degree that these techniques improve a network manager's ability to | section 6 identifies additional optimization work, to the degree that | |||
explicitly audit or control access, and thereby manage the overall | these techniques improve a network manager's ability to explicitly | |||
attack exposure of local resources, they act to improve local network | audit or control access, and thereby manage the overall attack | |||
exposure of local resources, they act to improve local network | ||||
security. | security. | |||
9. Conclusion | 9 Conclusion | |||
This document has described a number of techniques that may be | This document has described a number of techniques that may be | |||
combined on an IPv6 site to protect the integrity of its network | combined on an IPv6 site to protect the integrity of its network | |||
architecture. These techniques, known collectively as Network | architecture. These techniques, known collectively as Network | |||
Architecture Protection, retain the concept of a well defined | Architecture Protection, retain the concept of a well defined | |||
boundary between "inside" and "outside" the private network, and | boundary between "inside" and "outside" the private network, and | |||
allow firewalling, topology hiding, and privacy. However, because | allow firewalling, topology hiding, and privacy. However, because | |||
they preserve address transparency where it is needed, they achieve | they preserve address transparency where it is needed, they achieve | |||
these goals without the disadvantage of address translation. Thus, | these goals without the disadvantage of address translation. Thus, | |||
Network Architecture Protection in IPv6 can provide the benefits of | Network Architecture Protection in IPv6 can provide the benefits of | |||
IPv4 Network Address Translation without the corresponding | IPv4 Network Address Translation without the corresponding | |||
disadvantages. | disadvantages. | |||
The document has also identified a few ongoing IETF work items that | The document has also identified a few ongoing IETF work items that | |||
are needed to realize 100% of the benefits of NAP6. | are needed to realize 100% of the benefits of NAP6. | |||
10. Acknowledgements | 10 Acknowledgements | |||
Christian Huitema has contributed during the initial round table to | Christian Huitema has contributed during the initial round table to | |||
discuss the scope and goal of the document, while the European Union | discuss the scope and goal of the document, while the European Union | |||
IST 6NET project acted as a catalyst for the work documented in this | IST 6NET project acted as a catalyst for the work documented in this | |||
note. Editorial comments and contributions have been received from: | note. Editorial comments and contributions have been received from: | |||
Fred Templin, Chao Luo, Pekka Savola, Tim Chown, Jeroen Massar, | Fred Templin, Chao Luo, Pekka Savola, Tim Chown, Jeroen Massar, | |||
Salman Asadullah, Patrick Grossetete, Fred Baker, Jim Bound, Mark | Salman Asadullah, Patrick Grossetete, Fred Baker, Jim Bound, Mark | |||
Smith, Alain Durand, John Spence, Christian Huitema, Mark Smith, | Smith, Alain Durand, John Spence, Christian Huitema, Mark Smith, | |||
Elwyn Davies, Daniel Senie, Soininen Jonne, Lindqvist Erik Kurt and | Elwyn Davies, Daniel Senie, Soininen Jonne, Lindqvist Erik Kurt and | |||
other members of the v6ops WG. | other members of the v6ops WG. | |||
[1] | ||||
11. References | 11. References | |||
11.1. Normative References | 11.1. Normative References | |||
[1] Rekhter, Y., Moskowitz, R., Karrenberg, D., Groot, G., and E. | [1] Bradner, S., "IETF Rights in Contributions", BCP 78, RFC 3978, | |||
March 2005. | ||||
11.2. Informative References | ||||
[2] Fuller, V., Li, T., Yu, J., and K. Varadhan, "Classless Inter- | ||||
Domain Routing (CIDR): an Address Assignment and Aggregation | ||||
Strategy", RFC 1519, September 1993. | ||||
[3] Rekhter, Y., Moskowitz, R., Karrenberg, D., Groot, G., and E. | ||||
Lear, "Address Allocation for Private Internets", BCP 5, | Lear, "Address Allocation for Private Internets", BCP 5, | |||
RFC 1918, February 1996. | RFC 1918, February 1996. | |||
[2] Srisuresh, P. and M. Holdrege, "IP Network Address Translator | [4] Srisuresh, P. and M. Holdrege, "IP Network Address Translator | |||
(NAT) Terminology and Considerations", RFC 2663, August 1999. | (NAT) Terminology and Considerations", RFC 2663, August 1999. | |||
[3] Narten, T., Nordmark, E., and W. Simpson, "Neighbor Discovery | [5] Narten, T., Nordmark, E., and W. Simpson, "Neighbor Discovery | |||
for IP Version 6 (IPv6)", RFC 2461, December 1998. | for IP Version 6 (IPv6)", RFC 2461, December 1998. | |||
[4] Hain, T., "Architectural Implications of NAT", RFC 2993, | [6] Hain, T., "Architectural Implications of NAT", RFC 2993, | |||
November 2000. | November 2000. | |||
[5] Srisuresh, P. and K. Egevang, "Traditional IP Network Address | [7] Srisuresh, P. and K. Egevang, "Traditional IP Network Address | |||
Translator (Traditional NAT)", RFC 3022, January 2001. | Translator (Traditional NAT)", RFC 3022, January 2001. | |||
[6] Holdrege, M. and P. Srisuresh, "Protocol Complications with the | [8] Holdrege, M. and P. Srisuresh, "Protocol Complications with the | |||
IP Network Address Translator", RFC 3027, January 2001. | IP Network Address Translator", RFC 3027, January 2001. | |||
[7] Narten, T. and R. Draves, "Privacy Extensions for Stateless | [9] Narten, T. and R. Draves, "Privacy Extensions for Stateless | |||
Address Autoconfiguration in IPv6", RFC 3041, January 2001. | Address Autoconfiguration in IPv6", RFC 3041, January 2001. | |||
[8] IAB and IESG, "IAB/IESG Recommendations on IPv6 Address | [10] IAB and IESG, "IAB/IESG Recommendations on IPv6 Address | |||
Allocations to Sites", RFC 3177, September 2001. | Allocations to Sites", RFC 3177, September 2001. | |||
[9] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C., and M. | [11] Wasserman, M., "Recommendations for IPv6 in Third Generation | |||
Partnership Project (3GPP) Standards", RFC 3314, | ||||
September 2002. | ||||
[12] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C., and M. | ||||
Carney, "Dynamic Host Configuration Protocol for IPv6 | Carney, "Dynamic Host Configuration Protocol for IPv6 | |||
(DHCPv6)", RFC 3315, July 2003. | (DHCPv6)", RFC 3315, July 2003. | |||
[10] Draves, R., "Default Address Selection for Internet Protocol | [13] Draves, R., "Default Address Selection for Internet Protocol | |||
version 6 (IPv6)", RFC 3484, February 2003. | version 6 (IPv6)", RFC 3484, February 2003. | |||
[11] Troan, O. and R. Droms, "IPv6 Prefix Options for Dynamic Host | [14] Troan, O. and R. Droms, "IPv6 Prefix Options for Dynamic Host | |||
Configuration Protocol (DHCP) version 6", RFC 3633, | Configuration Protocol (DHCP) version 6", RFC 3633, | |||
December 2003. | December 2003. | |||
[12] Huttunen, A., Swander, B., Volpe, V., DiBurro, L., and M. | [15] Huttunen, A., Swander, B., Volpe, V., DiBurro, L., and M. | |||
Stenberg, "UDP Encapsulation of IPsec ESP Packets", RFC 3948, | Stenberg, "UDP Encapsulation of IPsec ESP Packets", RFC 3948, | |||
January 2005. | January 2005. | |||
[13] Arkko, J., Kempf, J., Zill, B., and P. Nikander, "SEcure | [16] Savola, P. and B. Haberman, "Embedding the Rendezvous Point | |||
(RP) Address in an IPv6 Multicast Address", RFC 3956, | ||||
November 2004. | ||||
[17] Arkko, J., Kempf, J., Zill, B., and P. Nikander, "SEcure | ||||
Neighbor Discovery (SEND)", RFC 3971, March 2005. | Neighbor Discovery (SEND)", RFC 3971, March 2005. | |||
[14] Baker, F., Lear, E., and R. Droms, "Procedures for Renumbering | [18] Baker, F., Lear, E., and R. Droms, "Procedures for Renumbering | |||
an IPv6 Network without a Flag Day", RFC 4192, September 2005. | an IPv6 Network without a Flag Day", RFC 4192, September 2005. | |||
[15] Hinden, R. and B. Haberman, "Unique Local IPv6 Unicast | [19] Hinden, R. and B. Haberman, "Unique Local IPv6 Unicast | |||
Addresses", RFC 4193, October 2005. | Addresses", RFC 4193, October 2005. | |||
11.2. Informative References | [20] Dupont, F. and P. Savola, "RFC 3041 Considered Harmful | |||
[16] Fuller, V., Li, T., Yu, J., and K. Varadhan, "Classless Inter- | ||||
Domain Routing (CIDR): an Address Assignment and Aggregation | ||||
Strategy", RFC 1519, September 1993. | ||||
[17] Wasserman, M., "Recommendations for IPv6 in Third Generation | ||||
Partnership Project (3GPP) Standards", RFC 3314, | ||||
September 2002. | ||||
[18] Savola, P. and B. Haberman, "Embedding the Rendezvous Point | ||||
(RP) Address in an IPv6 Multicast Address", RFC 3956, | ||||
November 2004. | ||||
[19] Dupont, F. and P. Savola, "RFC 3041 Considered Harmful | ||||
(draft-dupont-ipv6-rfc3041harmful-05.txt)", June 2004. | (draft-dupont-ipv6-rfc3041harmful-05.txt)", June 2004. | |||
[20] Chown, T., "IPv6 Implications for TCP/UDP Port Scanning (chown- | [21] Chown, T., "IPv6 Implications for TCP/UDP Port Scanning (chown- | |||
v6ops-port-scanning-implications-01.txt)", July 2004. | v6ops-port-scanning-implications-01.txt)", July 2004. | |||
[21] Chown, T., Tompson, M., Ford, A., and S. Venaas, "Things to | [22] Chown, T., Tompson, M., Ford, A., and S. Venaas, "Things to | |||
think about when Renumbering an IPv6 network | think about when Renumbering an IPv6 network | |||
(draft-chown-v6ops-renumber-thinkabout-03)", October 2004. | (draft-chown-v6ops-renumber-thinkabout-03)", October 2004. | |||
[22] Huston, G., "Architectural Commentary on Site Multi-homing | [23] Huston, G., "Architectural Commentary on Site Multi-homing | |||
using a Level 3 Shim (draft-ietf-shim6-arch-00.txt)", | using a Level 3 Shim (draft-ietf-shim6-arch-00.txt)", | |||
July 2004. | July 2004. | |||
[23] Rosenberg, J., "Interactive Connectivity Establishment (ICE): A | [24] Rosenberg, J., "Interactive Connectivity Establishment (ICE): A | |||
Methodology for Network Address Translator (NAT) Traversal for | Methodology for Network Address Translator (NAT) Traversal for | |||
Offer/Answer Protocols (draft-ietf-mmusic-ice-11)", | Offer/Answer Protocols (draft-ietf-mmusic-ice-11)", | |||
October 2006. | October 2006. | |||
[24] "UPNP Web Site, "Universal Plug and Play Web Site", Web Site | [25] "UPNP Web Site, "Universal Plug and Play Web Site", Web Site | |||
http://www.upnp.org/", July 2005. | http://www.upnp.org/", July 2005. | |||
Appendix A. Additional Benefits due to Native IPv6 and Universal Unique | Appendix A Additional Benefits due to Native IPv6 and Universal Unique | |||
Addressing | Addressing | |||
The users of native IPv6 technology and global unique IPv6 addresses | The users of native IPv6 technology and global unique IPv6 addresses | |||
have the potential to make use of the enhanced IPv6 capabilities, in | have the potential to make use of the enhanced IPv6 capabilities, in | |||
addition to the benefits offered by the IPv4 technology. | addition to the benefits offered by the IPv4 technology. | |||
A.1. Universal Any-to-Any Connectivity | A.1 Universal Any-to-Any Connectivity | |||
One of the original design points of the Internet was any-to-any | One of the original design points of the Internet was any-to-any | |||
connectivity. The dramatic growth of Internet connected systems | connectivity. The dramatic growth of Internet connected systems | |||
coupled with the limited address space of the IPv4 protocol spawned | coupled with the limited address space of the IPv4 protocol spawned | |||
address conservation techniques. NAT was introduced as a tool to | address conservation techniques. NAT was introduced as a tool to | |||
reduce demand on the limited IPv4 address pool, but the side effect | reduce demand on the limited IPv4 address pool, but the side effect | |||
of the NAT technology was to remove the any-to-any connectivity | of the NAT technology was to remove the any-to-any connectivity | |||
capability. By removing the need for address conservation (and | capability. By removing the need for address conservation (and | |||
therefore NAT), IPv6 returns the any-to-any connectivity model and | therefore NAT), IPv6 returns the any-to-any connectivity model and | |||
removes the limitations on application developers. With the freedom | removes the limitations on application developers. With the freedom | |||
skipping to change at page 33, line 11 | skipping to change at page 34, line 5 | |||
applications, IPv6 embedded IPsec communication between two | applications, IPv6 embedded IPsec communication between two | |||
communicating devices, instant messaging, Internet telephony, etc..) | communicating devices, instant messaging, Internet telephony, etc..) | |||
rather than focusing on discovering and traversing the increasingly | rather than focusing on discovering and traversing the increasingly | |||
complex NAT environment. | complex NAT environment. | |||
It will also allow application and service developers to rethink the | It will also allow application and service developers to rethink the | |||
security model involved with any-to-any connectivity, as the current | security model involved with any-to-any connectivity, as the current | |||
edge firewall solution in IPv4 may not be sufficient for any- to-any | edge firewall solution in IPv4 may not be sufficient for any- to-any | |||
service models. | service models. | |||
A.2. Auto-configuration | A.2 Auto-configuration | |||
IPv6 offers a scalable approach to minimizing human interaction and | IPv6 offers a scalable approach to minimizing human interaction and | |||
device configuration. Whereas IPv4 implementations require touching | device configuration. Whereas IPv4 implementations require touching | |||
each end system to indicate the use of DHCP vs. a static address and | each end system to indicate the use of DHCP vs. a static address and | |||
management of a server with the pool size large enough for the | management of a server with the pool size large enough for the | |||
potential number of connected devices, IPv6 uses an indication from | potential number of connected devices, IPv6 uses an indication from | |||
the router to instruct the end systems to use DHCP or the stateless | the router to instruct the end systems to use DHCP or the stateless | |||
auto configuration approach supporting a virtually limitless number | auto configuration approach supporting a virtually limitless number | |||
of devices on the subnet. This minimizes the number of systems that | of devices on the subnet. This minimizes the number of systems that | |||
require human interaction as well as improves consistency between all | require human interaction as well as improves consistency between all | |||
the systems on a subnet. In the case that there is no router to | the systems on a subnet. In the case that there is no router to | |||
provide this indication, an address for use only on the local link | provide this indication, an address for use only on the local link | |||
will be derived from the interface media layer address. | will be derived from the interface media layer address. | |||
A.3. Native Multicast Services | A.3 Native Multicast Services | |||
Multicast services in IPv4 were severely restricted by the limited | Multicast services in IPv4 were severely restricted by the limited | |||
address space available to use for group assignments and an implicit | address space available to use for group assignments and an implicit | |||
locally defined range for group membership. IPv6 multicast corrects | locally defined range for group membership. IPv6 multicast corrects | |||
this situation by embedding explicit scope indications as well as | this situation by embedding explicit scope indications as well as | |||
expanding to 4 billion groups per scope. In the source specific | expanding to 4 billion groups per scope. In the source specific | |||
multicast case, this is further expanded to 4 billion groups per | multicast case, this is further expanded to 4 billion groups per | |||
scope per subnet by embedding the 64 bits of subnet identifier into | scope per subnet by embedding the 64 bits of subnet identifier into | |||
the multicast address. | the multicast address. | |||
IPv6 allows also for innovative usage of the IPv6 address length, and | IPv6 allows also for innovative usage of the IPv6 address length, and | |||
makes it possible to embed the multicast 'Rendezvous Point' (or RP) | makes it possible to embed the multicast 'Rendezvous Point' (or RP) | |||
[18] directly in the IPv6 multicast address when using ASM multicast. | [16]directly in the IPv6 multicast address when using ASM multicast. | |||
This is not possible with limited size of the IPv4 address. This | This is not possible with limited size of the IPv4 address. This | |||
approach also simplifies the multicast model considerably, making it | approach also simplifies the multicast model considerably, making it | |||
easier to understand and deploy. | easier to understand and deploy. | |||
A.4. Increased Security Protection | A.4 Increased Security Protection | |||
The security protection offered by native IPv6 technology is more | The security protection offered by native IPv6 technology is more | |||
advanced than IPv4 technology. There are various transport | advanced than IPv4 technology. There are various transport | |||
mechanisms enhanced to allow a network to operate more securely with | mechanisms enhanced to allow a network to operate more securely with | |||
less performance impact: | less performance impact: | |||
o IPv6 has the IPsec technology directly embedded into the IPv6 | o IPv6 has the IPsec technology directly embedded into the IPv6 | |||
protocol. This allows for simpler peer-to-peer authentication and | protocol. This allows for simpler peer-to-peer authentication and | |||
encryption, once a simple key/trust management model is developed, | encryption, once a simple key/trust management model is developed, | |||
while the usage of some other less secure mechanisms is avoided | while the usage of some other less secure mechanisms is avoided | |||
(i.e. md5 password hash for neighbor authentication). | (i.e. md5 password hash for neighbor authentication). | |||
o On a local network, any user will have more security awareness. | o While a firewall is specifically designed to disallow applicaions | |||
This awareness will motivate the usage of simple firewall | based on local policy, they do not interfere with those that are | |||
applications/devices to be inserted on the border between the | allowed. This is a security improvement over NAT, where the work- | |||
external network and the local (or home network) as there is no | arounds to enable applications allowed by local policy are | |||
Address Translator and hence no false safety perception. | effectively architected man-in-the-middle attacks on the packets | |||
which precludes end-to-end auditing or IP level identification. | ||||
o All flows on the Internet will be better traceable due to a unique | o All flows on the Internet will be better traceable due to a unique | |||
and globally routable source and destination IPv6 address. This | and globally routable source and destination IPv6 address. This | |||
may facilitate an easier methodology for back-tracing DoS attacks | may facilitate an easier methodology for back-tracing DoS attacks | |||
and avoid illegal access to network resources by simpler traffic | and avoid illegal access to network resources by simpler traffic | |||
filtering. | filtering. | |||
o The usage of private address-space in IPv6 is now provided by | o The usage of private address-space in IPv6 is now provided by | |||
Unique Local Addresses, which will avoid conflict situations when | Unique Local Addresses, which will avoid conflict situations when | |||
merging networks and securing the internal communication on a | merging networks and securing the internal communication on a | |||
local network infrastructure due to simpler traffic filtering | local network infrastructure due to simpler traffic filtering | |||
policy. | policy. | |||
o The technology to enable source-routing on a network | o The technology to enable source-routing on a network | |||
infrastructure has been enhanced to allow this feature to | infrastructure has been enhanced to allow this feature to | |||
function, without impacting the processing power of intermediate | function, without impacting the processing power of intermediate | |||
network devices. The only devices impacted with the source- | network devices. The only devices impacted with the source- | |||
routing will be the source and destination node and the | routing will be the source and destination node and the | |||
intermediate source-routed nodes. This impact behavior is | intermediate source-routed nodes. This impact behavior is | |||
different if IPv4 is used, because then all intermediate devices | different if IPv4 is used, because then all intermediate devices | |||
would have had to look into the source- route header. | would have had to look into the source- route header. | |||
A.5. Mobility | A.5 Mobility | |||
Anytime, anywhere, universal access requires MIPv6 services in | Anytime, anywhere, universal access requires MIPv6 services in | |||
support of mobile nodes. While a Home Agent is required for initial | support of mobile nodes. While a Home Agent is required for initial | |||
connection establishment in either protocol version, IPv6 mobile | connection establishment in either protocol version, IPv6 mobile | |||
nodes are able to optimize the path between them using the MIPv6 | nodes are able to optimize the path between them using the MIPv6 | |||
option header while IPv4 mobile nodes are required to triangle route | option header while IPv4 mobile nodes are required to triangle route | |||
all packets. In general terms this will minimize the network | all packets. In general terms this will minimize the network | |||
resources used and maximize the quality of the communication. | resources used and maximize the quality of the communication. | |||
A.6. Merging Networks | A.6 Merging Networks | |||
When two IPv4 networks want to merge it is not guaranteed that both | When two IPv4 networks want to merge it is not guaranteed that both | |||
networks would be using different address-ranges on some parts of the | networks would be using different address-ranges on some parts of the | |||
network infrastructure due to the usage of RFC 1918 private | network infrastructure due to the usage of RFC 1918 private | |||
addressing. This potential overlap in address space may complicate a | addressing. This potential overlap in address space may complicate a | |||
merge of two and more networks dramatically due to the additional | merge of two and more networks dramatically due to the additional | |||
IPv4 renumbering effort. i.e. when the first network has a service | IPv4 renumbering effort. i.e. when the first network has a service | |||
running (NTP, DNS, DHCP, HTTP, etc..) which need to be accessed by | running (NTP, DNS, DHCP, HTTP, etc..) which need to be accessed by | |||
the 2nd merging network. Similar address conflicts can happen when | the 2nd merging network. Similar address conflicts can happen when | |||
two network devices from these merging networks want to communicate. | two network devices from these merging networks want to communicate. | |||
With the usage of IPv6 the addressing overlap will not exist because | With the usage of IPv6 the addressing overlap will not exist because | |||
of the existence of the Unique Local Address usage for private and | of the existence of the Unique Local Address usage for private and | |||
local addressing. | local addressing. | |||
Appendix B. Revision history | Appendix B Revision history | |||
B.1. Changes from *-vandevelde-v6ops-nap-00 to | B.1 Changes from *-vandevelde-v6ops-nap-00 to *-vandevelde-v6ops-nap-01 | |||
*-vandevelde-v6ops-nap-01 | ||||
o Document introduction has been revised and overview table added | o Document introduction has been revised and overview table added | |||
o Comments and suggestions from nap-00 draft have been included. | o Comments and suggestions from nap-00 draft have been included. | |||
o Initial section of -00 draft 2.6 and 4.6 have been aggregated into | o Initial section of -00 draft 2.6 and 4.6 have been aggregated into | |||
a new case study section 5. | a new case study section 5. | |||
o The list of additional IPv6 benefits has been placed into | o The list of additional IPv6 benefits has been placed into | |||
appendix. | appendix. | |||
o new security considerations section added. | o new security considerations section added. | |||
o GAP analysis revised. | o GAP analysis revised. | |||
o Section 2.6 and 4.6 have been included. | o Section 2.6 and 4.6 have been included. | |||
B.2. Changes from *-vandevelde-v6ops-nap-01 to *-ietf-v6ops-nap-00 | B.2 Changes from *-vandevelde-v6ops-nap-01 to *-ietf-v6ops-nap-00 | |||
o Change of Draft name from *-vandevelde-v6ops-nap-01.txt to *- | o Change of Draft name from *-vandevelde-v6ops-nap-01.txt to *- | |||
ietf-v6ops-nap-00.txt. | ietf-v6ops-nap-00.txt. | |||
o Editorial changes. | o Editorial changes. | |||
B.3. Changes from *-ietf-v6ops-nap-00 to *-ietf-v6ops-nap-01 | B.3 Changes from *-ietf-v6ops-nap-00 to *-ietf-v6ops-nap-01 | |||
o Added text in Chapter 2.2 and 4.2 to address more details on | o Added text in Chapter 2.2 and 4.2 to address more details on | |||
firewall and proxy | firewall and proxy | |||
o Revised Eric Klein contact details | o Revised Eric Klein contact details | |||
o Added note in 4.2 that control over the proposed statefull-filter | o Added note in 4.2 that control over the proposed statefull-filter | |||
should be by a simple user-interface | should be by a simple user-interface | |||
B.4. Changes from *-ietf-v6ops-nap-01 to *-ietf-v6ops-nap-02 | B.4 Changes from *-ietf-v6ops-nap-01 to *-ietf-v6ops-nap-02 | |||
o General Note: Header more consistent capitalized. | o General Note: Header more consistent capitalized. | |||
o Section 1: para 3: s/...and privacy and will... translation./ | o Section 1: para 3: s/...and privacy and will... translation./ | |||
...and privacy. NAP will achieve these security goals without | ...and privacy. NAP will achieve these security goals without | |||
address translation whilst maintaining any-to-any connectivity./ | address translation whilst maintaining any-to-any connectivity./ | |||
o Section 1: Various editorial changes happened | o Section 1: Various editorial changes happened | |||
o Section 2.1: Changed: 'Frequently a simple user interface is | o Section 2.1: Changed: 'Frequently a simple user interface is | |||
sufficient for configuring'. into 'Frequently a simple user | sufficient for configuring'. into 'Frequently a simple user | |||
interface, or no user interface is sufficient' | interface, or no user interface is sufficient' | |||
o Section 2.2: (Simple Security ) Better not to use the word -evil- | o Section 2.2: (Simple Security ) Better not to use the word -evil- | |||
in the text | in the text | |||
skipping to change at page 39, line 35 | skipping to change at page 40, line 31 | |||
ULA specification is in the RFC-editor queue. | ULA specification is in the RFC-editor queue. | |||
o Section 6.3: (Minimal Traceability) Better to say "topology | o Section 6.3: (Minimal Traceability) Better to say "topology | |||
masking _may be_ required" instead of "is required", because | masking _may be_ required" instead of "is required", because | |||
whether this is needed or not is a value judgment. | whether this is needed or not is a value judgment. | |||
o Section 6.4: (Renumbering Procedure) Renumbering procedure is in | o Section 6.4: (Renumbering Procedure) Renumbering procedure is in | |||
RFC queue. The section corrected in the current state? | RFC queue. The section corrected in the current state? | |||
o Section 6.4: s/well solved/completely solved/ | o Section 6.4: s/well solved/completely solved/ | |||
o In general the whole chapter 6 has been revised to reflect current | o In general the whole chapter 6 has been revised to reflect current | |||
status | status | |||
B.5. Changes from *-ietf-v6ops-nap-02 to *-ietf-v6ops-nap-03 | B.5 Changes from *-ietf-v6ops-nap-02 to *-ietf-v6ops-nap-03 | |||
o Editorial changes in response to IESG review comments and | o Editorial changes in response to IESG review comments and | |||
questions. | questions. | |||
o Introduction: clarified impact & goal for limited additional NAT | o Introduction: clarified impact & goal for limited additional NAT | |||
discussion here / modified tone wrt marketing / grammar cleanup | discussion here / modified tone wrt marketing / grammar cleanup | |||
o Introduction: s/market acceptance/deployment | o Introduction: s/market acceptance/deployment | |||
o Introduction: noted that users do not evaluate technical trade- | o Introduction: noted that users do not evaluate technical trade- | |||
offs and that marketing does not mention the downside of address | offs and that marketing does not mention the downside of address | |||
translation | translation | |||
o Introduction: added paragraph about why nat != security | o Introduction: added paragraph about why nat != security | |||
o Table1: s/benefit/Goal/ s/ULA/4193/ removed long numeric string / | o Table1: s/benefit/Goal/ s/ULA/4193/ removed long numeric string / | |||
skipping to change at page 41, line 35 | skipping to change at page 42, line 34 | |||
o Section 6.2: (topology mask) added comment about deployment scale | o Section 6.2: (topology mask) added comment about deployment scale | |||
/ added comment about firewall blocking BU / clarified point about | / added comment about firewall blocking BU / clarified point about | |||
future work being an optimization to reduce firewall load | future work being an optimization to reduce firewall load | |||
o Section 6.3: (tracability) grammar cleanup | o Section 6.3: (tracability) grammar cleanup | |||
o Section 6.4: (renumbering) Cut section since it is no longer a gap | o Section 6.4: (renumbering) Cut section since it is no longer a gap | |||
o Section A.2: word order - moved 'only' | o Section A.2: word order - moved 'only' | |||
o Section A.6: deleted 'legitimate' | o Section A.6: deleted 'legitimate' | |||
o Section A.7: clarified how NAP delivers community of interest | o Section A.7: clarified how NAP delivers community of interest | |||
o Spell check | o Spell check | |||
B.6. Changes from *-ietf-v6ops-nap-03 to *-ietf-v6ops-nap-04 | B.6 Changes from *-ietf-v6ops-nap-03 to *-ietf-v6ops-nap-04 | |||
o Editorial changes in response to IESG review comments and | o Editorial changes in response to IESG review comments and | |||
questions, as well as I-D nits. | questions, as well as I-D nits. | |||
o Changed the abreviation to NAP6 and the title from 'IPv6 Network | o Changed the abreviation to NAP6 and the title from 'IPv6 Network | |||
Address Protection' to 'Network Architecture Protection for IPv6' | Address Protection' to 'Network Architecture Protection for IPv6' | |||
o Introduction s/in/with | o Introduction s/in/with | |||
o Introduction s/Indeed, product marketing departments have | o Introduction s/Indeed, product marketing departments have | |||
effectively driven a perception that some connectivity/ Indeed, it | effectively driven a perception that some connectivity/ Indeed, it | |||
is often claimed that some connectivity and .../ | is often claimed that some connectivity and .../ | |||
o Section 2.1 s/[RFC 1918]/xref... | o Section 2.1 s/[RFC 1918]/xref... | |||
o Section 2.5 s/[RFC1918]/xref... | o Section 2.5 s/[RFC1918]/xref... | |||
skipping to change at page 43, line 5 | skipping to change at page 43, line 47 | |||
o Section 4.4 added comment about how a topology hidden node learns | o Section 4.4 added comment about how a topology hidden node learns | |||
its home address | its home address | |||
o Section 4.7 Rephrased section based on J. Arkko suggestion | o Section 4.7 Rephrased section based on J. Arkko suggestion | |||
o Section 6. s/roles/scenarios/ | o Section 6. s/roles/scenarios/ | |||
o Section 6.1 rewritten section | o Section 6.1 rewritten section | |||
o Section 6.4 s/with firewall/with existing firewall | o Section 6.4 s/with firewall/with existing firewall | |||
o Section 8. removed last line of section | o Section 8. removed last line of section | |||
o Section A.7 Removed section to address suggestion from Cullen J. | o Section A.7 Removed section to address suggestion from Cullen J. | |||
o Author details: modified Brian Carpenter's address details | o Author details: modified Brian Carpenter's address details | |||
B.7 Changes from *-ietf-v6ops-nap-04 to *-ietf-v6ops-nap-05 | ||||
o Editorial changes in response to IESG review comments and | ||||
questions, as well as I-D nits. | ||||
o Abstract s/does not support NAT by design/was designed with the | ||||
intention of making NAT unnecessary | ||||
o Introduction s/people/network administrators | ||||
o Introduction s/preferred task/needs | ||||
o Introduction s/goals for utilizing/uses of | ||||
o Introduction added or a manual on how to configure a network | ||||
o Introduction reworded discussion about security policy goals | ||||
o Introduction s/need/expiration of state | ||||
o Introduction s/the need/The ability for nodes | ||||
o Introduction s/allow/while allowing | ||||
o Introduction s/"benefits"/benefits | ||||
o Introduction s/a complete/an optimal | ||||
o Section 2.1 s/be available/also be deployed | ||||
o Section 2.2 added comment about one-size-fits-all answer | ||||
o Section 2.2 added discussion about better-than-nothing protection | ||||
o Section 2.4 changed context from 'a user' to 'a system' | ||||
o Section 2.5 s/take benefit from using/make use of | ||||
o Section 2.5 reordered wording about 'Another benefit...' | ||||
o Section 3.2 reordered wording of bullet 3 | ||||
o Section 4.1 moved 3484 policy table discussion earlier in the | ||||
paragraph | ||||
o Section 4.2 moved qualifier from IPv4 host to IPv6 host | ||||
o Section 4.2 clarification wording changes in bullet 2 | ||||
o Section 4.2 added reference to bullet 3 | ||||
o Section 4.2 s/example, a DSL/example a DSL or Cable Modem | ||||
o Section 4.2 moved discussion about SP dynamic pinhole management | ||||
to 6.1 | ||||
o Section 4.4 moved 3041 reference earlier in section | ||||
o Section 4.4 added sentence explaining figure and moved figure | ||||
ahead of bulleted list | ||||
o Section 4.7 s/to, for instance,/to | ||||
o Section 6 clarification that the gaps apply to standards efforts | ||||
and products may lag | ||||
o Section 6.1 inserted discussion about SP dynamic pinhole | ||||
management from 4.2 | ||||
o Section 6.2 s/no functional gap/no functional standards gap | ||||
o Section 6.2 s/HA./HA unless ULAs were used internally. | ||||
o Section 8 s/To/While section 6 identifies additional optimization | ||||
work, to | ||||
o Section 11 made all references informative, added BCP 78 as | ||||
normative | ||||
o Appendix A4 reworded bullet 2 | ||||
o | ||||
Authors' Addresses | Authors' Addresses | |||
Gunter Van de Velde | Gunter Van de Velde | |||
Cisco Systems | Cisco Systems | |||
De Kleetlaan 6a | De Kleetlaan 6a | |||
Diegem 1831 | Diegem 1831 | |||
Belgium | Belgium | |||
Phone: +32 2704 5473 | Phone: +32 2704 5473 | |||
Email: gunter@cisco.com | Email: gunter@cisco.com | |||
End of changes. 144 change blocks. | ||||
419 lines changed or deleted | 501 lines changed or added | |||
This html diff was produced by rfcdiff 1.33. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |