⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc2461.txt

📁 <VC++网络游戏建摸与实现>源代码
💻 TXT
📖 第 1 页 / 共 5 页
字号:
Network Working Group                                        T. NartenRequest for Comments: 2461                                         IBMObsoletes: 1970                                            E. NordmarkCategory: Standards Track                             Sun Microsystems                                                            W. Simpson                                                            Daydreamer                                                         December 1998               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.Copyright Notice   Copyright (C) The Internet Society (1998).  All Rights Reserved.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........................................    9      3.1.  Comparison with IPv4................................   13      3.2.  Supported Link Types................................   15   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.............................   26Narten, et. al.             Standards Track                     [Page 1]RFC 2461              Neighbor Discovery for IPv6          December 1998      4.6.  Option Formats......................................   28         4.6.1.  Source/Target Link-layer Address...............   28         4.6.2.  Prefix Information.............................   29         4.6.3.  Redirected Header..............................   31         4.6.4.  MTU............................................   32   5.  CONCEPTUAL MODEL OF A HOST...............................   33      5.1.  Conceptual Data Structures..........................   33      5.2.  Conceptual Sending Algorithm........................   35      5.3.  Garbage Collection and Timeout Requirements.........   37   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....   39      6.2.  Router Specification................................   40         6.2.1.  Router Configuration Variables.................   40         6.2.2.  Becoming An Advertising Interface..............   44         6.2.3.  Router Advertisement Message Content...........   44         6.2.4.  Sending Unsolicited Router Advertisements......   46         6.2.5.  Ceasing To Be An Advertising Interface.........   46         6.2.6.  Processing Router Solicitations................   47         6.2.7.  Router Advertisement Consistency...............   48         6.2.8.  Link-local Address Change......................   49      6.3.  Host Specification..................................   50         6.3.1.  Host Configuration Variables...................   50         6.3.2.  Host Variables.................................   50         6.3.3.  Interface Initialization.......................   51         6.3.4.  Processing Received Router Advertisements......   51         6.3.5.  Timing out Prefixes and Default Routers........   54         6.3.6.  Default Router Selection.......................   54         6.3.7.  Sending Router Solicitations...................   55   7.  ADDRESS RESOLUTION AND NEIGHBOR UNREACHABILITY DETECTION.   56      7.1.  Message Validation..................................   57         7.1.1.  Validation of Neighbor Solicitations...........   57         7.1.2.  Validation of Neighbor Advertisements..........   58      7.2.  Address Resolution..................................   58         7.2.1.  Interface Initialization.......................   59         7.2.2.  Sending Neighbor Solicitations.................   59         7.2.3.  Receipt of Neighbor Solicitations..............   60         7.2.4.  Sending Solicited Neighbor Advertisements......   61         7.2.5.  Receipt of Neighbor Advertisements.............   62         7.2.6.  Sending Unsolicited Neighbor Advertisements....   64         7.2.7.  Anycast Neighbor Advertisements................   65         7.2.8.  Proxy Neighbor Advertisements..................   65      7.3.  Neighbor Unreachability Detection...................   66         7.3.1.  Reachability Confirmation......................   66         7.3.2.  Neighbor Cache Entry States....................   67         7.3.3.  Node Behavior..................................   68   8.  REDIRECT FUNCTION........................................   70Narten, et. al.             Standards Track                     [Page 2]RFC 2461              Neighbor Discovery for IPv6          December 1998      8.1.  Validation of Redirect Messages.....................   71      8.2.  Router Specification................................   72      8.3.  Host Specification..................................   73   9.  EXTENSIBILITY - OPTION PROCESSING........................   74   10.  PROTOCOL CONSTANTS......................................   75   11.  SECURITY CONSIDERATIONS.................................   76   12.  RENUMBERING CONSIDERATIONS..............................   78   References...................................................   80   Authors' Addresses...........................................   81   Appendix A: Multihomed Hosts.................................   82   Appendix B: Future Extensions................................   84   Appendix C: State Machine for the Reachability State.........   85   Appendix D: Summary of ISROUTER Rules........................   88   Appendix E: Implementation Issues............................   89       Appendix E.1: Reachability confirmations.................   89   Appendix F: Changes since RFC 1970...........................   91   Full Copyright Statement.....................................   931.  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 of the IPNGWG   working group and, in particular, (in alphabetical order) Ran   Atkinson, Jim Bound, Scott Bradner, Alex Conta, Stephen Deering,Narten, et. al.             Standards Track                     [Page 3]RFC 2461              Neighbor Discovery for IPv6          December 1998   Richard Draves, Francis Dupont, Robert Elz, Robert Gilligan, Robert   Hinden, Allison Mankin, Dan McDonald, Charles Perkins, Matt Thomas,   and Susan Thomson.2.  TERMINOLOGY2.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 anNarten, et. al.             Standards Track                     [Page 4]RFC 2461              Neighbor Discovery for IPv6          December 1998                 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].                 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.Narten, et. al.             Standards Track                     [Page 5]RFC 2461              Neighbor Discovery for IPv6          December 1998   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 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 + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -