rfc1970.txt
来自「RFC 的详细文档!」· 文本 代码 · 共 1,467 行 · 第 1/5 页
TXT
1,467 行
Network Working Group T. Narten
Request for Comments: 1970 IBM
Category: Standards Track E. Nordmark
Sun Microsystems
W. Simpson
Daydreamer
August 1996
Neighbor Discovery for IP Version 6 (IPv6)
Status of this Memo
This document specifies an Internet standards track protocol for the
Internet community, and requests discussion and suggestions for
improvements. Please refer to the current edition of the "Internet
Official Protocol Standards" (STD 1) for the standardization state
and status of this protocol. Distribution of this memo is unlimited.
Abstract
This document specifies the Neighbor Discovery protocol for IP
Version 6. IPv6 nodes on the same link use Neighbor Discovery to
discover each other's presence, to determine each other's link-layer
addresses, to find routers and to maintain reachability information
about the paths to active neighbors.
Table of Contents
1. INTRODUCTION............................................. 3
2. TERMINOLOGY.............................................. 4
2.1. General............................................. 4
2.2. Link Types.......................................... 7
2.3. Addresses........................................... 8
2.4. Requirements........................................ 9
3. PROTOCOL OVERVIEW........................................ 10
3.1. Comparison with IPv4................................ 14
3.2. Supported Link Types................................ 16
4. MESSAGE FORMATS.......................................... 17
4.1. Router Solicitation Message Format.................. 17
4.2. Router Advertisement Message Format................. 18
4.3. Neighbor Solicitation Message Format................ 21
4.4. Neighbor Advertisement Message Format............... 23
4.5. Redirect Message Format............................. 25
4.6. Option Formats...................................... 27
4.6.1. Source/Target Link-layer Address............... 28
4.6.2. Prefix Information............................. 29
4.6.3. Redirected Header.............................. 31
Narten, Nordmark & Simpson Standards Track [Page 1]
RFC 1970 Neighbor Discovery for IP Version 6 (IPv6) August 1996
4.6.4. MTU............................................ 31
5. CONCEPTUAL MODEL OF A HOST............................... 32
5.1. Conceptual Data Structures.......................... 33
5.2. Conceptual Sending Algorithm........................ 35
5.3. Garbage Collection and Timeout Requirements......... 36
6. ROUTER AND PREFIX DISCOVERY.............................. 37
6.1. Message Validation.................................. 38
6.1.1. Validation of Router Solicitation Messages..... 38
6.1.2. Validation of Router Advertisement Messages.... 38
6.2. Router Specification................................ 39
6.2.1. Router Configuration Variables................. 39
6.2.2. Becoming An Advertising Interface.............. 43
6.2.3. Router Advertisement Message Content........... 43
6.2.4. Sending Unsolicited Router Advertisements...... 45
6.2.5. Ceasing To Be An Advertising Interface......... 45
6.2.6. Processing Router Solicitations................ 46
6.2.7. Router Advertisement Consistency............... 47
6.2.8. Link-local Address Change...................... 48
6.3. Host Specification.................................. 48
6.3.1. Host Configuration Variables................... 48
6.3.2. Host Variables................................. 48
6.3.3. Interface Initialization....................... 50
6.3.4. Processing Received Router Advertisements...... 50
6.3.5. Timing out Prefixes and Default Routers........ 52
6.3.6. Default Router Selection....................... 53
6.3.7. Sending Router Solicitations................... 54
7. ADDRESS RESOLUTION AND NEIGHBOR UNREACHABILITY DETECTION. 55
7.1. Message Validation.................................. 55
7.1.1. Validation of Neighbor Solicitations........... 55
7.1.2. Validation of Neighbor Advertisements.......... 56
7.2. Address Resolution.................................. 57
7.2.1. Interface Initialization....................... 57
7.2.2. Sending Neighbor Solicitations................. 57
7.2.3. Receipt of Neighbor Solicitations.............. 58
7.2.4. Sending Solicited Neighbor Advertisements...... 59
7.2.5. Receipt of Neighbor Advertisements............. 59
7.2.6. Sending Unsolicited Neighbor Advertisements.... 61
7.2.7. Anycast Neighbor Advertisements................ 62
7.2.8. Proxy Neighbor Advertisements.................. 62
7.3. Neighbor Unreachability Detection................... 63
7.3.1. Reachability Confirmation...................... 63
7.3.2. Neighbor Cache Entry States.................... 64
7.3.3. Node Behavior.................................. 66
8. REDIRECT FUNCTION........................................ 68
8.1. Validation of Redirect Messages..................... 68
8.2. Router Specification................................ 69
8.3. Host Specification.................................. 70
9. EXTENSIBILITY - OPTION PROCESSING........................ 71
Narten, Nordmark & Simpson Standards Track [Page 2]
RFC 1970 Neighbor Discovery for IP Version 6 (IPv6) August 1996
10. PROTOCOL CONSTANTS...................................... 72
11. SECURITY CONSIDERATIONS................................. 73
REFERENCES................................................... 75
AUTHORS' ADDRESSES........................................... 76
APPENDIX A: MULTIHOMED HOSTS................................. 77
APPENDIX B: FUTURE EXTENSIONS................................ 78
APPENDIX C: STATE MACHINE FOR THE REACHABILITY STATE......... 78
APPENDIX D: IMPLEMENTATION ISSUES............................ 80
Appendix D.1: Reachability confirmations.................. 80
1. INTRODUCTION
This specification defines the Neighbor Discovery (ND) protocol for
Internet Protocol Version 6 (IPv6). Nodes (hosts and routers) use
Neighbor Discovery to determine the link-layer addresses for
neighbors known to reside on attached links and to quickly purge
cached values that become invalid. Hosts also use Neighbor Discovery
to find neighboring routers that are willing to forward packets on
their behalf. Finally, nodes use the protocol to actively keep track
of which neighbors are reachable and which are not, and to detect
changed link-layer addresses. When a router or the path to a router
fails, a host actively searches for functioning alternates.
Unless specified otherwise (in a document that covers operating IP
over a particular link type) this document applies to all link types.
However, because ND uses link-layer multicast for some of its
services, it is possible that on some link types (e.g., NBMA links)
alternative protocols or mechanisms to implement those services will
be specified (in the appropriate document covering the operation of
IP over a particular link type). The services described in this
document that are not directly dependent on multicast, such as
Redirects, Next-hop determination, Neighbor Unreachability Detection,
etc., are expected to be provided as specified in this document. The
details of how one uses ND on NBMA links is an area for further
study.
The authors would like to acknowledge the contributions the IPNGWG
working group and, in particular, (in alphabetical order) Ran
Atkinson, Jim Bound, Scott Bradner, Alex Conta, Stephen Deering,
Francis Dupont, Robert Elz, Robert Gilligan, Robert Hinden, Allison
Mankin, Dan McDonald, Charles Perkins, Matt Thomas, and Susan
Thomson.
Narten, Nordmark & Simpson Standards Track [Page 3]
RFC 1970 Neighbor Discovery for IP Version 6 (IPv6) August 1996
2. TERMINOLOGY
2.1. General
IP - Internet Protocol Version 6. The terms IPv4 and IPv6
are used only in contexts where necessary to avoid
ambiguity.
ICMP - Internet Message Control Protocol for the Internet
Protocol Version 6. The terms ICMPv4 and ICMPv6 are
used only in contexts where necessary to avoid
ambiguity.
node - a device that implements IP.
router - a node that forwards IP packets not explicitly
addressed to itself.
host - any node that is not a router.
upper layer - a protocol layer immediately above IP. Examples are
transport protocols such as TCP and UDP, control
protocols such as ICMP, routing protocols such as OSPF,
and internet or lower-layer protocols being "tunneled"
over (i.e., encapsulated in) IP such as IPX, AppleTalk,
or IP itself.
link - a communication facility or medium over which nodes can
communicate at the link layer, i.e., the layer
immediately below IP. Examples are Ethernets (simple
or bridged), PPP links, X.25, Frame Relay, or ATM
networks as well as internet (or higher) layer
"tunnels", such as tunnels over IPv4 or IPv6 itself.
interface - a node's attachment to a link.
neighbors - nodes attached to the same link.
address - an IP-layer identifier for an interface or a set of
interfaces.
anycast address
- an identifier for a set of interfaces (typically
belonging to different nodes). A packet sent to an
anycast address is delivered to one of the interfaces
identified by that address (the "nearest" one,
according to the routing protocol's measure of
distance). See [ADDR-ARCH].
Narten, Nordmark & Simpson Standards Track [Page 4]
RFC 1970 Neighbor Discovery for IP Version 6 (IPv6) August 1996
Note that an anycast address is syntactically
indistinguishable from a unicast address. Thus, nodes
sending packets to anycast addresses don't generally
know that an anycast address is being used. Throughout
the rest of this document, references to unicast
addresses also apply to anycast addresses in those
cases where the node is unaware that a unicast address
is actually an anycast address.
prefix - a bit string that consists of some number of initial
bits of an address.
link-layer address
- a link-layer identifier for an interface. Examples
include IEEE 802 addresses for Ethernet links and E.164
addresses for ISDN links.
on-link - an address that is assigned to an interface on a
specified link. A node considers an address to be on-
link if:
- it is covered by one of the link's prefixes, or
- a neighboring router specifies the address as the
target of a Redirect message, or
- a Neighbor Advertisement message is received for
the (target) address, or
- any Neighbor Discovery message is received from the
address.
off-link - the opposite of "on-link"; an address that is not
assigned to any interfaces on the specified link.
longest prefix match
- The process of determining which prefix (if any) in a
set of prefixes covers a target address. A target
address is covered by a prefix if all of the bits in
the prefix match the left-most bits of the target
address. When multiple prefixes cover an address, the
longest prefix is the one that matches.
reachability
- whether or not the one-way "forward" path to a neighbor
is functioning properly. In particular, whether
packets sent to a neighbor are reaching the IP layer on
the neighboring machine and are being processed
Narten, Nordmark & Simpson Standards Track [Page 5]
RFC 1970 Neighbor Discovery for IP Version 6 (IPv6) August 1996
properly by the receiving IP layer. For neighboring
routers, reachability means that packets sent by a
node's IP layer are delivered to the router's IP layer,
and the router is indeed forwarding packets (i.e., it
is configured as a router, not a host). For hosts,
reachability means that packets sent by a node's IP
layer are delivered to the neighbor host's IP layer.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?