INTERNET-DRAFT J. McCann, Digital Equipment Corporation
March 24, 1997
Host Reachability Advertisement for IPv6
draft-mccann-ipv6-hra-00.txt
Abstract
This document describes a mechanism that can be used by IPv6 hosts to
communicate information about their address configuration to
neighboring routers. In particular, this mechanism is intended to
allow multihomed hosts and hosts with anycast addresses to
communicate this information to their neighboring routers. This
document defines a new ICMPv6 informational message type, a "Host
Reachability Advertisement" to carry this information. It also
defines a second ICMPv6 message, a "Host Reachability Solicitation",
that can be used to trigger Host Reachability Advertisements.
Status of this Memo
This document is an Internet-Draft. Internet-Drafts are working
documents of the Internet Engineering Task Force (IETF), its areas,
and its working groups. Note that other groups may also distribute
working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as ``work in progress.''
To learn the current status of any Internet-Draft, please check the
``1id-abstracts.txt'' listing contained in the Internet-Drafts Shadow
Directories on ftp.is.co.za (Africa), nic.nordu.net (Europe),
munnari.oz.au (Pacific Rim), ds.internic.net (US East Coast), or
ftp.isi.edu (US West Coast).
Distribution of this document is unlimited.
Expiration
September 24, 1997
draft-mccann-ipv6-hra-00.txt [Page 1]
INTERNET-DRAFT draft-mccann-ipv6-hra-00.txt March 24, 1997
Contents
Abstract........................................................1
Status of this Memo.............................................1
Contents........................................................2
1. Introduction.................................................3
2. Terminology..................................................3
3. Protocol overview............................................4
3.1. Multihomed Host Example....................................4
3.2. Anycast Example............................................4
4. Message formats..............................................5
4.1. Host Reachability Solicitation message format..............5
4.2. Host Reachability Advertisement message format.............5
5. Protocol Requirements........................................7
5.1. Host specification.........................................7
5.1.1. Sending Host Reachability Solicitations..................7
5.1.2. Processing Received Host Reachability Solicitations......7
5.1.3. Sending Host Reachability Advertisements.................7
5.1.3.1. Sending Unsolicited HRAs...............................7
5.1.3.2. Sending Solicited HRAs.................................8
5.1.4. Processing Received Host Reachability Advertisements.....8
5.2. Router specification.......................................8
5.2.1. Sending Host Reachability Solicitations..................8
5.2.2. Processing Received Host Reachability Solicitations......8
5.2.3. Sending Host Reachability Advertisements.................8
5.2.4. Processing Received Host Reachability Advertisements.....8
5.2.5. Timers...................................................9
5.2.6. Interaction with Neighbor Unreachability Detection (NUD).9
5.3. Protocol constants.........................................9
6. Security considerations......................................9
Acknowledgements................................................9
Appendix A - Issues............................................10
References.....................................................11
Author's Address...............................................12
draft-mccann-ipv6-hra-00.txt [Page 2]
INTERNET-DRAFT draft-mccann-ipv6-hra-00.txt March 24, 1997
1. Introduction
This document describes a mechanism that can be used by IPv6 hosts to
communicate information about their address configuration to
neighboring routers. In particular, this mechanism is intended to
allow hosts with multiple interfaces and hosts with anycast addresses
to communicate this information to their neighboring routers. This
document defines a new ICMPv6 informational message type, a "Host
Reachability Advertisement" (HRA) to carry this information. HRAs
are periodically transmitted. It also defines a second ICMPv6
message, a "Host Reachability Solicitation", (HRS) that can be used
to trigger HRAs. The latter message type is intended to allow
bootstrapping routers to avoid having to wait for the next periodic
HRA. Both messages are for link-local use only.
2. Terminology
node - a device that implements IPv6.
router - a node that forwards IPv6 packets not explicitly
addressed to itself.
host - any node that is not a router.
link - a communication facility or medium over which nodes can
communicate at the link layer, i.e., the layer
immediately below IPv6. Examples are Ethernets (simple
or bridged); PPP links; X.25, Frame Relay, or ATM
networks; and internet (or higher) layer "tunnels",
such as tunnels over IPv4 or IPv6 itself.
interface - a node's attachment to a link.
address - an IPv6-layer identifier for an interface or a set of
interfaces.
packet - an IPv6 header plus payload.
link MTU - the maximum transmission unit, i.e., maximum packet
size in octets, that can be conveyed in one piece over
a link.
draft-mccann-ipv6-hra-00.txt [Page 3]
INTERNET-DRAFT draft-mccann-ipv6-hra-00.txt March 24, 1997
3. Protocol overview
3.1. Multihomed Host Example
HRA(src=fe80::a1, address1=2::a)
------------------------------------------------------ Link 1
fe80::a1 | 1::a |
+-----+ +-----+
| A | | R |---- network
+-----+ +-----+
fe80::a2 | 2::a |
------------------------------------------------------ Link 2
HRA(src=fe80::a2, address1=1::a)
Host A transmits an HRA on Link 2 to inform router R that address
1::a can be reached through Host A's interface on Link 2 (address
fe80::a2). Host A also transmits an HRA on Link 1 to inform router R
that address 2::a can be reached through Hosts A's interface on Link
1 (address fe80::a1).
3.2. Anycast Example
+-----+
| A |
+-----+
fe80::a1 | 3::c
------------------------------------------------------ Link 1
HRA(src=fe80::a1, address1=3::c) |
+-----+
| R |---- network
+-----+
HRA(src=fe80::b2, address1=3::c) |
------------------------------------------------------ Link 2
fe80::b2 | 3::c
+-----+
| B |
+-----+
Hosts A and B are both configured with anycast address 3::c. Host A
transmits an HRA on Link 1 to inform router R that address 3::c can
be reached through Host A's interface on Link 1 (address fe80::a1).
Host B transmits an HRA on Link 2 to inform router R that address
3::c can be reached through Host B's interface on Link 2 (address
fe80::b2).
draft-mccann-ipv6-hra-00.txt [Page 4]
INTERNET-DRAFT draft-mccann-ipv6-hra-00.txt March 24, 1997
4. Message formats
This section specifies the protocol message format of the Host
Reachability Solicitation and the Host Reachability Advertisement.
4.1. Host Reachability Solicitation message format
The Host Reachability Solicitation is an ICMPv6 informational message
with the following format:
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
IPv6 Fields:
Source Address
Link-local unicast address of the sending
interface.
Destination Address
Link-local all-nodes multicast address.
Hop Limit 255
Priority 15
ICMPv6 Fields:
Type TBD
Code TBD
Checksum The ICMPv6 checksum. See [ICMPv6].
Reserved This field is unused. It MUST be initialized
to zero by the sender and MUST be ignored by
the receiver.
4.2. Host Reachability Advertisement message format
The Host Reachability Advertisement is an ICMPv6 informational
message with the following format:
draft-mccann-ipv6-hra-00.txt [Page 5]
INTERNET-DRAFT draft-mccann-ipv6-hra-00.txt March 24, 1997
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
| Address[1] |
| |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. . .
. . .
. . .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
| Address[n] |
| |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
IPv6 Fields:
Source Address
Link-local unicast address of the sending
interface.
Destination Address
Link-local all-routers multicast address, or for
an advertisement triggered by an HRS, this may be
the source address from the HRS.
Hop Limit 255
Priority 15
ICMPv6 Fields:
Type TBD
Code TBD
Checksum The ICMPv6 checksum. See [ICMPv6].
Reserved This field is unused. It MUST be initialized
to zero by the sender and MUST be ignored by
the receiver.
Address[1..n] One or more 128-bit IPv6 addresses configured on
draft-mccann-ipv6-hra-00.txt [Page 6]
INTERNET-DRAFT draft-mccann-ipv6-hra-00.txt March 24, 1997
the sending host. The number of addresses n is
derived from the packet size. MUST be a unicast
address. MUST NOT be a link-local address. Site-
local addresses MUST belong to the same site as
the sending interface.
5. Protocol Requirements
This section specifies the protocol requirements for both hosts and
routers.
5.1. Host specification
5.1.1. Sending Host Reachability Solicitations
Hosts do not send HRSs.
5.1.2. Processing Received Host Reachability Solicitations
A host MUST silently discard any received HRS that does not pass the
following validity checks:
- The IPv6 Source Address field contains a link-local address.
- The IPv6 Hop Limit field has a value of 255.
- ICMPv6 Checksum is valid.
- ICMPv6 length (derived from the IP length) is 8 octets.
A host receiving a valid HRS SHOULD send a HRA as described in the
next section.
5.1.3. Sending Host Reachability Advertisements
A host MAY send HRAs if configured to do so. The means by which a
host is configured to send HRAs is beyond the scope of this document.
The remainder of this section applies only to hosts which are
configured to send HRAs.
5.1.3.1. Sending Unsolicited HRAs
A host periodically multicasts HRAs to the link-local all-routers
multicast address. The period is a random amount of time between
HRA_PERIOD_MIN and HRA_PERIOD_MAX. The period is reset to a new
draft-mccann-ipv6-hra-00.txt [Page 7]
INTERNET-DRAFT draft-mccann-ipv6-hra-00.txt March 24, 1997
random value between HRA_PERIOD_MIN and HRA_PERIOD_MAX each time an
Unsolicited HRA is sent.
5.1.3.2. Sending Solicited HRAs
A host SHOULD send a HRA upon receiving a valid HRS. If the next
Unsolicited HRA is scheduled to be sent within HRA_DELAY_MAX time, a
separate Solicited HRA does not need to be sent. A Solicited HRA is
unicast to the soliciting node. Sending a Solicited HRA SHOULD be
delayed for a random amount of time between 0 and HRA_DELAY_MAX.
5.1.4. Processing Received Host Reachability Advertisements
Hosts MUST silently ignore received HRAs.
5.2. Router specification
5.2.1. Sending Host Reachability Solicitations
A router MAY send a HRS to elicit HRAs from hosts on a link. An HRS
is sent to the link-local all-nodes multicast address.
5.2.2. Processing Received Host Reachability Solicitations
Routers MUST silently ignore received HRSs.
5.2.3. Sending Host Reachability Advertisements
Routers do not send HRAs.
5.2.4. Processing Received Host Reachability Advertisements
A router MUST silently discard any received HRA that does not pass
the following validity checks:
- The IPv6 Source Address field contains a link-local address.
- The IPv6 Hop Limit field has a value of 255.
- ICMPv6 Checksum is valid.
- The packet is properly authenticated (for packets containing
an authentication header).
draft-mccann-ipv6-hra-00.txt [Page 8]
INTERNET-DRAFT draft-mccann-ipv6-hra-00.txt March 24, 1997
Upon receipt of a valid HRA, a router MAY update its routing tables
to reflect the information contained in the HRA. A router MAY also
communicate this information with other routers. The mechanisms used
to accomplish the above are beyond the scope of this specification.
A router that uses reachable address information from an HRA MUST
maintain a timer for each address. Each time an HRA is received for
an address, the timer is set to HRA_TIMEOUT seconds. If the timer
expires, the router MUST consider the address no longer reachable on
that path.
5.2.6. Interaction with Neighbor Unreachability Detection (NUD)
If Neighbor Unreachability Detection (NUD) [ND] indicates that the
source of an HRA is no longer reachable, the router MUST consider
addresses received in an HRA from that source no longer reachable on
that path.
5.3. Protocol constants
HRA_PERIOD_MIN 15 seconds
HRA_PERIOD_MAX 45 seconds
HRA_DELAY_MAX 5 seconds
HRA_TIMEOUT 4 * HRA_PERIOD_MAX
6. Security considerations
The HRA provides a mechanism by which reachability information may be
injected into the routing system. Routers may require HRAs to be
authenticated in configurations where this is considered a threat.
Acknowledgements
The author wishes to acknowledge the following people for their
review and constructive criticism of early drafts of this document:
Jim Bound, Jitu Patel, Mike Shand, and Matt Thomas.
draft-mccann-ipv6-hra-00.txt [Page 9]
INTERNET-DRAFT draft-mccann-ipv6-hra-00.txt March 24, 1997
Appendix A - Issues
- Should there be a way for hosts to tell routers that an address
contained in a previous HRA is no longer reachable, or is the
router timeout sufficient?
- Should the HRA carry some sort of metric information for the
addresses contained therein?
draft-mccann-ipv6-hra-00.txt [Page 10]
INTERNET-DRAFT draft-mccann-ipv6-hra-00.txt March 24, 1997
References
[ICMPv6] A. Conta and S. Deering, "Internet Control Message
Protocol (ICMPv6) for the Internet Protocol Version 6
(IPv6) Specification", RFC 1885, December 1995
[IPv6] S. Deering and R. Hinden, "Internet Protocol, Version 6
(IPv6) Specification", RFC 1883, December 1995
[ND] T. Narten, E. Nordmark, and W. Simpson, "Neighbor
Discovery for IP Version 6 (IPv6)", RFC 1970, August 1996
draft-mccann-ipv6-hra-00.txt [Page 11]
INTERNET-DRAFT draft-mccann-ipv6-hra-00.txt March 24, 1997
Author's Address
Jack McCann
Digital Equipment Corporation
110 Spitbrook Road, ZKO3-3/U14
Nashua, NH 03062
Phone: +1 603 881 2608
Fax: +1 603 881 0120
Email: mccann@zk3.dec.com
Expiration
September 24, 1997
draft-mccann-ipv6-hra-00.txt [Page 12]