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 + -
显示快捷键?