Files
bind9/doc/draft/draft-ietf-ngtrans-dns-ops-req-03.txt
Brian Wellington 23924b681e updates
2001-12-10 04:49:32 +00:00

481 lines
17 KiB
Plaintext

Internet Engineering Task Force Alain Durand
INTERNET-DRAFT SUN Microsystems
November 20, 2001 Johan Ihren
Expires May 21, 2002 Autonomica AB
NGtrans IPv6 DNS operational requirements and roadmap
draft-ietf-ngtrans-dns-ops-req-03.txt
Status of this memo
This memo provides information to the Internet community. It does
not specify an Internet standard of any kind. This memo is in full
conformance with all provisions of Section 10 of RFC2026 [RFC2026].
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
Abstract
This document describes IPv6 DNS operational requirements and
deployment roadmap steps. It is the result of discussion from members
of the IPv6, NGtrans, DNSop and DNSext working groups. The DNS is
looked as a critical part of the Internet infrastructure and is used
for much more purposes than name to address resolution. Thus a
smooth operation of the DNS is critical in the IPv6 transition.
Discussion of this memo should happen in the NGtrans mailing list.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].
1. DNS issues in a mixed IPv4/IPv6 environment
IPv4 and IPv6 are two versions of the same original concept, but they
are not "binary compatible". That is, a datagram send by one version
of IP cannot be received by the other. Several things can go wrong
when operating DNS in a mixed environment IPv4 and IPv6.
1.1 Following the referral chain
The caching resolver that tries to lookup a name starts out at the
root, and follows referrals until it is referred to a nameserver that
is authoritative for the name. If somewhere down the chain of
referrals it is referred to a nameserver that is only accessible over
a type of transport that is unavailable, a traditional nameserver is
unable to finish the task.
When the Internet moves from IPv4 to a mixture of IPv4 and IPv6 it is
only a matter of time until this starts to happen and the complete
DNS hierarchy starts to fragment into a graph where authoritative
nameservers for certain nodes are only accessible over a certain
transport. What is feared is that a node using only a particular
version of IP, querying information about another node using the same
version of IP can not do it because, somewhere in the chain of
servers accessed during the resolution process, one or more of them
will only be accessible with the other version of IP.
1.2 Examples of problems for an IPv6 only resolver
This problem shows for IPv6 only resolver trying to fetch data from a
zone that is served by IPv6 servers when somewhere in the referral
chain, the list of name servers pointed at does not contain any IPv6
reachable server.
Hints for the root:
X.ROOT-SERVERS.NET IN A 100.100.100.101
X.ROOT-SERVERS.NET IN AAAA 3ffe:ffff:100:100::1
In the root zone:
org. IN NS dot-org.X.ROOT-SERVERS.NET
dot-org.X.ROOT-SERVERS.NET IN A 100.100.100.102
In the .org zone:
foobar.org. IN NS ns.foobar.org
ns.foobar.org IN A 200.200.200.201
ns.foobar.org IN AAAA 3ffe:ffff:200:200::201
In the foobar.org zone:
www.foorbar.org IN AAAA 3ffe:ffff:200:200::202
Although the zone foobar.org and the root are served by an IPv6
server, an IPv6 only resolver can not resolve www.foobar.org because
there is no IPv6 server for the parent zone .org.
1.3 Examples of problems for an IPv4 only resolver
Another instance of the problem shows for an IPv4 only MTA trying to
send mail to someone in an IPv6 only domain which has made provision
to have an IPv4 reachable MX.
In the .org zone:
foobar.org. IN NS ns.foobar.org
ns.foobar.org IN AAAA 3ffe:ffff:200:200::201
3rd_party_dualstack_mail.org. IN NS ns.3rd_party_dualstack.org.
ns.3rd_party_dualstack.org. IN A 100.100.100.103
in the foobar.org zone:
foobar.org IN MX 10 mail6.foobar.org.
foobar.org IN MX 20 mail4.3rd_party_dualstack.org.
mail6.foobar.org. IN AAAA 3ffe:ffff:200:200::202
in the 3rd_party_dualstack_mail.org zone:
mail4.3rd_party_dualstack.org. IN A 100.100.100.104
An IPv4 only host cannot get the information about the IPv4 MX relay
mail4.3rd_party_dualstack_mail.org because the foobar.org zone is not
served by an IPv4 DNS server.
2. Fundamental requirements
2.1 Uniqueness of the DNS root
[RFC2826] requires the existence of a globally unique public name
space derived from a unique root. This root is valid for both IPv4
and IPv6.
--------------------------------------------------------------------
Requirement 1:
The public DNS has a unique root valid for IPv4 & IPv6.
--------------------------------------------------------------------
2.2 DNS should be an IP version agnostic application
Although DNS is regarded as a key component of the Internet
infrastructure, it is an application at layer 7 of OSI model and
should be independent from particular protocol choice at the network
layer. Some record type, like CNAME or MX are clearly IP version
agnostic. Even data like A, AAAA or PTR records contained in the DNS
may be relevant to particular applications requesting then regardless
of the IP version used during the queries. Also, [RFC2826] states, "A
DNS name can be passed from one party to another without altering the
semantic intent of the name." So, this is not because a particular
host can only communicate with a certain version of IP that it should
be prevented to query information regarding the over version of IP.
Another way of saying this is to say that the DNS data are
independent of the particular version of IP used to carry them.
--------------------------------------------------------------------
Requirement 2:
Any node SHOULD be able to query any data from the DNS regardless of
the IP versions used for the transport of the queries and responses
issued by the various parties in place.
--------------------------------------------------------------------
2.3 Transition is a long journey
It is usually believed that transition can happen simultaneously following
two main scenarios.
- Incremental deployment on existing network.
This needs to be done without disturbing IPv4 service. This
strategy relies heavily on dual-stack nodes and tunnels. It is
foreseen that this scenario is likely to happen in corporate
networks.
- Large scale deployment of new infrastructure
This scenario envision large to very large networks where public
IPv4 address space is not available and private address is not
practical. Nodes in this scenario will very likely be IPv6-only
or IPv6-mostly (getting an IPv4 address only on demand). Note
that those networks will still need to communicate with the rest
of the Internet.
Given the two above scenarios, the requirements discussed in this
memo are not targeted at transitioning the DNS from IPv4 only to IPv6
only, but more at the transition of IPv4 only to a mixed environment,
where some systems will be IPv4 only, some will be IPv6 only and
others will be dual-stacked.
It is generally admitted that, the burden of transition should be
placed on the new IPv6 systems and their local IPv6 infrastructure.
Ad-hoc administrative practices such as a local dual stack resolver
or locally Local dual stack resolver or locally administered NAT-PT
translator [RFC2766] could enable networks where some dual stacks
node are available to query IPv4 only DNS servers. (Note that NAT-PT
would have to be modified for that purpose as it translate AAAA
queries into A queries.) Administrative practices requiring any zone
served by IPv6 only servers to be also served by IPv4 servers would
enable IPv4 only resolvers to perform DNS queries for those zones.
However, the requirements described here are looking at solving the
long term problem. Although dual stack networks will be common in the
early days of transition, IPv6 only networks would eventually be a
reality and solutions describe above would not be practical.
--------------------------------------------------------------------
Requirement 3:
A global bridging system IS REQUIRED to enable networks operating
with only one version of IP to query zones of the public DNS that are
only served by systems operating only with the over version of IP.
--------------------------------------------------------------------
The choice and the details of this bridging system are beyond the
scope of this document and should be discussed in the DNSop and
DNSext working groups. It can be the case that a general purpose,
ubiquitous translator will be the right thing or that a DNS specific
solution must be developed. If new pieces of protocols are needed in
the resolvers, due to the extraordinary amount of time it takes to
define then, implement them, test them, ship them into existing
products and get them deployed, works should start as soon as
possible.
3. Bridging system requirements
Even though bridging has to work both ways, it is not strictly
necessary to use the same technique in each direction. That is, it is
perfectly acceptable to build two different mechanisms, one to enable
IPv4 only hosts to query IPv6 only DNS servers and one for IPv6 only
hosts to query IPv4 only DNS servers. It is also possible that part
of the bridging system consists of a set of administrative procedures
required to operate DNS zones.
3.1 IPv4 contraints
Due to the very large IPv4 deployment phase, any solution that will
require any change either on binaries or configurations on every IPv4
resolvers is out of scope.
3.2 Scaling the bridging system
The bridging system that enable a resolver to query data from a
server which use a different IP version will have to be in place for
a long time. It will be a key part of the general IPv6 transition and
will heavily be used.
--------------------------------------------------------------------
Requirement 4:
The bridging system SHOULD have good scaling properties.
--------------------------------------------------------------------
3.3 Scaling even more the bridging system
Auto configuration is the tendency for end systems. Resolver SHOULD
have a way to discover the bridging system components. This
discovery mechanism SHOULD also have good scaling properties.
--------------------------------------------------------------------
Requirement 5:
The discovery mechanism of the bridging system SHOULD have good
scaling properties.
--------------------------------------------------------------------
3.3 Scope of the bridging system
The bridging systems SHOULD be able to bridge any zones. In
particular, until there is an IPv6 root name server, the bridging
systems SHOULD be able to bridge the IPv4 root.
--------------------------------------------------------------------
Requirement 6:
All zones (even the root) SHOULD be reachable via the bridging
system.
--------------------------------------------------------------------
3.4 Security matters
Being a critical piece of the Internet infrastructure, the DNS is a
potential value target and thus should be protected. Great care
should be used not to introduce new security issues while designing
the bridging system.
--------------------------------------------------------------------
Requirement 7:
The bridging system SHOULD NOT introduce new security hazards.
--------------------------------------------------------------------
3.5 bridging from IPv4
Although the details of the bridging systems are beyond the scope of
this document, it may be the case that there is no general solution
to allow an unmodified IPv4 resolver to query an IPv6 only name
server. In that would be the case, the IPv4 to IPv6 bridging system
could consist of an operational procedure:
--------------------------------------------------------------------
Possible operational procedure to bridge from IPv4 to IPv6:
Any zone SHOULD be served by at least one IPv4 DNS server.
--------------------------------------------------------------------
4. Roadmap for DNS service in a mixed environment IPv4/IPv6
4.1 Bridging system
A bridging system satisfying all the above requirements SHOULD be in
place as early as possible to allow large scale IPv6 only DNS
deployment.
--------------------------------------------------------------------
Roadmap step 1:
A robust, scalable bridging system should be defined, agreed and put
in place as soon as possible.
--------------------------------------------------------------------
4.2 Root name service accessible via IPv6
The first DNS query a caching resolver will send is directed to a
root name server. This, if the configuration of the bridging system
is derived automatically from the DNS itself, there is a strong
requirement to make root name service available over IPv6 transport.
If the configuration is derived any other way or is done manually,
there is a possibility to operate the system without an IPv6
accessible root in certain cases. However, as this document does not
want to preclude any particular implementation of the bridging system
at this point, it is highly recommended that some IPv6 enable root
name server be in place as early as possible. It is an important
step to show that IPv6 DNS deployment is possible.
--------------------------------------------------------------------
Roadmap step 2:
The root SHOULD have at least one IPv6 name server.
--------------------------------------------------------------------
4.3 TLDs servers accessible via IPv6
Having the capability to query a root name server using IPv6 is just
the first step. The next one is to query a TLD for a NS record
pointing to a domain name. Again, although not strictly necessary
from a technical perspective, it is important to make sure that some
TLD servers are accessible from the beginning via IPv6 so at least
some label strings are resolvable with IPv6 transport without
resorting to the bridging system.
Also note that great care should be taken when adding IPv6 glue in
the TLD delegation by the root.
--------------------------------------------------------------------
Roadmap step 3:
Each TLD zone SHOULD have at least one IPv6 name server.
--------------------------------------------------------------------
4.4 IPv6 glue at TLD registries.
Whenever glue is needed, it is necessary for domains delegated under
a TLD to be able to specify an IPv6 name server address to the TLD
registry. This is not so much a protocol issue but a management and
procedural issue.
--------------------------------------------------------------------
Roadmap step 4:
Domains registering under TLDs SHOULD be able to specify IPv6 glue
wherever they are specifying IPv4 glue today.
--------------------------------------------------------------------
4.5 Reverse path DNS servers
Reverse DNS queries should also be supported in IPv6, for the same
reasons as direct queries. Today's resolvers do reverse nibbles
queries under the ip6.int tree. [RFC3152] has deprecated ip6.int,
thus reverse DNS queries MUST be moved to ip6.arpa. So, although
again not strictly speaking a technical requirement, it is important
to have at least one server for ip6.arpa accessible via IPv6.
--------------------------------------------------------------------
Roadmap step 5:
The ip6.arpa zone SHOULD have at least one IPv6 server.
--------------------------------------------------------------------
5. Security considerations
Any bridging system, acting as open relay, could be misused to create
denial of service attacks on external DNS servers. Some provision
SHOULD be made in the design of those relay to deal with this issue.
6 Authors addresses
Alain Durand
SUN Microsystems, Inc
901 San Antonio Road
MPK17-202
Palo Alto, CA 94303-4900
USA
Mail: Alain.Durand@sun.com
Johan Ihren
Autonomica AB
Bellmansgatan 30
SE-118 47 Stockholm, Sweden
johani@autonomica.se
7. References
[RFC2026] Bradner, S.,
"The Internet Standards Process -- Revision 3",
BCP 9, RFC 2026, October 1996
[RFC2119] Bradner, S.,
"Key words for use in RFCs to Indicate Requirement Levels",
BCP 14, RFC 2119, March 199
[RFC3152] Bush, R.,
"Delegation of IP6.ARPA",
RFC 3152, August 2001
[RFC2826] Internet Architecture Board,
"IAB Technical Comment on the Unique DNS Root",
RFC 2826, May 2000
[RFC2766] Tsirtsis, G., Srisuresh, P.,
"Network Address Translation - Protocol Translation (NAT-PT)",
RFC 2766, February 2000