| < draft-ietf-hip-dns-08.txt | draft-ietf-hip-dns-09.txt > | |||
|---|---|---|---|---|
| Network Working Group P. Nikander | Network Working Group P. Nikander | |||
| Internet-Draft Ericsson Research Nomadic Lab | Internet-Draft Ericsson Research Nomadic Lab | |||
| Expires: April 20, 2007 J. Laganier | Intended status: Experimental J. Laganier | |||
| DoCoMo Euro-Labs | Expires: October 15, 2007 DoCoMo Euro-Labs | |||
| October 17, 2006 | April 13, 2007 | |||
| Host Identity Protocol (HIP) Domain Name System (DNS) Extensions | Host Identity Protocol (HIP) Domain Name System (DNS) Extensions | |||
| draft-ietf-hip-dns-08 | draft-ietf-hip-dns-09 | |||
| 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 35 ¶ | skipping to change at page 1, line 35 ¶ | |||
| 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 20, 2007. | This Internet-Draft will expire on October 15, 2007. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (C) The Internet Society (2006). | Copyright (C) The IETF Trust (2007). | |||
| Abstract | Abstract | |||
| This document specifies a new resource record (RR) for the Domain | This document specifies a new resource record (RR) for the Domain | |||
| Name System (DNS), and how to use it with the Host Identity Protocol | Name System (DNS), and how to use it with the Host Identity Protocol | |||
| (HIP.) This RR allows a HIP node to store in the DNS its Host | (HIP). This RR allows a HIP node to store in the DNS its Host | |||
| Identity (HI, the public component of the node public-private key | Identity (HI, the public component of the node public-private key | |||
| pair), Host Identity Tag (HIT, a truncated hash of its public key), | pair), Host Identity Tag (HIT, a truncated hash of its public key), | |||
| and the Domain Names of its rendezvous servers (RVS.) | and the Domain Names of its rendezvous servers (RVS). | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 2. Conventions used in this document . . . . . . . . . . . . . . 4 | 2. Conventions used in this document . . . . . . . . . . . . . . 4 | |||
| 3. Usage Scenarios . . . . . . . . . . . . . . . . . . . . . . . 5 | 3. Usage Scenarios . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 3.1. Simple static singly homed end-host . . . . . . . . . . . 6 | 3.1. Simple static singly homed end-host . . . . . . . . . . . 6 | |||
| 3.2. Mobile end-host . . . . . . . . . . . . . . . . . . . . . 7 | 3.2. Mobile end-host . . . . . . . . . . . . . . . . . . . . . 7 | |||
| 4. Overview of using the DNS with HIP . . . . . . . . . . . . . . 9 | 4. Overview of using the DNS with HIP . . . . . . . . . . . . . . 9 | |||
| 4.1. Storing HI, HIT and RVS in DNS . . . . . . . . . . . . . . 9 | 4.1. Storing HI, HIT and RVS in the DNS . . . . . . . . . . . . 9 | |||
| 4.2. Initiating connections based on DNS names . . . . . . . . 9 | 4.2. Initiating connections based on DNS names . . . . . . . . 9 | |||
| 5. HIP RR Storage Format . . . . . . . . . . . . . . . . . . . . 10 | 5. HIP RR Storage Format . . . . . . . . . . . . . . . . . . . . 10 | |||
| 5.1. HIT length format . . . . . . . . . . . . . . . . . . . . 10 | 5.1. HIT length format . . . . . . . . . . . . . . . . . . . . 10 | |||
| 5.2. PK algorithm format . . . . . . . . . . . . . . . . . . . 10 | 5.2. PK algorithm format . . . . . . . . . . . . . . . . . . . 10 | |||
| 5.3. PK length format . . . . . . . . . . . . . . . . . . . . . 11 | 5.3. PK length format . . . . . . . . . . . . . . . . . . . . . 11 | |||
| 5.4. HIT format . . . . . . . . . . . . . . . . . . . . . . . . 11 | 5.4. HIT format . . . . . . . . . . . . . . . . . . . . . . . . 11 | |||
| 5.5. Public key format . . . . . . . . . . . . . . . . . . . . 11 | 5.5. Public key format . . . . . . . . . . . . . . . . . . . . 11 | |||
| 5.6. Rendezvous servers format . . . . . . . . . . . . . . . . 11 | 5.6. Rendezvous servers format . . . . . . . . . . . . . . . . 11 | |||
| 6. HIP RR Presentation Format . . . . . . . . . . . . . . . . . . 12 | 6. HIP RR Presentation Format . . . . . . . . . . . . . . . . . . 12 | |||
| 7. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 | 7. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 | |||
| skipping to change at page 3, line 12 ¶ | skipping to change at page 3, line 12 ¶ | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 20 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 20 | |||
| Intellectual Property and Copyright Statements . . . . . . . . . . 21 | Intellectual Property and Copyright Statements . . . . . . . . . . 21 | |||
| 1. Introduction | 1. Introduction | |||
| This document specifies a new resource record (RR) for the Domain | This document specifies a new resource record (RR) for the Domain | |||
| Name System (DNS) [RFC1034], and how to use it with the Host Identity | Name System (DNS) [RFC1034], and how to use it with the Host Identity | |||
| Protocol (HIP) [I-D.ietf-hip-base]. This RR allows a HIP node to | Protocol (HIP) [I-D.ietf-hip-base]. This RR allows a HIP node to | |||
| store in the DNS its Host Identity (HI, the public component of the | store in the DNS its Host Identity (HI, the public component of the | |||
| node public-private key pair), Host Identity Tag (HIT, a truncated | node public-private key pair), Host Identity Tag (HIT, a truncated | |||
| hash of its HI), and the Domain Names of its rendezvous servers | hash of its HI), and the Domain Names of its rendezvous servers (RVS) | |||
| (RVS.) [I-D.ietf-hip-rvs] | [I-D.ietf-hip-rvs]. | |||
| Currently, most of the Internet applications that need to communicate | Currently, most of the Internet applications that need to communicate | |||
| with a remote host first translate a domain name (often obtained via | with a remote host first translate a domain name (often obtained via | |||
| user input) into one or more IP address(es). This step occurs prior | user input) into one or more IP address(es). This step occurs prior | |||
| to communication with the remote host, and relies on a DNS lookup. | to communication with the remote host, and relies on a DNS lookup. | |||
| With HIP, IP addresses are intended to be used mostly for on-the-wire | With HIP, IP addresses are intended to be used mostly for on-the-wire | |||
| communication between end hosts, while most ULPs and applications use | communication between end hosts, while most Upper Layer Protocols | |||
| HIs or HITs instead (ICMP might be an example of an ULP not using | (ULP) and applications use HIs or HITs instead (ICMP might be an | |||
| them.) Consequently, we need a means to translate a domain name into | example of an ULP not using them). Consequently, we need a means to | |||
| an HI. Using the DNS for this translation is pretty straightforward: | translate a domain name into an HI. Using the DNS for this | |||
| We define a new HIP resource record. Upon query by an application or | translation is pretty straightforward: We define a new HIP resource | |||
| ULP for a FQDN -> IP lookup, the resolver would then additionally | record. Upon query by an application or ULP for a name to IP address | |||
| perform an FQDN -> HI lookup, and use it to construct the resulting | lookup, the resolver would then additionally perform a name to HI | |||
| HI -> IP mapping (which is internal to the HIP layer.) The HIP layer | lookup, and use it to construct the resulting HI to IP address | |||
| uses the HI -> IP mapping to translate HIs and HITs into IP addresses | mapping (which is internal to the HIP layer). The HIP layer uses the | |||
| HI to IP address mapping to translate HIs and HITs into IP addresses | ||||
| and vice versa. | and vice versa. | |||
| The HIP rendezvous extensions [I-D.ietf-hip-rvs] proposal allows a | The HIP rendezvous extensions [I-D.ietf-hip-rvs] proposal allows a | |||
| HIP node to be reached via the IP address(es) of a third party, the | HIP node to be reached via the IP address(es) of a third party, the | |||
| node's rendezvous server (RVS.) An initiator willing to establish a | node's rendezvous server (RVS). An initiator willing to establish a | |||
| HIP association with a responder served by a RVS would typically | HIP association with a responder served by a RVS would typically | |||
| initiate a HIP exchange by sending an I1 towards the RVS IP address | initiate a HIP exchange by sending an I1 towards the RVS IP address | |||
| rather than towards the responder IP address. Consequently, we need | rather than towards the responder IP address. Consequently, we need | |||
| a means to translate a domain name into the rendezvous server's | a means to to find the name of a rendezvous server for a given host | |||
| domain name. | name. | |||
| This draft introduces the new HIP DNS Resource Record to store | This document introduces the new HIP DNS Resource Record to store | |||
| Rendezvous Server (RVS), Host Identity (HI) and Host Identity Tag | Rendezvous Server (RVS), Host Identity (HI) and Host Identity Tag | |||
| (HIT) information. | (HIT) information. | |||
| 2. Conventions used in this document | 2. Conventions used in this document | |||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | |||
| document are to be interpreted as described in RFC2119 [RFC2119]. | document are to be interpreted as described in RFC2119 [RFC2119]. | |||
| 3. Usage Scenarios | 3. Usage Scenarios | |||
| In this section, we briefly introduce a number of usage scenarios | In this section, we briefly introduce a number of usage scenarios | |||
| where the DNS is useful with the Host Identity Protocol. | where the DNS is useful with the Host Identity Protocol. | |||
| With HIP, most application and ULPs are unaware of the IP addresses | With HIP, most application and ULPs are unaware of the IP addresses | |||
| used to carry packets on the wire. Consequently, a HIP node could | used to carry packets on the wire. Consequently, a HIP node could | |||
| take advantage of having multiple IP addresses for fail-over, | take advantage of having multiple IP addresses for fail-over, | |||
| redundancy, mobility, or renumbering, in a manner which is | redundancy, mobility, or renumbering, in a manner which is | |||
| transparent to most ULPs and applications (because they are bound to | transparent to most ULPs and applications (because they are bound to | |||
| HIs, hence they are agnostic to these IP address changes.) | HIs, hence they are agnostic to these IP address changes). | |||
| In these situations, a node wishing to be reachable by reference to | In these situations, for a node to be reachable by reference to its | |||
| its FQDN should store the following information in the DNS: | Fully Qualified Domain Name (FQDN), the following information should | |||
| be stored in the DNS: | ||||
| o A set of IP address(es) through A [RFC1035] and AAAA [RFC3596] | o A set of IP address(es) through A [RFC1035] and AAAA [RFC3596] RR | |||
| RRs. | sets (RRSets [RFC2181]). | |||
| o A Host Identity (HI), Host Identity Tag (HIT) and possibly a set | o A Host Identity (HI), Host Identity Tag (HIT) and possibly a set | |||
| of rendezvous server(s) (RVS) through HIP RRs. | of rendezvous servers (RVS) through HIP RRs. | |||
| When a HIP node wants to initiate a communication with another HIP | When a HIP node wants to initiate a communication with another HIP | |||
| node, it first needs to perform a HIP base exchange to set-up a HIP | node, it first needs to perform a HIP base exchange to set up a HIP | |||
| association towards its peer. Although such an exchange can be | association towards its peer. Although such an exchange can be | |||
| initiated opportunistically, i.e., without prior knowledge of the | initiated opportunistically, i.e., without prior knowledge of the | |||
| responder's HI, by doing so both nodes knowingly risk man-in-the- | responder's HI, by doing so both nodes knowingly risk man-in-the- | |||
| middle attacks on the HIP exchange. To prevent these attacks, it is | middle attacks on the HIP exchange. To prevent these attacks, it is | |||
| recommended that the initiator first obtain the HI of the responder, | recommended that the initiator first obtain the HI of the responder, | |||
| and then initiate the exchange. This can be done, for example, | and then initiate the exchange. This can be done, for example, | |||
| through manual configuration or DNS lookups. Hence, a new HIP RR is | through manual configuration or DNS lookups. Hence, a new HIP RR is | |||
| introduced. | introduced. | |||
| When a HIP node is frequently changing its IP address(es), the | When a HIP node is frequently changing its IP address(es), the | |||
| dynamic DNS update latency may prevent it from publishing its new IP | natural DNS latency for propagating changes may prevent it from | |||
| address(es) in the DNS. For solving this problem, the HIP | publishing its new IP address(es) in the DNS. For solving this | |||
| architecture [RFC4423] introduces rendezvous servers (RVS.) A HIP | problem, the HIP architecture [RFC4423] introduces rendezvous servers | |||
| host uses a rendezvous server as a rendezvous point, to maintain | (RVS). A HIP host uses a rendezvous server as a rendezvous point, to | |||
| reachability with possible HIP initiators while moving | maintain reachability with possible HIP initiators while moving | |||
| [I-D.ietf-hip-mm]. Such a HIP node would publish in the DNS its RVS | [I-D.ietf-hip-mm]. Such a HIP node would publish in the DNS its RVS | |||
| domain name(s) in a HIP RR, while keeping its RVS up-to-date with its | domain name(s) in a HIP RR, while keeping its RVS up-to-date with its | |||
| current set of IP addresses. | current set of IP addresses. | |||
| When a HIP node wants to initiate a HIP exchange with a responder it | When a HIP node wants to initiate a HIP exchange with a responder it | |||
| will perform a number of DNS lookups. Depending on the type of the | will perform a number of DNS lookups. Depending on the type of the | |||
| implementation, the order in which those lookups will be issued may | implementation, the order in which those lookups will be issued may | |||
| vary. For instance, implementations using HIT in APIS may typically | vary. For instance, implementations using HIT in APIs may typically | |||
| first query for HIP resource records at the responder FQDN, while | first query for HIP resource records at the responder FQDN, while | |||
| those using IP address in APIs may typically first query for A and/or | those using IP address in APIs may typically first query for A and/or | |||
| AAAA resource records. | AAAA resource records. | |||
| In the following we assume that the initiator first queries for HIP | In the following we assume that the initiator first queries for HIP | |||
| resource records at the responder FQDN. | resource records at the responder FQDN. | |||
| If the query for the HIP type was responded to with a DNS answer with | If the query for the HIP type was responded to with a DNS answer with | |||
| RCODE=3 (Name Error), then the responder's information is not present | RCODE=3 (Name Error), then the responder's information is not present | |||
| in the DNS and further queries SHOULD NOT be made. | in the DNS and further queries for the same owner name SHOULD NOT be | |||
| made. | ||||
| In case the query for the HIP records returned a DNS answer with | In case the query for the HIP records returned a DNS answer with | |||
| RCODE=0 (No Error), then the initiator sends out one more query for | RCODE=0 (No Error) and an empty answer section, it means that no HIP | |||
| for A and AAAA types at the responder's FQDN. | information is avalaible at the responder name. In such a case, if | |||
| the initiator has been configured with a policy to fallback to | ||||
| opportunistic HIP (initiating without knowing the responder's HI) or | ||||
| plain IP, it would sends out more queries for A and AAAA types at the | ||||
| responder's FQDN. | ||||
| Depending on the combinations of answer the situations described in | Depending on the combinations of answers the situations described in | |||
| Section 3.1 and Section 3.2 can occur. | Section 3.1 and Section 3.2 can occur. | |||
| Note that storing HIP RR information in the DNS at a FQDN which is | Note that storing HIP RR information in the DNS at a FQDN which is | |||
| assigned to a non-HIP node might have ill effects on its reachability | assigned to a non-HIP node might have ill effects on its reachability | |||
| by HIP nodes. | by HIP nodes. | |||
| 3.1. Simple static singly homed end-host | 3.1. Simple static singly homed end-host | |||
| A HIP node (R) with a single static network attachment, wishing to be | A HIP node (R) with a single static network attachment, wishing to be | |||
| reachable by reference to its FQDN (www.example.com), would store in | reachable by reference to its FQDN (www.example.com), would store in | |||
| the DNS, in addition to its IP address(es) (IP-R), its Host Identity | the DNS, in addition to its IP address(es) (IP-R), its Host Identity | |||
| (HI-R) and Host Identity Tag (HIT-R) in a HIP resource record. | (HI-R) and Host Identity Tag (HIT-R) in a HIP resource record. | |||
| An initiator willing to associate with a node would typically issue | An initiator willing to associate with a node would typically issue | |||
| the following queries: | the following queries: | |||
| QNAME=www.example.com, QTYPE=HIP | o QNAME=www.example.com, QTYPE=HIP | |||
| (QCLASS=IN is assumed and omitted from the examples) | o (QCLASS=IN is assumed and omitted from the examples) | |||
| Which returns a DNS packet with RCODE=0 and one or more HIP RRs with | Which returns a DNS packet with RCODE=0 and one or more HIP RRs with | |||
| the HIT and HI (e.g. HIT-R and HI-R) of the responder in the answer | the HIT and HI (e.g. HIT-R and HI-R) of the responder in the answer | |||
| section, but no RVS. | section, but no RVS. | |||
| QNAME=www.example.com, QTYPE=A | o QNAME=www.example.com, QTYPE=A QNAME=www.example.com, QTYPE=AAAA | |||
| Which returns a DNS packet with RCODE=0 and one or more A or AAAA RRs | Which returns DNS packets with RCODE=0 and one or more A or AAAA RRs | |||
| containing IP address(es) of the responder (e.g. IP-R) in the answer | containing IP address(es) of the responder (e.g. IP-R) in the answer | |||
| section. | section. | |||
| Caption: In the remainder of this document, for the sake of keeping | Caption: In the remainder of this document, for the sake of keeping | |||
| diagrams simple and concise, several DNS queries and answers | diagrams simple and concise, several DNS queries and answers | |||
| are represented as one single transaction, while in fact | are represented as one single transaction, while in fact | |||
| there are several queries and answers flowing back and | there are several queries and answers flowing back and | |||
| forth, as described in the textual examples. | forth, as described in the textual examples. | |||
| [HIP? A? ] | [HIP? A? ] | |||
| skipping to change at page 7, line 28 ¶ | skipping to change at page 7, line 29 ¶ | |||
| | | [HIP HIT-R HI-R ] | | | [HIP HIT-R HI-R ] | |||
| | | [A IP-R ] | | | [A IP-R ] | |||
| | v | | v | |||
| +-----+ +-----+ | +-----+ +-----+ | |||
| | |--------------I1------------->| | | | |--------------I1------------->| | | |||
| | I |<-------------R1--------------| R | | | I |<-------------R1--------------| R | | |||
| | |--------------I2------------->| | | | |--------------I2------------->| | | |||
| | |<-------------R2--------------| | | | |<-------------R2--------------| | | |||
| +-----+ +-----+ | +-----+ +-----+ | |||
| Static Singly Homed Host | ||||
| The initiator would then send an I1 to the responder's IP addresses | The initiator would then send an I1 to the responder's IP addresses | |||
| (IP-R.) | (IP-R). | |||
| 3.2. Mobile end-host | 3.2. Mobile end-host | |||
| A mobile HIP node (R) wishing to be reachable by reference to its | A mobile HIP node (R) wishing to be reachable by reference to its | |||
| FQDN (www.example.com) would store in the DNS, possibly in addition | FQDN (www.example.com) would store in the DNS, possibly in addition | |||
| to its IP address(es) (IP-R), its HI (HI-R), HIT (HIT-R) and the | to its IP address(es) (IP-R), its HI (HI-R), HIT (HIT-R) and the | |||
| domain name(s) of its rendezvous server(s) (rvs.example.com) in HIP | domain name(s) of its rendezvous server(s) (e.g. rvs.example.com) in | |||
| resource record(s). The mobile HIP node also needs to notify its | HIP resource record(s). The mobile HIP node also needs to notify its | |||
| rendezvous servers of any change in its set of IP address(es). | rendezvous servers of any change in its set of IP address(es). | |||
| An initiator willing to associate with such mobile node would | An initiator willing to associate with such mobile node would | |||
| typically issue the following queries: | typically issue the following queries: | |||
| QNAME=www.example.com, QTYPE=HIP | o QNAME=www.example.com, QTYPE=HIP | |||
| Which returns a DNS packet with RCODE=0 and one or more HIP RRs with | Which returns a DNS packet with RCODE=0 and one or more HIP RRs with | |||
| the HIT, HI and RVS domain name(s) (e.g. HIT-R, HI-R, and | the HIT, HI and RVS domain name(s) (e.g. HIT-R, HI-R, and | |||
| rvs.example.com) of the responder in the answer section. | rvs.example.com) of the responder in the answer section. | |||
| QNAME=rvs.example.com, QTYPE=A | o QNAME=rvs.example.com, QTYPE=A QNAME=www.example.com, QTYPE=AAAA | |||
| Which returns a DNS packet with RCODE=0 and one or more A or AAAA RRs | Which returns DNS packets with RCODE=0 and one or more A or AAAA RRs | |||
| containing IP address(es) of the responder's RVS (e.g. IP-RVS) in | containing IP address(es) of the responder's RVS (e.g. IP-RVS) in | |||
| the answer section. | the answer section. | |||
| [HIP? ] | [HIP? ] | |||
| [www.example.com] | [www.example.com] | |||
| [A? ] | [A? ] | |||
| [rvs.example.com] +-----+ | [rvs.example.com] +-----+ | |||
| +----------------------------------------->| | | +----------------------------------------->| | | |||
| | | DNS | | | | DNS | | |||
| skipping to change at page 8, line 35 ¶ | skipping to change at page 8, line 40 ¶ | |||
| | | | +-----+ | | | | | +-----+ | | |||
| | | | | | | | | | | |||
| | | | | | | | | | | |||
| | v | v | | v | v | |||
| +-----+ +-----+ | +-----+ +-----+ | |||
| | |<---------------R1------------| | | | |<---------------R1------------| | | |||
| | I |----------------I2----------->| R | | | I |----------------I2----------->| R | | |||
| | |<---------------R2------------| | | | |<---------------R2------------| | | |||
| +-----+ +-----+ | +-----+ +-----+ | |||
| The initiator would then send an I1 to the RVS IP address (IP-RVS.) | Mobile End-Host | |||
| The initiator would then send an I1 to the RVS IP address (IP-RVS). | ||||
| Following, the RVS will relay the I1 up to the mobile node's IP | Following, the RVS will relay the I1 up to the mobile node's IP | |||
| address (IP-R), which will complete the HIP exchange. | address (IP-R), which will complete the HIP exchange. | |||
| 4. Overview of using the DNS with HIP | 4. Overview of using the DNS with HIP | |||
| 4.1. Storing HI, HIT and RVS in DNS | 4.1. Storing HI, HIT and RVS in the DNS | |||
| Any conforming implementation may store a Host Identity (HI) and its | For any HIP node its Host Identity (HI), the associated Host Identity | |||
| associated Host Identity Tag (HIT) in a DNS HIP RDATA format. If a | Tag (HIT), and the FQDN of its possible RVSs can be stored in a DNS | |||
| particular form of an HI does not already have a specified RDATA | HIP RR. Any conforming implementation may store a Host Identity (HI) | |||
| format, a new RDATA-like format SHOULD be defined for the HI. HI and | and its associated Host Identity Tag (HIT) in a DNS HIP RDATA format. | |||
| HIT are defined in Section 3 of [I-D.ietf-hip-base]. | HI and HIT are defined in Section 3 of [I-D.ietf-hip-base]. | |||
| Upon return of a HIP RR, a host MUST always calculate the HI- | Upon return of a HIP RR, a host MUST always calculate the HI- | |||
| derivative HIT to be used in the HIP exchange, as specified in | derivative HIT to be used in the HIP exchange, as specified in | |||
| Section 3 of the HIP base specification [I-D.ietf-hip-base], while | Section 3 of the HIP base specification [I-D.ietf-hip-base], while | |||
| the HIT possibly embedded along SHOULD only be used as an | the HIT possibly embedded along SHOULD only be used as an | |||
| optimization (e.g. table lookup.) | optimization (e.g. table lookup). | |||
| The HIP resource record may also contain one or more domain name(s) | The HIP resource record may also contain one or more domain name(s) | |||
| of rendezvous server(s) towards which HIP I1 packets might be sent to | of rendezvous server(s) towards which HIP I1 packets might be sent to | |||
| trigger the establishment of an association with the entity named by | trigger the establishment of an association with the entity named by | |||
| this resource record [I-D.ietf-hip-rvs]. | this resource record [I-D.ietf-hip-rvs]. | |||
| The rendezvous server field of the HIP resource record stored at a | The rendezvous server field of the HIP resource record stored at a | |||
| given domain name MAY include the domain name itself. A semantically | given owner name MAY include the owner name itself. A semantically | |||
| equivalent situation occurs if no rendezvous server is stored in the | equivalent situation occurs if no rendezvous server is present in the | |||
| HIP resource record of that domain. Such situations occurs in two | HIP resource record stored at that owner name. Such situations | |||
| cases: | occurs in two cases: | |||
| o The host is mobile, and the A and/or AAAA resource record(s) | o The host is mobile, and the A and/or AAAA resource record(s) | |||
| stored at its domain name contains the IP address(es) of its | stored at its host name contains the IP address(es) of its | |||
| rendezvous server rather than its own one. | rendezvous server rather than its own one. | |||
| o The host is stationary, and can be reached directly at IP | o The host is stationary, and can be reached directly at IP | |||
| address(es) contained in A and/or AAAA resource record(s) stored | address(es) contained in A and/or AAAA resource record(s) stored | |||
| at its domain name. This a degenerated case of rendezvous service | at its host name. This a degenerated case of rendezvous service | |||
| where the host somewhat acts as a rendezvous server for itself. | where the host somewhat acts as a rendezvous server for itself. | |||
| An RVS receiving such an I1 would then relay it to the appropriate | An RVS receiving such an I1 would then relay it to the appropriate | |||
| responder (the owner of the I1 receiver HIT.) The responder will | responder (the owner of the I1 receiver HIT). The responder will | |||
| then complete the exchange with the initiator, typically without | then complete the exchange with the initiator, typically without | |||
| ongoing help from the RVS. | ongoing help from the RVS. | |||
| 4.2. Initiating connections based on DNS names | 4.2. Initiating connections based on DNS names | |||
| On a HIP node, a Host Identity Protocol exchange SHOULD be initiated | On a HIP node, a Host Identity Protocol exchange SHOULD be initiated | |||
| whenever an Upper Layer Protocol attempts to communicate with an | whenever an ULP attempts to communicate with an entity and the DNS | |||
| entity and the DNS lookup returns HIP resource records. | lookup returns HIP resource records. | |||
| 5. HIP RR Storage Format | 5. HIP RR Storage Format | |||
| The RDATA for a HIP RR consists of a public key algorithm type, the | The RDATA for a HIP RR consists of a public key algorithm type, the | |||
| HIT length, a HIT, a public key, and optionally one or more | HIT length, a HIT, a public key, and optionally one or more | |||
| rendezvous server(s). | rendezvous server(s). | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| skipping to change at page 10, line 48 ¶ | skipping to change at page 10, line 48 ¶ | |||
| 5.1. HIT length format | 5.1. HIT length format | |||
| The HIT length indicates the length in bytes of the HIT field. This | The HIT length indicates the length in bytes of the HIT field. This | |||
| is an 8 bits unsigned integer. | is an 8 bits unsigned integer. | |||
| 5.2. PK algorithm format | 5.2. PK algorithm format | |||
| The PK algorithm field indicates the public key cryptographic | The PK algorithm field indicates the public key cryptographic | |||
| algorithm and the implied public key field format. This is an 8 bits | algorithm and the implied public key field format. This is an 8 bits | |||
| unsigned integer. This document reuses the values defined for the | unsigned integer. This document reuses the values defined for the | |||
| 'algorithm type' of the IPSECKEY RR [RFC4025] 'gateway type' field. | 'algorithm type' of the IPSECKEY RR [RFC4025]. | |||
| The presently defined values are shown here for reference: | ||||
| 1 A DSA key is present, in the format defined in RFC2536 | ||||
| [RFC2536]. | ||||
| 2 A RSA key is present, in the format defined in RFC3110 | Presently defined values are listed in Section 9 for reference. | |||
| [RFC3110]. | ||||
| 5.3. PK length format | 5.3. PK length format | |||
| The PK length indicates the length in bytes of the Public key field. | The PK length indicates the length in bytes of the Public key field. | |||
| This is a 16 bits unsigned integer in network byte order. | This is a 16 bits unsigned integer in network byte order. | |||
| 5.4. HIT format | 5.4. HIT format | |||
| The HIT is stored, as a binary value, in network byte order. | The HIT is stored, as a binary value, in network byte order. | |||
| 5.5. Public key format | 5.5. Public key format | |||
| Both of the public key types defined in this document (RSA and DSA) | Both of the public key types defined in this document (RSA and DSA) | |||
| reuse the public key formats defined for the IPSECKEY RR [RFC4025] | reuse the public key formats defined for the IPSECKEY RR [RFC4025]. | |||
| (which in turns contains the algorithm-specific portion of the KEY RR | ||||
| RDATA, all of the KEY RR DATA after the first four octets, | ||||
| corresponding to the same portion of the KEY RR that must be | ||||
| specified by documents that define a DNSSEC algorithm.) | ||||
| In the future, if a new algorithm is to be used both by IPSECKEY RR | ||||
| and HIP RR, it should use the same public key encoding for both RRs. | ||||
| Unless specified otherwise, the HIP RR public key field SHOULD use | ||||
| the same public key format as the IPSECKEY RR RDATA for the | ||||
| corresponding algorithm. | ||||
| The DSA key format is defined in RFC2536 [RFC2536]. | The DSA key format is defined in RFC2536 [RFC2536]. | |||
| The RSA key format is defined in RFC3110 [RFC3110] and the RSA key | The RSA key format is defined in RFC3110 [RFC3110] and the RSA key | |||
| size limit (4096 bits) is relaxed in the IPSECKEY RR [RFC4025] | size limit (4096 bits) is relaxed in the IPSECKEY RR [RFC4025] | |||
| specification. | specification. | |||
| 5.6. Rendezvous servers format | 5.6. Rendezvous servers format | |||
| The Rendezvous servers field indicates one or more variable length | The Rendezvous servers field indicates one or more variable length | |||
| wire-encoded domain names rendezvous server(s), as described in | wire-encoded domain names of rendezvous server(s), as described in | |||
| Section 3.3 of RFC1035 [RFC1035]. The wire-encoded format is self- | Section 3.3 of RFC1035 [RFC1035]. The wire-encoded format is self- | |||
| describing, so the length is implicit. The domain names MUST NOT be | describing, so the length is implicit. The domain names MUST NOT be | |||
| compressed. The rendezvous server(s) are listed in order of | compressed. The rendezvous server(s) are listed in order of | |||
| preference (i.e. first rendezvous server(s) are preferred). | preference (i.e. first rendezvous server(s) are preferred), defining | |||
| an implicit order amongst rendezvous server of a single RR. When | ||||
| multiple HIP RRs are present at the same owner name, this implicit | ||||
| order of rendezvous servers within an RR MUST NOT be used to infer a | ||||
| preference order between rendezvous servers stored in different RRs. | ||||
| 6. HIP RR Presentation Format | 6. HIP RR Presentation Format | |||
| This section specifies the representation of the HIP RR in a zone | This section specifies the representation of the HIP RR in a zone | |||
| data master file. | master file. | |||
| The HIT length field is not represented as it is implicitly known | The HIT length field is not represented as it is implicitly known | |||
| thanks to the HIT field representation. | thanks to the HIT field representation. | |||
| The PK algorithm field is represented as unsigned integers. | The PK algorithm field is represented as unsigned integers. | |||
| The PK length field is not represented as it is implicitly known | ||||
| thanks to the Public key field representation. | ||||
| The HIT field is represented as the Base16 encoding [RFC4648] (a.k.a. | The HIT field is represented as the Base16 encoding [RFC4648] (a.k.a. | |||
| hex or hexadecimal) of the HIT. The encoding MUST NOT contain | hex or hexadecimal) of the HIT. The encoding MUST NOT contain | |||
| whitespace(s). | whitespaces to be able to distinguish it from the public key field. | |||
| The Public Key field is represented as the Base64 encoding [RFC4648] | The Public Key field is represented as the Base64 encoding [RFC4648] | |||
| of the public key. The encoding MAY contain whitespace(s), and such | of the public key. The encoding MUST NOT contain whitespace(s) to be | |||
| whitespace(s) MUST be ignored. | able to distinguish from the Rendezvous Servers field. | |||
| The Rendezvous servers field is represented by one or more | The PK length field is not represented as it is implicitly known | |||
| uncompressed domain name(s) | thanks to the Public key field representation containing no | |||
| whitespaces. | ||||
| The Rendezvous Servers field is represented by one or more domain | ||||
| name(s) separated by whitespace(s). | ||||
| The complete representation of the HPIHI record is: | The complete representation of the HPIHI record is: | |||
| IN HIP ( pk-algorithm | IN HIP ( pk-algorithm | |||
| base16-encoded-hit | base16-encoded-hit | |||
| base64-encoded-public-key | base64-encoded-public-key | |||
| rendezvous-server[1] | rendezvous-server[1] | |||
| ... | ... | |||
| rendezvous-server[n] ) | rendezvous-server[n] ) | |||
| When no RVS are present, the representation of the HPIHI record is: | ||||
| IN HIP ( pk-algorithm | ||||
| base16-encoded-hit | ||||
| base64-encoded-public-key ) | ||||
| 7. Examples | 7. Examples | |||
| In the examples below, the public key field containing no whitespace | ||||
| is wrapped since it does not fit in a single line of this document. | ||||
| Example of a node with HI and HIT but no RVS: | Example of a node with HI and HIT but no RVS: | |||
| www.example.com. IN HIP ( 2 4009D9BA7B1A74DF365639CC39F1D578 | www.example.com. IN HIP ( 2 200100107B1A74DF365639CC39F1D578 | |||
| AwEAAbdxyhNuSutc5EMzxTs9LBPCIkOFH8cIv | AwEAAbdxyhNuSutc5EMzxTs9LBPCIkOFH8cIvM4p | |||
| M4p9+LrV4e19WzK00+CI6zBCQTdtWsuxKbWIy | 9+LrV4e19WzK00+CI6zBCQTdtWsuxKbWIy87UOoJTwkUs7lBu+Upr1gsNrut79ryra+bSRGQ | |||
| 87UOoJTwkUs7lBu+Upr1gsNrut79ryra+bSRG | b1slImA8YVJyuIDsj7kwzG7jnERNqnWxZ48AWkskmdHaVDP4BcelrTI3rMXdXF5D ) | |||
| Qb1slImA8YVJyuIDsj7kwzG7jnERNqnWxZ48A | ||||
| WkskmdHaVDP4BcelrTI3rMXdXF5D ) | ||||
| Example of a node with a HI, HIT and one RVS: | Example of a node with a HI, HIT and one RVS: | |||
| www.example.com. IN HIP ( 2 4009D9BA7B1A74DF365639CC39F1D578 | www.example.com. IN HIP ( 2 200100107B1A74DF365639CC39F1D578 | |||
| AwEAAbdxyhNuSutc5EMzxTs9LBPCIkOFH8cIv | AwEAAbdxyhNuSutc5EMzxTs9LBPCIkOFH8cIvM4p | |||
| M4p9+LrV4e19WzK00+CI6zBCQTdtWsuxKbWIy | 9+LrV4e19WzK00+CI6zBCQTdtWsuxKbWIy87UOoJTwkUs7lBu+Upr1gsNrut79ryra+bSRGQ | |||
| 87UOoJTwkUs7lBu+Upr1gsNrut79ryra+bSRG | b1slImA8YVJyuIDsj7kwzG7jnERNqnWxZ48AWkskmdHaVDP4BcelrTI3rMXdXF5D | |||
| Qb1slImA8YVJyuIDsj7kwzG7jnERNqnWxZ48A | rvs.example.com. ) | |||
| WkskmdHaVDP4BcelrTI3rMXdXF5D | ||||
| rvs.example.com ) | ||||
| Example of a node with a HI, HIT and two RVS: | Example of a node with a HI, HIT and two RVS: | |||
| www.example.com. IN HIP ( 2 4009D9BA7B1A74DF365639CC39F1D578 | www.example.com. IN HIP ( 2 200100107B1A74DF365639CC39F1D578 | |||
| AwEAAbdxyhNuSutc5EMzxTs9LBPCIkOFH8cIv | AwEAAbdxyhNuSutc5EMzxTs9LBPCIkOFH8cIvM4p | |||
| M4p9+LrV4e19WzK00+CI6zBCQTdtWsuxKbWIy | 9+LrV4e19WzK00+CI6zBCQTdtWsuxKbWIy87UOoJTwkUs7lBu+Upr1gsNrut79ryra+bSRGQ | |||
| 87UOoJTwkUs7lBu+Upr1gsNrut79ryra+bSRG | b1slImA8YVJyuIDsj7kwzG7jnERNqnWxZ48AWkskmdHaVDP4BcelrTI3rMXdXF5D | |||
| Qb1slImA8YVJyuIDsj7kwzG7jnERNqnWxZ48A | rvs1.example.com. | |||
| WkskmdHaVDP4BcelrTI3rMXdXF5D | rvs2.example.com. ) | |||
| rvs1.example.com | ||||
| rvs2.example.com ) | ||||
| 8. Security Considerations | 8. Security Considerations | |||
| Though the security considerations of the HIP DNS extensions still | This section contains a description of the known threats involved | |||
| need to be more investigated and documented, this section contains a | with the usage of the HIP DNS extensions. | |||
| description of the known threats involved with the usage of the HIP | ||||
| DNS extensions. | ||||
| In a manner similar to the IPSECKEY RR [RFC4025], the HIP DNS | In a manner similar to the IPSECKEY RR [RFC4025], the HIP DNS | |||
| Extensions allows to provision two HIP nodes with the public keying | Extensions allows to provision two HIP nodes with the public keying | |||
| material (HI) of their peer. These HIs will be subsequently used in | material (HI) of their peer. These HIs will be subsequently used in | |||
| a key exchange between the peers. Hence, the HIP DNS Extensions | a key exchange between the peers. Hence, the HIP DNS Extensions | |||
| introduce the same kind of threats that IPSECKEY does, plus threats | introduce the same kind of threats that IPSECKEY does, plus threats | |||
| caused by the possibility given to a HIP node to initiate or accept a | caused by the possibility given to a HIP node to initiate or accept a | |||
| HIP exchange using "opportunistic" or "unpublished initiator HI" | HIP exchange using "opportunistic" or "unpublished initiator HI" | |||
| modes. | modes. | |||
| A HIP node SHOULD obtain HIP RRs from a trusted party trough a secure | A HIP node SHOULD obtain HIP RRs from a trusted party trough a secure | |||
| channel insuring proper data integrity of the RRs. DNSSEC [RFC4033] | channel insuring data integrity and authenticity of the RRs. DNSSEC | |||
| [RFC4034] [RFC4035] provides such a secure channel. | [RFC4033] [RFC4034] [RFC4035] provides such a secure channel. | |||
| However, it should be emphasized that DNSSEC does only offer data | ||||
| integrity and authenticty guarantees to the channel between the DNS | ||||
| server publishing a zone and the HIP node. DNSSEC does not ensure | ||||
| that the entity publishing the zone is trusted. Therefore, the RRSIG | ||||
| signature of the HIP RRSet MUST NOT be misinterpreted as a | ||||
| certificate binding the HI and/or the HIT to the owner name. | ||||
| In the absence of a proper secure channel, both parties are | In the absence of a proper secure channel, both parties are | |||
| vulnerable to MitM and DoS attacks, and unrelated parties might be | vulnerable to MitM and DoS attacks, and unrelated parties might be | |||
| subject to DoS attacks as well. These threats are described in the | subject to DoS attacks as well. These threats are described in the | |||
| following sections. | following sections. | |||
| 8.1. Attacker tampering with an insecure HIP RR | 8.1. Attacker tampering with an insecure HIP RR | |||
| The HIP RR contains public keying material in the form of the named | The HIP RR contains public keying material in the form of the named | |||
| peer's public key (the HI) and its secure hash (the HIT.) Both of | peer's public key (the HI) and its secure hash (the HIT). Both of | |||
| these are not sensitive to attacks where an adversary gains knowledge | these are not sensitive to attacks where an adversary gains knowledge | |||
| of them. However, an attacker that is able to mount an active attack | of them. However, an attacker that is able to mount an active attack | |||
| on the DNS, i.e., tampers with this HIP RR (e.g. using DNS spoofing) | on the DNS, i.e., tampers with this HIP RR (e.g. using DNS spoofing) | |||
| is able to mount Man-in-the-Middle attacks on the cryptographic core | is able to mount Man-in-the-Middle attacks on the cryptographic core | |||
| of the eventual HIP exchange (responder's HIP RR rewritten by the | of the eventual HIP exchange (responder's HIP RR rewritten by the | |||
| attacker.) | attacker). | |||
| The HIP RR may contain a rendezvous server domain name resolved into | The HIP RR may contain a rendezvous server domain name resolved into | |||
| a destination IP address where the named peer is reachable by an I1 | a destination IP address where the named peer is reachable by an I1 | |||
| (HIP Rendezvous Extensions IPSECKEY RR [I-D.ietf-hip-rvs].) Thus, an | (HIP Rendezvous Extensions IPSECKEY RR [I-D.ietf-hip-rvs]). Thus, an | |||
| attacker able to tamper with this RR is able to redirect I1 packets | attacker able to tamper with this RR is able to redirect I1 packets | |||
| sent to the named peer to a chosen IP address, for DoS or MitM | sent to the named peer to a chosen IP address, for DoS or MitM | |||
| attacks. Note that this kind of attack is not specific to HIP and | attacks. Note that this kind of attack is not specific to HIP and | |||
| exists independently to whether or not HIP and the HIP RR are used. | exists independently of whether or not HIP and the HIP RR are used. | |||
| Such an attacker might tamper with A and AAAA RRs as well. | Such an attacker might tamper with A and AAAA RRs as well. | |||
| An attacker might obviously use these two attacks in conjunction: It | An attacker might obviously use these two attacks in conjunction: It | |||
| will replace the responder's HI and RVS IP address by its owns in a | will replace the responder's HI and RVS IP address by its own in a | |||
| spoofed DNS packet sent to the initiator HI, then redirect all | spoofed DNS packet sent to the initiator HI, then redirect all | |||
| exchanged packets to him and mount a MitM on HIP. In this case HIP | exchanged packets to him and mount a MitM on HIP. In this case HIP | |||
| won't provide confidentiality nor initiator HI protection from | won't provide confidentiality nor initiator HI protection from | |||
| eavesdroppers. | eavesdroppers. | |||
| 8.2. Hash and HITs Collisions | 8.2. Hash and HITs Collisions | |||
| As many cryptographic algorithm, some secure hashes (e.g. SHA1, used | As many cryptographic algorithms, some secure hashes (e.g. SHA1, | |||
| by HIP to generate a HIT from an HI) eventually become insecure, | used by HIP to generate a HIT from an HI) eventually become insecure, | |||
| because an exploit has been found in which an attacker with a | because an exploit has been found in which an attacker with a | |||
| reasonable computation power breaks one of the security features of | reasonable computation power breaks one of the security features of | |||
| the hash (e.g. its supposed collision resistance.) This is why a HIP | the hash (e.g. its supposed collision resistance). This is why a HIP | |||
| end-node implementation SHOULD NOT authenticate its HIP peers based | end-node implementation SHOULD NOT authenticate its HIP peers based | |||
| solely on a HIT retrieved from DNS, but SHOULD rather use HI-based | solely on a HIT retrieved from the DNS, but SHOULD rather use HI- | |||
| authentication. | based authentication. | |||
| 8.3. DNSSEC | 8.3. DNSSEC | |||
| In the absence of DNSSEC, the HIP RR is subject to the threats | In the absence of DNSSEC, the HIP RR is subject to the threats | |||
| described in RFC 3833 [RFC3833]. | described in RFC 3833 [RFC3833]. | |||
| 9. IANA Considerations | 9. IANA Considerations | |||
| IANA should allocate one new RR type code (TBD, 55?) for the HIP RR | IANA should allocate one new RR type code (TBD, 55?) for the HIP RR | |||
| from the standard RR type space. | from the standard RR type space. | |||
| IANA does not need to open a new registry for public key algorithms | IANA does not need to open a new registry for public key algorithms | |||
| of the HIP RR because the HIP RR reuses "algorithms types" defined | of the HIP RR because the HIP RR reuses "algorithms types" defined | |||
| for the IPSECKEY RR [RFC4025]. The presently defined values are | for the IPSECKEY RR [RFC4025]. Presently defined values are shown | |||
| shown here for reference: | here for reference only: | |||
| 0 is reserved | 0 is reserved | |||
| 1 is RSA | 1 is RSA | |||
| 2 is DSA | 2 is DSA | |||
| In the future, if a new algorithm is to be used for the HIP RR, a new | ||||
| algorithm type and corresponding public key encoding should be | ||||
| defined for the IPSECKEY RR. The HIP RR should reuse both the same | ||||
| algorithm type and the same corresponding public key format as the | ||||
| IPSECKEY RR. | ||||
| 10. Acknowledgments | 10. Acknowledgments | |||
| As usual in the IETF, this document is the result of a collaboration | As usual in the IETF, this document is the result of a collaboration | |||
| between many people. The authors would like to thanks the author | between many people. The authors would like to thanks the author | |||
| (Michael Richardson), contributors and reviewers of the IPSECKEY RR | (Michael Richardson), contributors and reviewers of the IPSECKEY RR | |||
| [RFC4025] specification, which this document was framed after. The | [RFC4025] specification, which this document was framed after. The | |||
| authors would also like to thanks the following people, who have | authors would also like to thanks the following people, who have | |||
| provided thoughtful and helpful discussions and/or suggestions, that | provided thoughtful and helpful discussions and/or suggestions, that | |||
| have helped improving this document: Jeff Ahrenholz, Rob Austein, | have helped improving this document: Jeff Ahrenholz, Rob Austein, | |||
| Hannu Flinck, Tom Henderson, Olaf Kolkman, Miika Komu, Andrew | Hannu Flinck, Olafur Gu[eth]mundsson, Tom Henderson, Peter Koch, Olaf | |||
| McGregor, Erik Nordmark, and Gabriel Montenegro. Some parts of this | Kolkman, Miika Komu, Andrew McGregor, Erik Nordmark, and Gabriel | |||
| draft stem from [I-D.ietf-hip-base]. | Montenegro. Some parts of this document stem from | |||
| [I-D.ietf-hip-base]. | ||||
| Julien Laganier is partly funded by Ambient Networks, a research | Julien Laganier is partly funded by Ambient Networks, a research | |||
| project supported by the European Commission under its Sixth | project supported by the European Commission under its Sixth | |||
| Framework Program. The views and conclusions contained herein are | Framework Program. The views and conclusions contained herein are | |||
| those of the authors and should not be interpreted as necessarily | those of the authors and should not be interpreted as necessarily | |||
| representing the official policies or endorsements, either expressed | representing the official policies or endorsements, either expressed | |||
| or implied, of the Ambient Networks project or the European | or implied, of the Ambient Networks project or the European | |||
| Commission. | Commission. | |||
| 11. References | 11. References | |||
| skipping to change at page 18, line 18 ¶ | skipping to change at page 18, line 18 ¶ | |||
| [RFC1034] Mockapetris, P., "Domain names - concepts and facilities", | [RFC1034] Mockapetris, P., "Domain names - concepts and facilities", | |||
| STD 13, RFC 1034, November 1987. | STD 13, RFC 1034, November 1987. | |||
| [RFC1035] Mockapetris, P., "Domain names - implementation and | [RFC1035] Mockapetris, P., "Domain names - implementation and | |||
| specification", STD 13, RFC 1035, November 1987. | specification", STD 13, RFC 1035, November 1987. | |||
| [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
| Requirement Levels", BCP 14, RFC 2119, March 1997. | Requirement Levels", BCP 14, RFC 2119, March 1997. | |||
| [RFC2536] Eastlake, D., "DSA KEYs and SIGs in the Domain Name System | [RFC2181] Elz, R. and R. Bush, "Clarifications to the DNS | |||
| (DNS)", RFC 2536, March 1999. | Specification", RFC 2181, July 1997. | |||
| [RFC3110] Eastlake, D., "RSA/SHA-1 SIGs and RSA KEYs in the Domain | ||||
| Name System (DNS)", RFC 3110, May 2001. | ||||
| [RFC3596] Thomson, S., Huitema, C., Ksinant, V., and M. Souissi, | [RFC3596] Thomson, S., Huitema, C., Ksinant, V., and M. Souissi, | |||
| "DNS Extensions to Support IP Version 6", RFC 3596, | "DNS Extensions to Support IP Version 6", RFC 3596, | |||
| October 2003. | October 2003. | |||
| [RFC4025] Richardson, M., "A Method for Storing IPsec Keying | [RFC4025] Richardson, M., "A Method for Storing IPsec Keying | |||
| Material in DNS", RFC 4025, March 2005. | Material in DNS", RFC 4025, March 2005. | |||
| [RFC4033] Arends, R., Austein, R., Larson, M., Massey, D., and S. | [RFC4033] Arends, R., Austein, R., Larson, M., Massey, D., and S. | |||
| Rose, "DNS Security Introduction and Requirements", | Rose, "DNS Security Introduction and Requirements", | |||
| skipping to change at page 18, line 48 ¶ | skipping to change at page 18, line 45 ¶ | |||
| [RFC4035] Arends, R., Austein, R., Larson, M., Massey, D., and S. | [RFC4035] Arends, R., Austein, R., Larson, M., Massey, D., and S. | |||
| Rose, "Protocol Modifications for the DNS Security | Rose, "Protocol Modifications for the DNS Security | |||
| Extensions", RFC 4035, March 2005. | Extensions", RFC 4035, March 2005. | |||
| [RFC4648] Josefsson, S., "The Base16, Base32, and Base64 Data | [RFC4648] Josefsson, S., "The Base16, Base32, and Base64 Data | |||
| Encodings", RFC 4648, October 2006. | Encodings", RFC 4648, October 2006. | |||
| [I-D.ietf-hip-base] | [I-D.ietf-hip-base] | |||
| Moskowitz, R., "Host Identity Protocol", | Moskowitz, R., "Host Identity Protocol", | |||
| draft-ietf-hip-base-06 (work in progress), June 2006. | draft-ietf-hip-base-07 (work in progress), February 2007. | |||
| [I-D.ietf-hip-rvs] | [I-D.ietf-hip-rvs] | |||
| Laganier, J. and L. Eggert, "Host Identity Protocol (HIP) | Laganier, J. and L. Eggert, "Host Identity Protocol (HIP) | |||
| Rendezvous Extension", draft-ietf-hip-rvs-05 (work in | Rendezvous Extension", draft-ietf-hip-rvs-05 (work in | |||
| progress), June 2006. | progress), June 2006. | |||
| 11.2. Informative references | 11.2. Informative references | |||
| [RFC2536] Eastlake, D., "DSA KEYs and SIGs in the Domain Name System | ||||
| (DNS)", RFC 2536, March 1999. | ||||
| [RFC3110] Eastlake, D., "RSA/SHA-1 SIGs and RSA KEYs in the Domain | ||||
| Name System (DNS)", RFC 3110, May 2001. | ||||
| [RFC4423] Moskowitz, R. and P. Nikander, "Host Identity Protocol | [RFC4423] Moskowitz, R. and P. Nikander, "Host Identity Protocol | |||
| (HIP) Architecture", RFC 4423, May 2006. | (HIP) Architecture", RFC 4423, May 2006. | |||
| [I-D.ietf-hip-mm] | [I-D.ietf-hip-mm] | |||
| Nikander, P., "End-Host Mobility and Multihoming with the | Henderson, T., "End-Host Mobility and Multihoming with the | |||
| Host Identity Protocol", draft-ietf-hip-mm-04 (work in | Host Identity Protocol", draft-ietf-hip-mm-05 (work in | |||
| progress), June 2006. | progress), March 2007. | |||
| [RFC3833] Atkins, D. and R. Austein, "Threat Analysis of the Domain | [RFC3833] Atkins, D. and R. Austein, "Threat Analysis of the Domain | |||
| Name System (DNS)", RFC 3833, August 2004. | Name System (DNS)", RFC 3833, August 2004. | |||
| Authors' Addresses | Authors' Addresses | |||
| Pekka Nikander | Pekka Nikander | |||
| Ericsson Research Nomadic Lab | Ericsson Research Nomadic Lab | |||
| JORVAS FIN-02420 | JORVAS FIN-02420 | |||
| FINLAND | FINLAND | |||
| skipping to change at page 21, line 5 ¶ | skipping to change at page 21, line 5 ¶ | |||
| Julien Laganier | Julien Laganier | |||
| DoCoMo Communications Laboratories Europe GmbH | DoCoMo Communications Laboratories Europe GmbH | |||
| Landsberger Strasse 312 | Landsberger Strasse 312 | |||
| Munich 80687 | Munich 80687 | |||
| Germany | Germany | |||
| Phone: +49 89 56824 231 | Phone: +49 89 56824 231 | |||
| Email: julien.ietf@laposte.net | Email: julien.ietf@laposte.net | |||
| URI: http://www.docomolab-euro.com/ | URI: http://www.docomolab-euro.com/ | |||
| Intellectual Property Statement | Full Copyright Statement | |||
| Copyright (C) The IETF Trust (2007). | ||||
| This document is subject to the rights, licenses and restrictions | ||||
| contained in BCP 78, and except as set forth therein, the authors | ||||
| retain all their rights. | ||||
| This document and the information contained herein are provided on an | ||||
| "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS | ||||
| OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND | ||||
| THE INTERNET ENGINEERING TASK FORCE DISCLAIM 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. | ||||
| Intellectual Property | ||||
| The IETF takes no position regarding the validity or scope of any | The IETF takes no position regarding the validity or scope of any | |||
| Intellectual Property Rights or other rights that might be claimed to | Intellectual Property Rights or other rights that might be claimed to | |||
| pertain to the implementation or use of the technology described in | pertain to the implementation or use of the technology described in | |||
| this document or the extent to which any license under such rights | this document or the extent to which any license under such rights | |||
| might or might not be available; nor does it represent that it has | might or might not be available; nor does it represent that it has | |||
| made any independent effort to identify any such rights. Information | made any independent effort to identify any such rights. Information | |||
| on the procedures with respect to rights in RFC documents can be | on the procedures with respect to rights in RFC documents can be | |||
| found in BCP 78 and BCP 79. | found in BCP 78 and BCP 79. | |||
| skipping to change at page 21, line 29 ¶ | skipping to change at page 21, line 45 ¶ | |||
| such proprietary rights by implementers or users of this | such proprietary rights by implementers or users of this | |||
| specification can be obtained from the IETF on-line IPR repository at | specification can be obtained from the IETF on-line IPR repository at | |||
| http://www.ietf.org/ipr. | http://www.ietf.org/ipr. | |||
| The IETF invites any interested party to bring to its attention any | The IETF invites any interested party to bring to its attention any | |||
| copyrights, patents or patent applications, or other proprietary | copyrights, patents or patent applications, or other proprietary | |||
| rights that may cover technology that may be required to implement | rights that may cover technology that may be required to implement | |||
| this standard. Please address the information to the IETF at | this standard. Please address the information to the IETF at | |||
| ietf-ipr@ietf.org. | ietf-ipr@ietf.org. | |||
| Disclaimer of Validity | ||||
| This document and the information contained herein are provided on an | ||||
| "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS | ||||
| OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET | ||||
| ENGINEERING TASK FORCE DISCLAIM 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. | ||||
| Copyright Statement | ||||
| Copyright (C) The Internet Society (2006). This document is subject | ||||
| to the rights, licenses and restrictions contained in BCP 78, and | ||||
| except as set forth therein, the authors retain all their rights. | ||||
| Acknowledgment | Acknowledgment | |||
| Funding for the RFC Editor function is currently provided by the | Funding for the RFC Editor function is provided by the IETF | |||
| Internet Society. | Administrative Support Activity (IASA). | |||
| End of changes. 76 change blocks. | ||||
| 166 lines changed or deleted | 183 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||