620 lines
25 KiB
Plaintext
620 lines
25 KiB
Plaintext
|
||
|
||
|
||
|
||
|
||
|
||
Network Working Group R. Atkinson
|
||
Request for Comments: 2230 NRL
|
||
Category: Informational November 1997
|
||
|
||
|
||
Key Exchange Delegation Record for the DNS
|
||
|
||
Status of this Memo
|
||
|
||
This memo provides information for the Internet community. It does
|
||
not specify an Internet standard of any kind. Distribution of this
|
||
memo is unlimited.
|
||
|
||
Copyright Notice
|
||
|
||
Copyright (C) The Internet Society (1997). All Rights Reserved.
|
||
|
||
ABSTRACT
|
||
|
||
This note describes a mechanism whereby authorisation for one node to
|
||
act as key exchanger for a second node is delegated and made
|
||
available via the Secure DNS. This mechanism is intended to be used
|
||
only with the Secure DNS. It can be used with several security
|
||
services. For example, a system seeking to use IP Security [RFC-
|
||
1825, RFC-1826, RFC-1827] to protect IP packets for a given
|
||
destination can use this mechanism to determine the set of authorised
|
||
remote key exchanger systems for that destination.
|
||
|
||
1. INTRODUCTION
|
||
|
||
|
||
The Domain Name System (DNS) is the standard way that Internet nodes
|
||
locate information about addresses, mail exchangers, and other data
|
||
relating to remote Internet nodes. [RFC-1035, RFC-1034] More
|
||
recently, Eastlake and Kaufman have defined standards-track security
|
||
extensions to the DNS. [RFC-2065] These security extensions can be
|
||
used to authenticate signed DNS data records and can also be used to
|
||
store signed public keys in the DNS.
|
||
|
||
The KX record is useful in providing an authenticatible method of
|
||
delegating authorisation for one node to provide key exchange
|
||
services on behalf of one or more, possibly different, nodes. This
|
||
note specifies the syntax and semantics of the KX record, which is
|
||
currently in limited deployment in certain IP-based networks. The
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
Atkinson Informational [Page 1]
|
||
|
||
RFC 2230 DNS Key Exchange Delegation Record November 1997
|
||
|
||
|
||
reader is assumed to be familiar with the basics of DNS, including
|
||
familiarity with [RFC-1035, RFC-1034]. This document is not on the
|
||
IETF standards-track and does not specify any level of standard.
|
||
This document merely provides information for the Internet community.
|
||
|
||
1.1 Identity Terminology
|
||
|
||
This document relies upon the concept of "identity domination". This
|
||
concept might be new to the reader and so is explained in this
|
||
section. The subject of endpoint naming for security associations
|
||
has historically been somewhat contentious. This document takes no
|
||
position on what forms of identity should be used. In a network,
|
||
there are several forms of identity that are possible.
|
||
|
||
For example, IP Security has defined notions of identity that
|
||
include: IP Address, IP Address Range, Connection ID, Fully-Qualified
|
||
Domain Name (FQDN), and User with Fully Qualified Domain Name (USER
|
||
FQDN).
|
||
|
||
A USER FQDN identity dominates a FQDN identity. A FQDN identity in
|
||
turn dominates an IP Address identity. Similarly, a Connection ID
|
||
dominates an IP Address identity. An IP Address Range dominates each
|
||
IP Address identity for each IP address within that IP address range.
|
||
Also, for completeness, an IP Address identity is considered to
|
||
dominate itself.
|
||
|
||
2. APPROACH
|
||
|
||
This document specifies a new kind of DNS Resource Record (RR), known
|
||
as the Key Exchanger (KX) record. A Key Exchanger Record has the
|
||
mnemonic "KX" and the type code of 36. Each KX record is associated
|
||
with a fully-qualified domain name. The KX record is modeled on the
|
||
MX record described in [Part86]. Any given domain, subdomain, or host
|
||
entry in the DNS might have a KX record.
|
||
|
||
2.1 IPsec Examples
|
||
|
||
In these two examples, let S be the originating node and let D be the
|
||
destination node. S2 is another node on the same subnet as S. D2 is
|
||
another node on the same subnet as D. R1 and R2 are IPsec-capable
|
||
routers. The path from S to D goes via first R1 and later R2. The
|
||
return path from D to S goes via first R2 and later R1.
|
||
|
||
IETF-standard IP Security uses unidirectional Security Associations
|
||
[RFC-1825]. Therefore, a typical IP session will use a pair of
|
||
related Security Associations, one in each direction. The examples
|
||
below talk about how to setup an example Security Association, but in
|
||
practice a pair of matched Security Associations will normally be
|
||
|
||
|
||
|
||
Atkinson Informational [Page 2]
|
||
|
||
RFC 2230 DNS Key Exchange Delegation Record November 1997
|
||
|
||
|
||
used.
|
||
|
||
2.1.1 Subnet-to-Subnet Example
|
||
|
||
If neither S nor D implements IPsec, security can still be provided
|
||
between R1 and R2 by building a secure tunnel. This can use either
|
||
AH or ESP.
|
||
|
||
S ---+ +----D
|
||
| |
|
||
+- R1 -----[zero or more routers]-------R2-+
|
||
| |
|
||
S2---+ +----D2
|
||
|
||
Figure 1: Network Diagram for Subnet-to-Subnet Example
|
||
|
||
In this example, R1 makes the policy decision to provide the IPsec
|
||
service for traffic from R1 destined for R2. Once R1 has decided
|
||
that the packet from S to D should be protected, it performs a secure
|
||
DNS lookup for the records associated with domain D. If R1 only
|
||
knows the IP address for D, then a secure reverse DNS lookup will be
|
||
necessary to determine the domain D, before that forward secure DNS
|
||
lookup for records associated with domain D. If these DNS records of
|
||
domain D include a KX record for the IPsec service, then R1 knows
|
||
which set of nodes are authorised key exchanger nodes for the
|
||
destination D.
|
||
|
||
In this example, let there be at least one KX record for D and let
|
||
the most preferred KX record for D point at R2. R1 then selects a
|
||
key exchanger (in this example, R2) for D from the list obtained from
|
||
the secure DNS. Then R1 initiates a key management session with that
|
||
key exchanger (in this example, R2) to setup an IPsec Security
|
||
Association between R1 and D. In this example, R1 knows (either by
|
||
seeing an outbound packet arriving from S destined to D or via other
|
||
methods) that S will be sending traffic to D. In this example R1's
|
||
policy requires that traffic from S to D should be segregated at
|
||
least on a host-to-host basis, so R1 desires an IPsec Security
|
||
Association with source identity that dominates S, proxy identity
|
||
that dominates R1, and destination identity that dominates R2.
|
||
|
||
In turn, R2 is able to authenticate the delegation of Key Exchanger
|
||
authorisation for target S to R1 by making an authenticated forward
|
||
DNS lookup for KX records associated with S and verifying that at
|
||
least one such record points to R1. The identity S is typically
|
||
given to R2 as part of the key management process between R1 and R2.
|
||
|
||
|
||
|
||
|
||
|
||
|
||
Atkinson Informational [Page 3]
|
||
|
||
RFC 2230 DNS Key Exchange Delegation Record November 1997
|
||
|
||
|
||
If D initially only knows the IP address of S, then it will need to
|
||
perform a secure reverse DNS lookup to obtain the fully-qualified
|
||
domain name for S prior to that secure forward DNS lookup.
|
||
|
||
If R2 does not receive an authenticated DNS response indicating that
|
||
R1 is an authorised key exchanger for S, then D will not accept the
|
||
SA negotiation from R1 on behalf of identity S.
|
||
|
||
If the proposed IPsec Security Association is acceptable to both R1
|
||
and R2, each of which might have separate policies, then they create
|
||
that IPsec Security Association via Key Management.
|
||
|
||
Note that for unicast traffic, Key Management will typically also
|
||
setup a separate (but related) IPsec Security Association for the
|
||
return traffic. That return IPsec Security Association will have
|
||
equivalent identities. In this example, that return IPsec Security
|
||
Association will have a source identity that dominates D, a proxy
|
||
identity that dominates R2, and a destination identity that dominates
|
||
R1.
|
||
|
||
Once the IPsec Security Association has been created, then R1 uses it
|
||
to protect traffic from S destined for D via a secure tunnel that
|
||
originates at R1 and terminates at R2. For the case of unicast, R2
|
||
will use the return IPsec Security Association to protect traffic
|
||
from D destined for S via a secure tunnel that originates at R2 and
|
||
terminates at R1.
|
||
|
||
2.1.2 Subnet-to-Host Example
|
||
|
||
Consider the case where D and R1 implement IPsec, but S does not
|
||
implement IPsec, which is an interesting variation on the previous
|
||
example. This example is shown in Figure 2 below.
|
||
|
||
S ---+
|
||
|
|
||
+- R1 -----[zero or more routers]-------D
|
||
|
|
||
S2---+
|
||
|
||
Figure 2: Network Diagram for Subnet-to-Host Example
|
||
|
||
In this example, R1 makes the policy decision that IP Security is
|
||
needed for the packet travelling from S to D. Then, R1 performs the
|
||
secure DNS lookup for D and determines that D is its own key
|
||
exchanger, either from the existence of a KX record for D pointing to
|
||
D or from an authenticated DNS response indicating that no KX record
|
||
exists for D. If R1 does not initially know the domain name of D,
|
||
then prior to the above forward secure DNS lookup, R1 performs a
|
||
|
||
|
||
|
||
Atkinson Informational [Page 4]
|
||
|
||
RFC 2230 DNS Key Exchange Delegation Record November 1997
|
||
|
||
|
||
secure reverse DNS lookup on the IP address of D to determine the
|
||
fully-qualified domain name for that IP address. R1 then initiates
|
||
key management with D to create an IPsec Security Association on
|
||
behalf of S.
|
||
|
||
In turn, D can verify that R1 is authorised to create an IPsec
|
||
Security Association on behalf of S by performing a DNS KX record
|
||
lookup for target S. R1 usually provides identity S to D via key
|
||
management. If D only has the IP address of S, then D will need to
|
||
perform a secure reverse lookup on the IP address of S to determine
|
||
domain name S prior to the secure forward DNS lookup on S to locate
|
||
the KX records for S.
|
||
|
||
If D does not receive an authenticated DNS response indicating that
|
||
R1 is an authorised key exchanger for S, then D will not accept the
|
||
SA negotiation from R1 on behalf of identity S.
|
||
|
||
If the IPsec Security Association is successfully established between
|
||
R1 and D, that IPsec Security Association has a source identity that
|
||
dominates S's IP address, a proxy identity that dominates R1's IP
|
||
address, and a destination identity that dominates D's IP address.
|
||
|
||
Finally, R1 begins providing the security service for packets from S
|
||
that transit R1 destined for D. When D receives such packets, D
|
||
examines the SA information during IPsec input processing and sees
|
||
that R1's address is listed as valid proxy address for that SA and
|
||
that S is the source address for that SA. Hence, D knows at input
|
||
processing time that R1 is authorised to provide security on behalf
|
||
of S. Therefore packets coming from R1 with valid IP security that
|
||
claim to be from S are trusted by D to have really come from S.
|
||
|
||
2.1.3 Host to Subnet Example
|
||
|
||
Now consider the above case from D's perspective (i.e. where D is
|
||
sending IP packets to S). This variant is sometimes known as the
|
||
Mobile Host or "roadwarrier" case. The same basic concepts apply, but
|
||
the details are covered here in hope of improved clarity.
|
||
|
||
S ---+
|
||
|
|
||
+- R1 -----[zero or more routers]-------D
|
||
|
|
||
S2---+
|
||
|
||
Figure 3: Network Diagram for Host-to-Subnet Example
|
||
|
||
|
||
|
||
|
||
|
||
|
||
Atkinson Informational [Page 5]
|
||
|
||
RFC 2230 DNS Key Exchange Delegation Record November 1997
|
||
|
||
|
||
In this example, D makes the policy decision that IP Security is
|
||
needed for the packets from D to S. Then D performs the secure DNS
|
||
lookup for S and discovers that a KX record for S exists and points
|
||
at R1. If D only has the IP address of S, then it performs a secure
|
||
reverse DNS lookup on the IP address of S prior to the forward secure
|
||
DNS lookup for S.
|
||
|
||
D then initiates key management with R1, where R1 is acting on behalf
|
||
of S, to create an appropriate Security Association. Because D is
|
||
acting as its own key exchanger, R1 does not need to perform a secure
|
||
DNS lookup for KX records associated with D.
|
||
|
||
D and R1 then create an appropriate IPsec Security Security
|
||
Association. This IPsec Security Association is setup as a secure
|
||
tunnel with a source identity that dominates D's IP Address and a
|
||
destination identity that dominates R1's IP Address. Because D
|
||
performs IPsec for itself, no proxy identity is needed in this IPsec
|
||
Security Association. If the proxy identity is non-null in this
|
||
situation, then the proxy identity must dominate D's IP Address.
|
||
|
||
Finally, D sends secured IP packets to R1. R1 receives those
|
||
packets, provides IPsec input processing (including appropriate
|
||
inner/outer IP address validation), and forwards valid packets along
|
||
to S.
|
||
|
||
2.2 Other Examples
|
||
|
||
This mechanism can be extended for use with other services as well.
|
||
To give some insight into other possible uses, this section discusses
|
||
use of KX records in environments using a Key Distribution Center
|
||
(KDC), such as Kerberos [KN93], and a possible use of KX records in
|
||
conjunction with mobile nodes accessing the network via a dialup
|
||
service.
|
||
|
||
2.2.1 KDC Examples
|
||
|
||
This example considers the situation of a destination node
|
||
implementing IPsec that can only obtain its Security Association
|
||
information from a Key Distribution Center (KDC). Let the KDC
|
||
implement both the KDC protocol and also a non-KDC key management
|
||
protocol (e.g. ISAKMP). In such a case, each client node of the KDC
|
||
might have its own KX record pointing at the KDC so that nodes not
|
||
implementing the KDC protocol can still create Security Associations
|
||
with each of the client nodes of the KDC.
|
||
|
||
In the event the session initiator were not using the KDC but the
|
||
session target was an IPsec node that only used the KDC, the
|
||
initiator would find the KX record for the target pointing at the
|
||
|
||
|
||
|
||
Atkinson Informational [Page 6]
|
||
|
||
RFC 2230 DNS Key Exchange Delegation Record November 1997
|
||
|
||
|
||
KDC. Then, the external key management exchange (e.g. ISAKMP) would
|
||
be between the initiator and the KDC. Then the KDC would distribute
|
||
the IPsec SA to the KDC-only IPsec node using the KDC. The IPsec
|
||
traffic itself could travel directly between the initiator and the
|
||
destination node.
|
||
|
||
In the event the initiator node could only use the KDC and the target
|
||
were not using the KDC, the initiator would send its request for a
|
||
key to the KDC. The KDC would then initiate an external key
|
||
management exchange (e.g. ISAKMP) with a node that the target's KX
|
||
record(s) pointed to, on behalf of the initiator node.
|
||
|
||
The target node could verify that the KDC were allowed to proxy for
|
||
the initiator node by looking up the KX records for the initiator
|
||
node and finding a KX record for the initiator that listed the KDC.
|
||
|
||
Then the external key exchange would be performed between the KDC and
|
||
the target node. Then the KDC would distribute the resulting IPsec
|
||
Security Association to the initiator. Again, IPsec traffic itself
|
||
could travel directly between the initiator and the destination.
|
||
|
||
2.2.2 Dial-Up Host Example
|
||
|
||
This example outlines a possible use of KX records with mobile hosts
|
||
that dial into the network via PPP and are dynamically assigned an IP
|
||
address and domain-name at dial-in time.
|
||
|
||
Consider the situation where each mobile node is dynamically assigned
|
||
both a domain name and an IP address at the time that node dials into
|
||
the network. Let the policy require that each mobile node act as its
|
||
own Key Exchanger. In this case, it is important that dial-in nodes
|
||
use addresses from one or more well known IP subnets or address pools
|
||
dedicated to dial-in access. If that is true, then no KX record or
|
||
other action is needed to ensure that each node will act as its own
|
||
Key Exchanger because lack of a KX record indicates that the node is
|
||
its own Key Exchanger.
|
||
|
||
Consider the situation where the mobile node's domain name remains
|
||
constant but its IP address changes. Let the policy require that
|
||
each mobile node act as its own Key Exchanger. In this case, there
|
||
might be operational problems when another node attempts to perform a
|
||
secure reverse DNS lookup on the IP address to determine the
|
||
corresponding domain name. The authenticated DNS binding (in the
|
||
form of a PTR record) between the mobile node's currently assigned IP
|
||
address and its permanent domain name will need to be securely
|
||
updated each time the node is assigned a new IP address. There are
|
||
no mechanisms for accomplishing this that are both IETF-standard and
|
||
widely deployed as of the time this note was written. Use of Dynamic
|
||
|
||
|
||
|
||
Atkinson Informational [Page 7]
|
||
|
||
RFC 2230 DNS Key Exchange Delegation Record November 1997
|
||
|
||
|
||
DNS Update without authentication is a significant security risk and
|
||
hence is not recommended for this situation.
|
||
|
||
3. SYNTAX OF KX RECORD
|
||
|
||
A KX record has the DNS TYPE of "KX" and a numeric value of 36. A KX
|
||
record is a member of the Internet ("IN") CLASS in the DNS. Each KX
|
||
record is associated with a <domain-name> entry in the DNS. A KX
|
||
record has the following textual syntax:
|
||
|
||
<domain-name> IN KX <preference> <domain-name>
|
||
|
||
For this description, let the <domain-name> item to the left of the
|
||
"KX" string be called <domain-name 1> and the <domain-name> item to
|
||
the right of the "KX" string be called <domain-name 2>. <preference>
|
||
is a non-negative integer.
|
||
|
||
Internet nodes about to initiate a key exchange with <domain-name 1>
|
||
should instead contact <domain-name 2> to initiate the key exchange
|
||
for a security service between the initiator and <domain-name 2>. If
|
||
more than one KX record exists for <domain-name 1>, then the
|
||
<preference> field is used to indicate preference among the systems
|
||
delegated to. Lower values are preferred over higher values. The
|
||
<domain-name 2> is authorised to provide key exchange services on
|
||
behalf of <domain-name 1>. The <domain-name 2> MUST have a CNAME
|
||
record, an A record, or an AAAA record associated with it.
|
||
|
||
3.1 KX RDATA format
|
||
|
||
The KX DNS record has the following RDATA format:
|
||
|
||
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|
||
| PREFERENCE |
|
||
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|
||
/ EXCHANGER /
|
||
/ /
|
||
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|
||
|
||
where:
|
||
|
||
PREFERENCE A 16 bit non-negative integer which specifies the
|
||
preference given to this RR among other KX records
|
||
at the same owner. Lower values are preferred.
|
||
|
||
EXCHANGER A <domain-name> which specifies a host willing to
|
||
act as a mail exchange for the owner name.
|
||
|
||
|
||
|
||
|
||
|
||
Atkinson Informational [Page 8]
|
||
|
||
RFC 2230 DNS Key Exchange Delegation Record November 1997
|
||
|
||
|
||
KX records MUST cause type A additional section processing for the
|
||
host specified by EXCHANGER. In the event that the host processing
|
||
the DNS transaction supports IPv6, KX records MUST also cause type
|
||
AAAA additional section processing.
|
||
|
||
The KX RDATA field MUST NOT be compressed.
|
||
|
||
4. SECURITY CONSIDERATIONS
|
||
|
||
KX records MUST always be signed using the method(s) defined by the
|
||
DNS Security extensions specified in [RFC-2065]. All unsigned KX
|
||
records MUST be ignored because of the security vulnerability caused
|
||
by assuming that unsigned records are valid. All signed KX records
|
||
whose signatures do not correctly validate MUST be ignored because of
|
||
the potential security vulnerability in trusting an invalid KX
|
||
record.
|
||
|
||
KX records MUST be ignored by systems not implementing Secure DNS
|
||
because such systems have no mechanism to authenticate the KX record.
|
||
|
||
If a node does not have a permanent DNS entry and some form of
|
||
Dynamic DNS Update is in use, then those dynamic DNS updates MUST be
|
||
fully authenticated to prevent an adversary from injecting false DNS
|
||
records (especially the KX, A, and PTR records) into the Domain Name
|
||
System. If false records were inserted into the DNS without being
|
||
signed by the Secure DNS mechanisms, then a denial-of-service attack
|
||
results. If false records were inserted into the DNS and were
|
||
(erroneously) signed by the signing authority, then an active attack
|
||
results.
|
||
|
||
Myriad serious security vulnerabilities can arise if the restrictions
|
||
throuhout this document are not strictly adhered to. Implementers
|
||
should carefully consider the openly published issues relating to DNS
|
||
security [Bell95,Vixie95] as they build their implementations.
|
||
Readers should also consider the security considerations discussed in
|
||
the DNS Security Extensions document [RFC-2065].
|
||
|
||
5. REFERENCES
|
||
|
||
|
||
[RFC-1825] Atkinson, R., "IP Authentication Header", RFC 1826,
|
||
August 1995.
|
||
|
||
[RFC-1827] Atkinson, R., "IP Encapsulating Security Payload",
|
||
RFC 1827, August 1995.
|
||
|
||
|
||
|
||
|
||
|
||
|
||
Atkinson Informational [Page 9]
|
||
|
||
RFC 2230 DNS Key Exchange Delegation Record November 1997
|
||
|
||
|
||
[Bell95] Bellovin, S., "Using the Domain Name System for System
|
||
Break-ins", Proceedings of 5th USENIX UNIX Security
|
||
Symposium, USENIX Association, Berkeley, CA, June 1995.
|
||
ftp://ftp.research.att.com/dist/smb/dnshack.ps
|
||
|
||
[RFC-2065] Eastlake, D., and C. Kaufman, "Domain Name System
|
||
Security Extensions", RFC 2065, January 1997.
|
||
|
||
[RFC-1510] Kohl J., and C. Neuman, "The Kerberos Network
|
||
Authentication Service", RFC 1510, September 1993.
|
||
|
||
[RFC-1035] Mockapetris, P., "Domain names - implementation and
|
||
specification", STD 13, RFC 1035, November 1987.
|
||
|
||
[RFC-1034] Mockapetris, P., "Domain names - concepts and
|
||
facilities", STD 13, RFC 1034, November 1987.
|
||
|
||
[Vixie95] P. Vixie, "DNS and BIND Security Issues", Proceedings of
|
||
the 5th USENIX UNIX Security Symposium, USENIX
|
||
Association, Berkeley, CA, June 1995.
|
||
ftp://ftp.vix.com/pri/vixie/bindsec.psf
|
||
|
||
ACKNOWLEDGEMENTS
|
||
|
||
Development of this DNS record was primarily performed during 1993
|
||
through 1995. The author's work on this was sponsored jointly by the
|
||
Computing Systems Technology Office (CSTO) of the Advanced Research
|
||
Projects Agency (ARPA) and by the Information Security Program Office
|
||
(PD71E), Space & Naval Warface Systems Command (SPAWAR). In that
|
||
era, Dave Mihelcic and others provided detailed review and
|
||
constructive feedback. More recently, Bob Moscowitz and Todd Welch
|
||
provided detailed review and constructive feedback of a work in
|
||
progress version of this document.
|
||
|
||
AUTHOR'S ADDRESS
|
||
|
||
Randall Atkinson
|
||
Code 5544
|
||
Naval Research Laboratory
|
||
4555 Overlook Avenue, SW
|
||
Washington, DC 20375-5337
|
||
|
||
Phone: (DSN) 354-8590
|
||
EMail: atkinson@itd.nrl.navy.mil
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
Atkinson Informational [Page 10]
|
||
|
||
RFC 2230 DNS Key Exchange Delegation Record November 1997
|
||
|
||
|
||
Full Copyright Statement
|
||
|
||
Copyright (C) The Internet Society (1997). All Rights Reserved.
|
||
|
||
This document and translations of it may be copied and furnished to
|
||
others, and derivative works that comment on or otherwise explain it
|
||
or assist in its implmentation may be prepared, copied, published
|
||
andand distributed, in whole or in part, without restriction of any
|
||
kind, provided that the above copyright notice and this paragraph are
|
||
included on all such copies and derivative works. However, this
|
||
document itself may not be modified in any way, such as by removing
|
||
the copyright notice or references to the Internet Society or other
|
||
Internet organizations, except as needed for the purpose of
|
||
developing Internet standards in which case the procedures for
|
||
copyrights defined in the Internet Standards process must be
|
||
followed, or as required to translate it into languages other than
|
||
English.
|
||
|
||
The limited permissions granted above are perpetual and will not be
|
||
revoked by the Internet Society or its successors or assigns.
|
||
|
||
This document and the information contained herein is provided on an
|
||
"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
|
||
TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
|
||
BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
|
||
HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
|
||
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
Atkinson Informational [Page 11]
|
||
|