RFC 4620

IPv6 Node Information Queries

๐Ÿ“… published August 2006, from ietf

๐ŸŽ€ RFC 4620: IPv6 Node Information Queries ๐ŸŽ€

Okay bestie, this is RFC 4620, called IPv6 Node Information Queries ๐Ÿ’– It was written by M. Crawford from Fermilab and B. Haberman, Ed. from JHU APL, and it's dated August 2006. The category is Experimental. The title block doesn't say it obsoletes or updates anything, so it's a standalone vibe ๐Ÿฆ‹

Status of This Memo โœจ

So this memo defines an Experimental Protocol for the Internet community. It is not an Internet standard of any kind ๐Ÿงช They're asking for discussion and suggestions for improvement, and distribution of the memo is unlimited, so share away ๐Ÿ’…

Copyright (C) The Internet Society (2006).

Abstract ๐Ÿ’œ

This doc is about a protocol for asking an IPv6 node to hand over some network info, like its hostname or fully-qualified domain name ๐Ÿงš IPv6 implementers found that asking a node directly for its hostname is super useful. A direct query mechanism for other info has also been helpful in serverless environments and for debugging, which is honestly iconic ๐Ÿ‘‘

Table of Contents ๐Ÿ“

   1. Introduction ....................................................2
   2. Applicability Statement .........................................2
   3. Terminology .....................................................2
   4. Node Information Messages .......................................3
   5. Message Processing ..............................................5
   6. Defined Qtypes ..................................................6
      6.1. NOOP .......................................................7
      6.2. Node Name ..................................................7
      6.3. Node Addresses .............................................8
      6.4. IPv4 Addresses .............................................9
           6.4.1. Discussion ..........................................9
   7. IANA Considerations ............................................10
   8. Security Considerations ........................................10
   9. Acknowledgements ...............................................11
   10. References ....................................................11
      10.1. Normative References .....................................11
      10.2. Informative References ...................................12

1. Introduction โœจ

Okay so this doc specifies a way to discover info about names and addresses ๐Ÿ” Right now it's only meant for diagnostic and debugging tools and network management (think node discovery). In the global internet, the Domain Name System (DNS) [1][2] is the authoritative source for this stuff, and this spec is definitely not trying to replace it ๐Ÿ™…โ€โ™€๏ธ In a well-supported network, the names and addresses handled by this mechanism are the same ones, with the same relationships, as the ones listed in DNS. Literally the same tea โ˜•

This new Node Information protocol has features that DNS doesn't have, like finding out how addresses relate to each other without using names at all ๐Ÿฆ‹ The stuff that overlaps with DNS can still be useful in serverless environments, for debugging, or for link-local and unique-local addresses [3], which often aren't listed in DNS. Those ones are giving "hidden gem" energy ๐Ÿ’Ž

2. Applicability Statement ๐Ÿ’…

IPv6 Node Information Queries let you do forward and reverse name lookups without DNS, by sending packets straight to IPv6 nodes or to groups of nodes ๐Ÿซถ

Again, the applicability is limited to diagnostic and debugging tools and network management (e.g., node discovery). You can use these mechanisms to learn the addresses and names of nodes on the other end of a point-to-point link, or nodes on a shared-medium link like an Ethernet ๐ŸŒˆ This is super handy when you're debugging stuff or bringing up IPv6 service where there's no global routing or DNS name service around. IPv6's big auto-configured addresses make debugging and bringing up service really tough without these tools, so they're a whole lifesaver ๐Ÿ˜ญ An example of an IPv6 debugging tool that uses these queries is the ping6 program in the KAME (http://www.kame.net), USAGI, and other IPv6 implementations ๐Ÿงš

The mechanisms in this document might get wider use down the line, but anything beyond debugging and diagnostic tools is left for further study and is outside the scope of this document ๐Ÿ”ฎ

3. Terminology ๐Ÿง 

A "Node Information Query" (or "NI Query") message is sent by a "Querier" node to a "Responder" node, inside an ICMPv6 packet addressed to the "Queried Address" โœจ The Query has a "Subject Address" (which can differ from the Queried Address and can be an IPv6 or IPv4 address) or a "Subject Name". The Responder sends a "Node Information Reply" back to the Querier, with info tied to the node at the Queried Address. Even if a node doesn't send a reply, if it receives an NI Query it still counts as a Responder, bestie ๐Ÿ’€

The word "name" in this document means a hostname, with or without the domain ๐Ÿ“ When it matters, fully-qualified names and single-label names get called out separately.

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be read as described in [4]. Those are the official BCP 14 key words, so they really matter ๐Ÿ”ฅ

Packet fields marked "unused" must be zero on transmission and, aside from being included in checksums or message integrity checks, ignored on reception ๐Ÿ™ˆ

4. Node Information Messages ๐Ÿฆ‹

Two types of Node Information messages are carried in ICMPv6 [5] packets: the NI Query and the NI Reply ๐Ÿ’œ They have the same format, which is so clean ๐Ÿซถ

    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |     Type      |     Code      |           Checksum            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |             Qtype             |             Flags             |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   +                             Nonce                             +
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   /                             Data                              /
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                    Figure 1: Node Information Messages

Here's the field breakdown, bestie ๐Ÿ“‹

  • Type
    • 139 - NI Query
    • 140 - NI Reply
  • Code
    • For NI Query
      • 0 - Means the Data field holds an IPv6 address that is the Subject of this Query.
      • 1 - Means the Data field holds a name that is the Subject of this Query, or is empty, like in the case of a NOOP.
      • 2 - Means the Data field holds an IPv4 address that is the Subject of this Query.
    • For NI Reply
      • 0 - Means a successful reply. The Reply Data field may or may not be empty.
      • 1 - Means the Responder refuses to supply the answer. The Reply Data field will be empty.
      • 2 - Means the Qtype of the Query is unknown to the Responder. The Reply Data field will be empty.
  • Checksum - The ICMPv6 checksum.
  • Qtype - A 16-bit field that designates the type of info requested in a Query or supplied in a Reply. In a Reply, its value is always copied from the corresponding Query by the Responder. Five values of Qtype are specified in this document ๐Ÿ’…
  • Flags - Qtype-specific flags that may be defined for certain Query types and their Replies. Flags not defined for a given Qtype must be zero on transmission and ignored on reception, and must not be copied from a Query to a Reply unless the definition of the Qtype says so ๐Ÿซ 
  • Nonce - An opaque 64-bit field that helps avoid spoofing and/or helps match Replies with Queries ๐Ÿ” Its value in a Query is chosen by the Querier. Its value in a Reply is always copied from the corresponding Request by the Responder.
  • Data - In a Query, this is the Subject Address or Name. In a Reply, Qtype-specific data is only present when the ICMPv6 Code field is zero. The length of the Data can be inferred from the IPv6 header's Payload Length field [6], the length of the fixed portion of the NI packet, and the lengths of the ICMPv6 header and any intervening extension headers ๐Ÿงฎ

Note that the type of info in a Query's Data field is declared by the ICMP Code, whereas the type of info in a Reply's Data field (if there is any) is determined by the Qtype ๐Ÿง 

When the Subject of a Query is a name, the name MUST be in DNS wire format [2] ๐Ÿ“ The name can be either a fully-qualified domain name, including the terminating zero-length label, or a single DNS label followed by two zero-length labels. Since a Query contains at most one name, DNS name compression MUST NOT be used. No compression drama, no cap ๐Ÿ’–

5. Message Processing ๐Ÿซถ

okay so the Querier builds an ICMP NI Query and sends it to whatever address it wants info from ๐Ÿ“ฌ. If the Subject is an IPv6 address, that address is usually the IPv6 destination of the Query, but it doesn't have to be if the Querier already knows useful stuff about the target's addresses. An NI Query can also go to a link-local scope multicast address [3] ๐Ÿฆ‹.

When the Subject is a name (fully-qualified or single-component) and the Querier doesn't have a unicast address for the target, the query MUST be sent to a link-scope multicast address built like this ๐Ÿ’–. First the Subject Name gets converted to the canonical form from DNS Security [7], which means uncompressed with every alphabetic character in lowercase. (If new DNS label types or hostname character sets get defined later, their own specs will say how to canonicalize them ๐Ÿ“.) Then take the MD5 hash [8] of the first label of the Subject Name. That's the part starting at the first one-octet length field and running up to, but not including, any later length field. Grab the first 24 bits of that 128-bit hash and tack them onto the prefix FF02:0:0:0:0:2:FF00::/104. That address is the "NI Group Address" for the name, and a node supports one "NI Group Address" for each unique single-label name โœจ.

The Nonce MUST be a random or good pseudo-random value so spoofed replies don't sneak through ๐ŸŽ€. An implementation that lets several independent processes send NI Queries MAY use the Nonce to route Replies to the right process. Even so, those processes MUST check the Nonce they get back and ignore any extra Replies ๐Ÿ‘€.

If you need real communication security, IP Security (IPsec) [14] should be used ๐Ÿ”. Setting up the infrastructure to authenticate NI Queries and Replies can be pretty tricky outside a well-defined community, so yeah, it's a lot ๐Ÿ’€.

When a Responder gets an NI Query, it must check the Query's IPv6 destination address. If that address isn't one of the Responder's unicast or anycast addresses, and isn't a link-local scope multicast address the Responder has joined, the Responder must throw the Query away without doing anything else ๐Ÿ™…โ€โ™€๏ธ. Usually the joined multicast address is an NI Group Address for a name that belongs to the Responder ๐ŸŒธ. A node MAY be set up to discard NI Queries sent to multicast addresses other than its NI Group Address(es). If it does that, the default configuration SHOULD be to not discard them ๐Ÿ’….

A Responder must also silently discard any Query whose Subject Address or Name (in the Data field) doesn't belong to that node ๐Ÿคซ. A single-component Subject Name matches any fully-qualified name whose first label matches it. All name matching is case-independent and follows the DNS Security (DNSSEC) name canonicalization rules [7] ๐Ÿงš.

Next, if the Qtype is unknown to the Responder, it must send back an NI Reply with ICMPv6 Code = 2 and no Reply Data. The Responder should rate-limit these replies the same way it would rate-limit ICMPv6 error replies [5] ๐Ÿšฆ.

Then the Responder should decide whether to refuse the answer, based on local policy. (Check the "Security Considerations" section for the recommended default behavior ๐Ÿ”ฅ.) If the answer gets refused, depending on local policy the Responder can either silently discard the Query or send back an NI Reply with ICMPv6 Code = 1 and no Reply Data. Again, the Responder should rate-limit these replies like ICMPv6 error replies [5] ๐Ÿ˜ญ.

Finally, if the Qtype is known and local policy allows the response, the Responder MUST fill in the Flags and Reply Data of the NI Reply according to the definition of the Qtype, then transmit it ๐Ÿ“. The source address of the NI Reply SHOULD be picked using the rules in [9] ๐ŸŒˆ.

If the Query was sent to a multicast address, the Reply MUST be delayed by a random interval between zero and [Query Response Interval], as defined by Multicast Listener Discovery Version 2 [10] โณ.


6. Defined Qtypes ๐Ÿ‘‘

These are the Qtypes that are defined. Qtypes 0, 2, and 3 MUST be supported by every implementation of this protocol ๐Ÿ’œ. Qtype 4 SHOULD be supported by any implementation running on an IPv4/IPv6 dual-stack node, and it MAY be supported on an IPv6-only node ๐Ÿฆ‹.

                 +-------------+----------------+
                 | Qtype Value |   Qtype Name   |
                 +-------------+----------------+
                 |      0      |      NOOP      |
                 |      1      |     unused     |
                 |      2      |    Node Name   |
                 |      3      | Node Addresses |
                 |      4      | IPv4 Addresses |
                 +-------------+----------------+

6.1. NOOP ๐ŸŒท

This NI type has no defined flags and never has a Data field ๐Ÿซง. A Reply to an NI NOOP Query tells the Querier that a node with the Queried Address is up, reachable, and speaks the Node Information protocol โœจ. When sending, the ICMPv6 Code in a NOOP Query must be set to 1, and the Code in a NOOP Reply must be 0. When receiving a NOOP Query or Reply, the Code must be ignored ๐Ÿ™ˆ.

6.2. Node Name ๐Ÿท๏ธ

The NI Node Name Query asks for the fully-qualified or single-component name that matches the Subject Address or Name ๐Ÿ’ฌ. The Reply Data looks like this:

 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                              TTL                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          Node Names ...                       |
+                                                               +
/                                                               /
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

              Figure 2: Node Information Reply Message
  • TTL (Time to Live): MUST be zero, and any non-zero value received MUST be treated as zero ๐Ÿ•ฐ๏ธ. This field isn't used anymore, but it's still there so older implementations keep working.
  • Node Names: The fully-qualified or single-component name or names of the Responder that match(es) the Subject Address or Name, in DNS wire format, Section 3.1 of [2] ๐Ÿ“œ. Each name MUST be fully-qualified if the Responder knows the domain suffix. Otherwise, each name MUST be a single DNS label followed by two zero-length labels. When more than one node name comes back and more than one of them is fully-qualified, DNS name compression, Section 4.1.4 of [2], SHOULD be used, and the offsets are counted from the first octet of the Data field. An offset of 4, for example, points to the start of the first name ๐Ÿงฉ.

The Responder must fill in the TTL field of the Reply with zero ๐Ÿ’–.

Only one TTL is included in the Reply ๐ŸŽ€.

If the Responder doesn't know its name at all, it MUST send a Reply with TTL=0 and no Node Names (or a Reply with Code=1 that refuses to answer) ๐Ÿ™…โ€โ™€๏ธ. The Querier can tell from the packet length that the Data field holds no names ๐Ÿ“.

6.3. Node Addresses ๐Ÿ“

The NI Node Addresses Query asks for some set of the Responder's IPv6 unicast addresses ๐ŸŒ. The Reply Data is a sequence of 128-bit IPv6 addresses, where each address is preceded by its own 32-bit TTL value. Preferred addresses are listed before Deprecated addresses [11]. Otherwise there's no special order ๐Ÿช„. Five flag bits are defined in the Query and six in the Reply.

 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            Qtype=3            |       unused      |G|S|L|C|A|T|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

              Figure 3: Node Information Address Query
  • G: If set to 1, Global-scope addresses [12] are requested ๐ŸŒ.
  • S: If set to 1, Site-local addresses [12] are requested. Heads up though, Site-local addresses are now deprecated [15], so this flag is only there for backward compatibility ๐Ÿ•ธ๏ธ.
  • L: If set to 1, Link-local addresses [12] are requested ๐Ÿ”—.
  • C: If set to 1, IPv4-compatible (now deprecated) and IPv4-mapped addresses [3] are requested. Responses SHOULD include IPv4 addresses in IPv4-mapped form ๐Ÿชž.
  • A: If set to 1, all of the Responder's unicast addresses (within the requested scope(s)) are requested. If 0, only the addresses that belong to the interface (or any one interface) holding the Subject Address, or that are tied to the Subject Name, are requested ๐ŸŽฏ.
  • T: Only defined in a Reply, and it means the set of addresses is incomplete because of space limits โœ‚๏ธ.

The G, S, L, C, and A flags get copied from a Query to the matching Reply ๐Ÿ“‹.

The TTL associated with each address MUST be zero ๐Ÿ•ฐ๏ธ.

6.4. IPv4 Addresses ๐ŸŒธ

The NI IPv4 Addresses Query asks for some set of the Responder's IPv4 unicast addresses ๐ŸŒท. The Reply Data is a sequence of 32-bit IPv4 addresses, and each address gets a 32-bit TTL value in front of it. One flag bit is defined in the Query and two in the Reply ๐Ÿ’ซ.

 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            Qtype=4            |       unused              |A|T|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

            Figure 4: Node Information IPv4 Address Query
  • A: If set to 1, all of the Responder's unicast addresses are requested. If 0, only the addresses that belong to the interface (or any one interface) holding the Subject Address are requested ๐ŸŽ€.
  • T: Only defined in a Reply, and it means the set of addresses is incomplete because of space limits โœ‚๏ธ.

The A flag gets copied from a Query to the matching Reply ๐Ÿ“‹.

The TTL associated with each address MUST be zero ๐Ÿ•ฐ๏ธ.

6.4.1. Discussion ๐Ÿง 

Here's the tea: a node might treat its IPv4 interfaces and its IPv6 interfaces as separate, even when they're sitting on the same hardware ๐Ÿค“. When a node like that answers an NI Query whose Subject Address is one type and which asks for the other type, and the Query has the A flag set to 0, it SHOULD treat IP interfaces (other than tunnels) that share the same hardware as one and the same interface ๐Ÿฆ‹.

7. IANA Considerations ๐ŸŽ€

okay so ICMPv6 type values 139 and 140 were originally assigned by IANA for this protocol ๐Ÿฆ‹. This document defines three values of the ICMPv6 Code field for each of those Type values. More Code values can be defined using the "Specification Required" criteria from [16]. IANA has set up and will keep a registry for the Code fields tied to the Node Information Query ICMPv6 Types, as part of its ICMPv6 Registry updated in [13] ๐Ÿ“‹.

This document defines five values of Qtype, numbers 0 through 4 ๐Ÿ”ข. Following the policies outlined in [16], new values, along with their associated Flags and Reply Data, are to be defined by IETF Consensus โœจ.

IANA has assigned the IPv6 multicast prefix FF02:0:0:0:0:2:FF00::/104 for use in Node Information Queries, as defined in Section 5 ๐Ÿ’œ. It should be noted that this assignment does conform with the requirements defined in [17] ๐Ÿ’….

8. Security Considerations ๐Ÿ”’

this protocol shares the security issues of ICMPv6 that are documented in the "Security Considerations" section of [5] ๐Ÿ˜ฌ.

okay, real talk: this protocol has the potential to reveal information that's useful to a would-be attacker ๐Ÿšจ. An implementation of this protocol MUST have a default configuration that refuses to answer queries from global-scope [3] addresses ๐Ÿ›‘.

Implementations SHOULD apply rate-limiting to NI responses so they can't be abused in a denial-of-service attack ๐Ÿšฆ.

The anti-spoofing Nonce does not protect against spoofers who can eavesdrop on the Query or the Reply ๐Ÿ‘€. Like, at all.

The information learned via this protocol SHOULD NOT be trusted for making security-relevant decisions unless some other mechanisms, beyond the scope of this document, are used to authenticate this information ๐Ÿ™…โ€โ™€๏ธ.

An implementation of this protocol SHOULD provide the ability to control the dissemination of information related to IPv6 Privacy Addresses [18] ๐Ÿ•ถ๏ธ. The default action of this policy SHOULD NOT provide a response to a Query that contains a node's Privacy Addresses ๐Ÿซฃ.

A node MUST NOT include Privacy Addresses in any Node Addresses response that includes a public address, or for which the source address of the response, the destination address of the request, or the Subject Address of the request is a public address ๐Ÿšซ. Similarly, a node MUST NOT include any address other than the (single) Privacy Address in any Node Addresses response that includes the Privacy Address, or for which the source address of the response, the destination address of the request, or the Subject Address of the request is the Privacy Address ๐Ÿšซ๐ŸŒธ. Guard those privacy addresses like your diary, bestie ๐Ÿ”๐Ÿ’–.

9. Acknowledgements ๐Ÿซถ

Alain Durand contributed to this specification ๐ŸŒŸ. Valuable feedback and implementation experience came from Jun-Ichiro Hagino and Tatuya Jinmei ๐Ÿ™Œ. Other useful comments were received from Robert Elz, Keith Moore, Elwyn Davies, Pekka Savola, and Dave Thaler ๐Ÿ’ฌ. Bob Hinden and Brian Haberman acted as document editors during the IETF advancement process ๐Ÿ“.

This document is not the first proposal of a direct query mechanism for address-to-name translation ๐Ÿ”. The idea was discussed briefly in the IPng working group, and RFC 1788 [19] describes such a mechanism for IPv4 ๐Ÿ•ฐ๏ธ.

10. References ๐Ÿ“š

10.1. Normative References

[1] Mockapetris, P., "Domain names - concepts and facilities", STD 13, RFC 1034, November 1987.

[2] Mockapetris, P., "Domain names - implementation and specification", STD 13, RFC 1035, November 1987.

[3] Hinden, R. and S. Deering, "IP Version 6 Addressing Architecture", RFC 4291, February 2006.

[4] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.

[5] Conta, A. and S. Deering, "Internet Control Message Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification", RFC 2463, December 1998.

[6] Deering, S. and R. Hinden, "Internet Protocol, Version 6 (IPv6) Specification", RFC 2460, December 1998.

[7] Arends, R., Austein, R., Larson, M., Massey, D., and S. Rose, "Resource Records for the DNS Security Extensions", RFC 4034, March 2005.

[8] Rivest, R., "The MD5 Message-Digest Algorithm", RFC 1321, April 1992.

[9] Draves, R., "Default Address Selection for Internet Protocol version 6 (IPv6)", RFC 3484, February 2003.

[10] Vida, R. and L. Costa, "Multicast Listener Discovery Version 2 (MLDv2) for IPv6", RFC 3810, June 2004.

[11] Narten, T., Nordmark, E., and W. Simpson, "Neighbor Discovery for IP Version 6 (IPv6)", RFC 2461, December 1998.

[12] Hinden, R., Deering, S., and E. Nordmark, "IPv6 Global Unicast Address Format", RFC 3587, August 2003.

[13] Conta, A., Deering, S., and M. Gupta, "Internet Control Message Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification", RFC 4443, March 2006.

10.2. Informative References

[14] Kent, S. and K. Seo, "Security Architecture for the Internet Protocol", RFC 4301, December 2005.

[15] Huitema, C. and B. Carpenter, "Deprecating Site Local Addresses", RFC 3879, September 2004.

[16] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 2434, October 1998.

[17] Haberman, B., "Allocation Guidelines for IPv6 Multicast Addresses", RFC 3307, August 2002.

[18] Narten, T. and R. Draves, "Privacy Extensions for Stateless Address Autoconfiguration in IPv6", RFC 3041, January 2001.

[19] Simpson, W., "ICMP Domain Name Messages", RFC 1788, April 1995.

Authors' Addresses ๐Ÿ’Œ

Matt Crawford
Fermilab
PO Box 500
Batavia, IL  60510
US

Phone: +1 630 840 3461
EMail: crawdad@fnal.gov


Brian Haberman (editor)
Johns Hopkins University Applied Physics Lab
11100 Johns Hopkins Road
Laurel, MD  20723-6099
US

Phone: +1 443 778 1319
EMail: brian@innovationslab.net

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 ๐Ÿ”.

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 โš ๏ธ.

Intellectual Property ๐Ÿ’Ž

The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in 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 made any independent effort to identify any such rights ๐Ÿคทโ€โ™€๏ธ. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79 ๐Ÿ“–.

Copies of IPR disclosures made to the IETF Secretariat, and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification, can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr ๐Ÿ”—.

The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org ๐Ÿ“ฌ.

Acknowledgement ๐ŸŒท

Funding for the RFC Editor function is provided by the IETF Administrative Support Activity (IASA) ๐Ÿ’•.

๐Ÿ“ฆ where this page comes from