当前位置:文档之家› RFC4861 IPv6邻居发现协议-2007

RFC4861 IPv6邻居发现协议-2007

RFC4861 IPv6邻居发现协议

2007

该备忘录状态:

本文档为Internet社区指定了Internet标准跟踪协议,并请求讨论和改进建议。有关本协议的标准化状态和状态,请参阅当前版本的“互联网官方协议标准”(STD 1)。这份备忘录的分发是不受限制的。

概述:

本文档定义了IPv6邻居发现协议。位于同一链路(子网)上IPv6节点使用邻居发现协议去发现每个节点的存在,确定每个其他节点的链路层地址,发现路由器,并管理&维护到活动邻居路径的可达性信息。

修订记录

目录

目录 (3)

1引言 (6)

2术语 (6)

2.1通用术语 (6)

2.2链路类型 (9)

2.3地址 (10)

2.4要求 (11)

3协议概述 (11)

3.1与IPv4的对比 (15)

3.2支持的链路类型 (16)

3.3保护邻居发现消息 (17)

4消息格式 (18)

4.1路由器请求(RS)消息格式 (18)

4.2路由器通告(RA)消息格式 (19)

4.3邻居查询(NS)消息格式 (21)

4.4邻居通告(NA)消息格式 (22)

4.5重定向(Redirect)消息格式 (24)

4.6选项格式 (26)

4.6.1源/目标链路层地址 (26)

4.6.2前缀信息 (27)

4.6.3重定向头 (28)

4.6.4MTU (29)

5主机概念模型 (30)

5.1概念数据结构 (30)

5.2概念发送算法 (31)

5.3垃圾回收与超时要求 (33)

6路由器和前缀发现 (33)

6.1消息检查 (34)

6.1.1RS消息有效性检查 (34)

6.1.2RA消息有效性检查 (35)

6.2路由器规范 (35)

6.2.1RA配置变量 (35)

6.2.2成为通告接口 (39)

6.2.3RA消息内容 (39)

6.2.4发送未经请求的RA (40)

6.2.5停止作为通告接口 (41)

6.2.6处理RS (41)

6.2.7RA一致性 (42)

6.2.8链路本地地址变化 (43)

6.3主机规范 (44)

6.3.1主机配置变量 (44)

6.3.2主机变量 (44)

6.3.3接口初始化 (45)

6.3.4处理RA (45)

6.3.5前缀和默认路由器的超时 (48)

6.3.6默认路由器的选择 (48)

6.3.7发送RS (48)

7地址解析和邻居不可达检测 (50)

7.1消息检查 (50)

7.1.1NS的有效性检查 (50)

7.1.2NA的有效性检查 (51)

7.2地址解析 (51)

7.2.1接口初始化 (52)

7.2.2发送NS (52)

7.2.3接收NS (53)

7.2.4发送NA (54)

7.2.5接收NA (54)

7.2.6发送不请自来的NA(主动发送的NA) (56)

7.2.7任播地址的NA (57)

7.2.8代理邻居通告 (57)

7.3邻居不可达检测 (58)

7.3.1可达性确认 (58)

7.3.2邻居缓存条目的状态 (59)

7.3.3节点的行为 (60)

8重定向功能 (62)

8.1重定向的有效性检查 (62)

8.2路由器规范 (63)

8.3主机规范 (64)

9扩展性–选项处理 (64)

10协议常量 (66)

11安全考虑 (67)

11.1安全威胁分析 (67)

11.2保护邻居发现消息 (68)

12重新编号的注意事项 (69)

13IANA考虑 (70)

14参考文档 (71)

14.1Normative References (71)

14.2Infomative References (72)

附录A 多宿主主机 (75)

附录B 将来扩展 (76)

附录C 可达性状态机 (77)

附录D IsRouter规则总结 (80)

附录E 实现问题 (81)

E.1. 可达性确认 (81)

附录F 自RFC2461的变更 (83)

15致谢 (84)

1引言

本规范定义了IPv6邻居发现协议(简称为ND)。节点(包括主机和路由器)使用邻居发现协议确定处于同一链路上的邻居的链路层地址(比如ethernet上设备节点的MAC地址),并且快速的清除变为无效的缓存信息。主机由可以使用邻居发现协议查找相邻的、可以作为其网关为其转发封包的路由器。最后,IPv6节点使用该协议可以主动跟踪可达或不可达的邻居,并能检测到邻居链路层地址的变化。当路由器或到路由器的路径不可达时,主机可以主动发起寻找备用的路由器。

除非特别指出(在涵盖通过特定链接类型运行IP的文档中),本文档适用于所有的链路类型。然而,由于邻居发现协议使用链路层组播实现它的业务功能,有可能在特定的链路类型上(比如,非广播多路接入(NBMA)链路),需要特别指定另外的协议或机制来实现这些功能(在有关通过特定链接类型进行IP操作的相应文档中)。而本文档中描述的那些不直接依赖组播的服务,比如重定向,下一跳确定的该、邻居不可达检测等等,都应该按照本文档定义的形式提供。如何在NBMA链路类型上支持邻居发现的细节信息在[IPv6-NBMA]描述。另外,[IPv6-3GPP]和[IPv6-CELL]中讨论了如何基于蜂窝链路支持本协议,这些是NBMA链路的实际应用。

2术语

2.1通用术语

IP 本文特指IPv6,当出现需要避免混淆的上下文中时,才会使用术语IPv4和IPv6。

ICMP 本文特指ICMPv6,当出现需要避免混淆的上下文中时,才会使用术语ICMPv4和ICMPv6。

node 节点,实现IP协议的设备

router 路由器,转发目的地址非自身地址的节点

host 不是路由器的节点

upper layer 上层,紧邻IP层之上的层。比如像TCP和UDP之类的传输协议、像ICMP之类的控制协议、像OSPF之类的路由协议,以及通过IP“隧道”承载(即封装)的IP层或底层

协议,被封装的协议可以是类似IPX、AppleTalk,设置是IP协议自身。

link 链路,用于节点在链路层上进行通信的通信设施或媒介,即紧邻IP层的下层。例子包括以太网链路(简单的或桥接的)、PPP链路、X.25、帧中继或者是ATM网络,同样也

包括IP层(或更高层)的“隧道”,比如IP over IPv4/IPv6。

interface 接口,连接到link上的部件。

neighbors 邻居,在同一链路上的节点。

address 地址,IP层的一个或一组接口的标识

anycase address

任播地址,一组接口(通常属于不同的节点)的标识。发往任播地址的封包,将会被

交付给该地址标识的接口中的一个(根据路由协议的距离测量“最近的”一个),详

见[ADDR-ARCH]。

需要注意的是,任播地址从语法上与单播地址并无不同。基于此,向任播地址发包的

节点通常并不了解其正在使用的是任播地址。贯彻本文档随后部分,在节点不知道单

播地址实际上是任播地址的情况下,对单播地址的引用也适用于任播地址。

prefix 前缀,由地址的一定数量的初始位组成的bit串(类似IPv4子网号)。

link-layer address

链路层地址,接口的链路层标识。例子包括IEEE 802以太网链路地址。

on-link 在链路上,对off-link对应,地址属于与自身节点相同链路上的接口(即和本节点是邻居),在以下情况下,节点认为地址在链路上。

-它被链路前缀中的一个所覆盖(比如,就像前缀信息选项中的“on-flag”标志

所指示的那样),或者

-邻居路由器指定作为Redirect消息的目标的地址,或者

-收到的邻居通告消息中包含的目标地址,或者

-收到来自该地址的任何邻居发现报文的地址

off-link 不在链路上,与on-link相反,未被分配给特定链路上的接口的地址。

译者注:简单来说,on-link可以理解为直连的,off-link是非直连的。当对外发封包进行下一跳选择时,如果目的地址是on-link的,则说明是同一link路上的邻居节点,直接发

送即可(即使经过了hub、交换机等,都看认为是直连的);如果未知是on-link还是

off-link,则发送给默认路由器;如果是off-link 的,则说明需要发给路由器进行转

发(在后两种情况下路由器可能发送Redirect,通知目的节点实际是on-link的,则后

续按直连处理)

longest prefix match

最长前缀匹配。一个确定多个前缀的哪个前缀覆盖了目标地址的过程。如果前缀的所

有bit位与目标地址最左侧的bit位匹配,则目标地址被该前缀覆盖。当多个前缀都

可以覆盖一个地址时,则匹配最长的那个前缀。

reachability

可达性,表示通往邻居的单向“转发”路径是否能够正常工作。进一步讲,指发往邻

居的封包是否到达了邻居主机上的IP层,并且被接收到的IP层恰当的处理。对于邻

居路由器,可达性意味着节点的IP层发送的封包被正确的交付到了路由器的IP层,

并且,路由器确实转发封包(即它被配置为路由器,而不是主机)。对于主机来说,

可达性意味着节点发送的IP封包被正确的交付给了主机的IP层。

packet 封包,封包由IP头+载荷组成。

link MTU 链路MTU,即链路最大传输单元,即链路上一次可以通过的以字节(八位元组octet)为单位的最大封包大小。

target 目标地址,正在被寻求地址解析信息的地址,或者是重定向时新的第一跳的地址。proxy 代理,代替其他节点应答邻居发现查询报文的节点(译者注:对应IPv4的ARP代理功能)。代表已经处于off-link的移动节点的路由器可以充当移动节点的代理。

ICMP destination unreachable indication

ICMP目的地不可达指示(ICMPv6控制报文的一种类型),当封包由于[ICMPv6]中指定

的原因无法交付时,给封包的源发送方返回的错误指示。如果错误并未发生在封包的

源节点,则生成一个ICMP错误消息;如果错误发生在封包的源节点上时,不要求IPv6

实现真的创建并发送一条ICMP错误封包给源节点,而只要上层发送方可以通过合适的

机制得到通知即可(比如,通过函数返回值)。但是,请注意,在某些情况下,通过

生成包含违规封包的ICMP错误消息,然后通过本地通用错误处理例程返回给上层,是

很方便的。

random delay

随机延迟,当外发消息时,为了防止大量节点恰好在同一时刻启动传输或者防止远程

周期性传输彼此同步[SYNC],有必要延迟一个随机时间后在进行传输。该需要一个随

机分量时,节点以一种方式计算实际的延迟,计算出的延迟是由介于最小和最大值之

间的均匀分布的随机值组成。实现者必须注意确保所计算的随机分量的粒度和所用计

时器的精度都足够高,以确保多个节点延迟相同时间量的概率很小。

random delay seed

随机延迟种子。如果一个伪随机数生成器用来计算随机延迟分量,则发生器应该使用

一个唯一的种子进行初始化。注意,仅仅使用接口ID作为种子是不够的,因为接口ID

并不总是唯一的。为了降低重复接口ID导致使用相同种子的概率,应该从即使在相同

的“盒子”上也可能不同的各种输入源(例如,机器组件)计算种子。比如,种子可

以由CPU芯片的序列号和接口ID组合而成。更多关于随机性和随机数生成的细节信息,

可以参考[RAND]。

2.2链路类型

不同的类型的链路具有不同的属性。邻居发现所关注的是:

multicast capable

组播能力。在链路层具备发送封包到所有(比如通过广播)或到所有邻居中的一个子

集的本地机制的链路。

point-to-point 点对点链路。仅仅连接两个接口的链路。一个点对点链路假定拥有组播能力以及一个链路本地地址。

non-broadcast multi-access (NBMA)

非广播多路接入。一个可以连接超过两个接口的,但是不支持原生组播或广播形式的

链路(比如X.25、ATM、帧中继等)。注意,所有的链路类型(包括NBMA)都被要求

能为需要它的应用程序提供多播服务(例如,使用多播服务器)。但是,ND是否应使

用此类功能或为ND提供等效的多播功能的替代机制是一个需要进一步研究的问题。

shared media

共享媒介,允许在多个节点之间直接通信的链路,但是连接的节点以这样的方式配置:

它们没有针对所有on-link的目的地的完整前缀信息。即,在IP层,在相同链路的节

点并不知道它们的邻居;默认情况下,通信都要经过路由器。例如大型(交换)公共

数据网络,例如交换多兆位数据服务(SMDS)和宽带综合服务数字网络(B-ISDN)。也

称为“大云”。参见[SH-MEDIA]。

variable MTU 可变MTU,一个没有定义知名MTU的链路(比如IEEE 802.5令牌环网)。许多链路类型(不让以太网)都有一个被链路层协议定义的或者被特定描述IP如何在其上运行

的链路层规范定义的标准的MTU。

asymmetric reachability

非对称可达性,一种非对称(可反射)和/或非递归(非可传递)可达性是正常操作的

一部分的链路(非发射性可达性意味着封包从A可以到达B,但是封包从B无法到达A;

非可传递性可达性意味着,封包可以从A到B,从B到C,但是封包无法从A无法到达C)。

许多无线链路显示了这种属性。

2.3地址

邻居发现机制使用了在IPv6地址架构[ADDR-ARCH]中定义的多个不同类型的地址。包括:

all-nodes multicast address

所有节点组播地址。可以到达本地链路范围内所有节点的地址:FF02::1。

all-routers multicast address

所有路由器组播地址。可以到达本地链路范围内所有路由器节点的地址:FF02::2。

solicited-node multicast address

被请求节点组播地址。是一个通过被请求节点目标地址计算的本地链路范围内的组播

地址。计算方法在IPv6地址架构文档[ADDR-ARCH]中描述。选择的计算方法,仅在那

些最高bit位上不同的IP地址(例如,由于存在不同供应商相关联的多个前缀)将映

射到相同的请求节点地址,从而减少节点必须在链路层加入的多播地址的数量。格式:

FF02::1:FFXX.XXXX,其中XXXXXX是IP包头目的地址的低24bit。

link-local address

链路本地地址或本地链路地址,一个作用域为链路本地的,只能与邻居通信的单播地

址。router上的所有接口都有一个链路本地地址。同样,[ADDRCONF]规范要求主机的

接口也要用链路本地地址。

unspecified address

未定义地址。用于表示地址缺失的保留地址(比如,地址是未知的)。它决不能用作

目的地地址,但是在发送方没有还不知道它自身地址时(比如在无状态地址自配置

[ADDRCONF]过程中未验证地址是否已被使用时),用作源地址。未定义地址定义为:

0:0:0:0:0:0:0:0,缩写为“::”。

注意,本规范并未严格遵守[ADDR-SEL]中关于源和目的地址作用域范围的一致性要求。在某些情况下,IPv6包头中的使用的源地址的作用域大于目的地址的范围。

2.4要求

本文档中出现的关键字MUST(必须)、MUST NOT(不得)、REQUIRED(必选的)、SHALL(将要)、SHALL NOT(将不会)、SHOULD(应该)、SHOULD NOT(不应该)、RECOMMENDED(推荐)、MAY(可能)、和OPTIONAL(可选),其含义参考RFC2119规范。

本文档也利用了内部概念性的变量来描述协议的行为,以及实现必须允许系统管理员更改的外部变量。提供了特定变量名,它们的取值如何变化以及它们的设定如何影响协议行为,来演示协议的行为。

不要求某个实现完全以本文档描述形式定义它们,只要求外部行为与本文档描述一致即可。

3协议概述

本协议解决了连接到同一链路上的多个节点交互相关的一系列问题。它为下述的问题定义了对应的解决方案:

Router Discovery:路由发现,主机如何定位链路上的路由器。

Prefix Discovery:前缀发现,主机如何发现一组前缀地址,这些前缀定义了指定链路上哪些目的地是在线的(on-link)。节点使用前缀区分位于链路上的目的地,和必须通过路由器才能到达的目的地。

Parameter Discovery:节点如何学习到链路参数(比如链路MTU)或者置于外发封包内的IP参数(比如hop limit值)。

Address Autoconfiguration:地址自配置,为节点的接口引入无状态方式配置地址的机制。

无状态地址自配置定义在[ADDRCONF]规范中。

Address resolution:地址解析,在仅指定目的地IP地址的情况下,节点如何确定链路上指定目的地(邻居)的链路层地址。

Next-hop determination:将IP目的地地址映射到向某个目的地发送封包应该发送给某个邻居的IP地址的算法。下一跳可以是路由器或目标本身。

Neighbor Unreachability Detection:邻居不可达检测。节点如何确定某个邻居不在可达。对于作为路由器的邻居,可以尝试另外的默认路由器。对于主机和路由器,可以再次执行地址解析。

Duplicate Address Detection:节点如何确定它将要使用的IP地址是否已被其他节点占用。

Redirect:重定向,路由器如何通知主机到达某个特定目的地更好的下一跳节点。

邻居发现定义了5个不同的ICMP控制封包类型。一对用于路由器查询请求和路由器通告消息;一对邻居查询请求和邻居通告消息;以及一个重定向Redirect消息。这些消息服务于如下目的:

Router Solicitation:路由器查询请求(RS),当接口启用时,主机可以发送RS,请求路由器立即生成路由器通告应答(RA),而不是等到下个调度周期(RA周期广播)。

Router Advertisement:路由器通告(RA),路由器周期的发送RA,通告自身的存在,以及各种链路层和IP层参数,同时也可以通过应答RS的方式发送RA。RA包含了用于确定同一链路上是否有另外的地址共享相同链路的前缀,以及/或者用于地址配置,以及建议的Hop limit 取值等等。

Neighbor Solicitation: 邻居查询请求(NS),由节点发出用于确定邻居链路层地址,或者验证邻居使用缓存的链路层地址依旧可达。RS同样可以用于重复地址检测。

Neighbor Advertisement: 邻居通告应答(NA),对NS的应答消息。节点也可以主动发送NA,去宣告自身链路层地址的变更(主机可以在开始时主动发出NA)。

Redirect:重定向。用于路由器通知主机到达某个目的地可以使用的更好的下一跳。

在具备组播能力的链路上,每个路由器周期性的组播RA封包,通告自身的可用性。接收到所有路由器的RA的主机,构建一个默认路由器列表。路由器周期性的生成RA足够使得主机在一段时间内能够学习到它们的存在,但是该周期不足以用于及时的检测到路由器故障(RA通告周期用于检测邻居不可达来说,时间过长)。而单独的邻居不可达性检测算法可提供故障检测。

RA包含了一组用作确认地址是否on-link的前缀,和/或前缀是否用于地址自动配置,以及前缀关联的标志指示了特定前缀的用途。主机使用通告的on-link的前缀去构建和维护一个前缀列表,用于确定外发封包的目的地址是on-link或者超过了路由器的范围。注意目的地可以是on-link的,即使它没有被通告的任何一个前缀所覆盖。在这种情况下,路由器可以发送重定向报文,通知发送方这个目的地是一个邻居。

RA(以及前缀标志)使得路由器通知主机如何执行地址自动配置。比如,路由器可以指定主机是哦福应该是否DHCPv6,和/或无状态地址自配置机制。

RA通告消息还包含了IP层参数,比如主机在外发封包中应该使用的Hop limit,以及,可选的链路层参数,比如链路MTU。这有助于对关键参数的集中化管理,这些关键参数可以在路由器上设置并自动传播到所有连接的主机。

节点通过组播NS请求目标节点返回其链路层地址,从而完成地址解析。NS消息被组播到目标地址对应的请求节点组播地址(FF02::1:FFXX.XXXX,其中XXXXXX为目标地址的低24bit)。目标地址所在节点通过单播的NA消息返回其链路层地址。一个请求/应答封包对足以使得发起方和目标解析到对方的链路层地址。发起方在NS中包含了其自身的链路层地址。

NS也可以用于确定是否有多与一个节点被分配了相同的单播地址。NS消息用作重复地址检测定义在[ADDRCONF]规范中。

邻居不可达检测用于检测邻居的故障或者到邻居转发路径的故障。这要求一个正面确认,即发出的封包实际到达了邻居并且正被其IP层正确的处理。邻居不可达检测使用两个确认源。当可能时,上层协议提供了正处于转发中的连接作为正面确认,即,之前发送的封包已经得知被正确的交付(比如,最近刚刚收到的新确认)。当没有现成的这种“暗示”获得正面确认时,节点发送单播的NS消息,

用来自下一跳的NA作为可达性的确认。为了减少不必要的网络流量,只能向正在向其发送活动封包的节点发送探测消息。

为了解决以上普遍性的问题,邻居发现同样处理以下场景:

链路层地址变化:得知自身链路层地址已经发生变化的节点,可以主动(unsolicited)组播少量NA报文给所有节点,使得它们能够尽快的更新缓存的已经无效的链路层地址。注意,主送组播的NA只是增强了性能(比如,不可靠)。邻居不可达检测算法保证所有节点将可靠的发现新的链路层地址,尽管延迟可能会稍长一些。

负载负载均衡:具有复制接口的节点可能希望在同一链路上的多个网络接口上对传入数据包的接收进行负载平衡。这样的节点有多个链路层地址分配给同一个接口。例如,单个网络驱动程序可以将多个网络接口卡表示为具有多个链路层地址的单个逻辑接口。

邻居发现协议允许路由器对寻址到自身的流量执行负载均衡,具体做法是路由器在RA中遗漏源链路层地址,因此强制邻居使用NS消息去学习路由器的链路层地址,而通过NA返回的链路层地址可以由于不同因素,比如谁发起了NS查询请求,而不同。本文档没有定义主机如何对入站封包进行负载均衡的机制,可参考[LD-SHRE]。

任播地址:任播地址标识提供相同服务的一组节点中的一个,并且同一链路上的多个节点可以配置为识别相同的任播地址。邻居发现通过允许节点可以接收相同目标的多个NA处理任播地址。

任播地址的通告都被标记为不可覆盖通告,不可覆盖通告的信息不能被其他节点的通告更新或替换。这类通告在稍后NA消息的上下文中在进一步讨论。这引出了如何确定采用潜在的多个通告中的哪一个的规则。

代理通告:愿意代表其他无法响应NS的目标的节点接收数据包的节点可以发出不可覆盖的NA。

代理通告用于Mobile IPv6 Home Agent保护mobile node的off-link的地址。但是,无意将代理通告作为处理节点(例如,不实现该协议的节点)的通用机制。

3.1与IPv4的对比

IPv6邻居发现协议对应IPv4的地址解析协议[ARP]、ICMP路由发现协议[RDISC]、以及ICMP重定向[ICMPv4]三者的组合。在IPv4中,没有达成一致的通用协议或机制用于邻居不可达检测,尽管主机规范文档[HR-CL]确实为死亡网关检测定义了一些可能的算法(邻居不可访问性检测解决的问题的子集)。

邻居发现协议在IPv4协议集合的基础上进行了如下多处增强:

路由器发现作为了基础协议集的一部分;主机没有必要再去“窥探”路由协议。

RA通告中包含了链路层地址,不再需要额外的封包交换去加些路由器的链路层地址。

RA携带了链路的前缀,不再需要单独机制去配置“网络掩码”。

RA使能了地址自配置。

路由器可以给主机通告在链路上应该使用的MTU,在缺少知名MTU的连接上,保证所有的节点使用相同的MTU。

地址解析组播“散布”在超过1600万个(2^24)多播地址上,极大减少了非目标节点上地址解析相关的中断次数。进而,非IPv6机器根本不应该产生中断。译者注:参考rfc2464 IPv6 Over Ethernet,地址解析封包的目的MAC地址是:33:33:XX:XX:XX:XX,其中XX是组播地址的第4字节。因此相对IPv4的ARP广播是降低了CPU的中断次数。

重定向报文中包含了新的下一跳的链路层地址;一旦收到redirect,不在需要单独的地址解析。

多个前缀关联到同一链路上。默认情况下,主机会从RA中学习到所有的on-link前缀。但是,路由器可以配置为从RA中忽略某些或所有前缀,在这种情况下,主机会假定目的地是off-link 的,并发送所有流量到路由器,随后路由器可以根据需要发送重定向报文。

不像IPv4,接收到IPv6重定向将假定下一跳是on-link的。在IPv4中,主机忽略重定向指定的根据链路的网络掩码确定的不在链路上的下一跳。IPv6重定向机制类似于[SH-MEDIA]中指定的XRedirect设施。预期这在非广播和共享媒介的链路上很有用,在这种情况下,节点不希望或不可能知道on-link的目的地的所有前缀。

邻居不可达检测是基础协议的一部分,在路由器故障,部分链路故障,或者节点的链路层地址变更的情况下,其显著提高了数据包交付的稳定性。比如,由于存在过时的ARP缓存,移动节点可以在转变为off-link时,不丢失任何连接。

不像ARP,邻居发现可以检测到半连接故障(使用邻居不可达检测),并且避免向双向连接缺失的邻居发送流量。

不像IPv4的路由器发现机制,RA通告中不含优先级(preference)字段。不需要优先字段来处理具有不同“稳定性”的路由器。邻居不可达检测可以识别出死亡的路由器,并切换到可以工作的路由器上。

使用链路本地地址唯一标识一个路由器(对于RA和重定向报文),使得主机在使用新的全球单播前缀进行站点重新编号时维护与路由器的关联变得可能。

通过设置Hop Limit为255,邻居发现将不受意外或故意发送ND消息的off-link的发送方的影响。在IPv4中,off-link发送方能够发送ICMP重定向和RA消息。

将地址解析放在ICMP层使得协议比ARP更加与媒介无关,并且使得利用IP层通用的认证和何合适的安全机制变得可能。

3.2支持的链路类型

邻居发现支持不同属性的链路。在存在某些属性的情况下,仅指定了本文档中全部ND协议机制的子集:

point-to-point 点对点链路,邻居发现像对称组播链路一样处理点对点链路(可以在点对点

链接上轻松提供多播,并且可以为接口分配链路本地地址)。

multicast:组播链路,邻居发现正如本文档描述一样,支持在多播链路上运行。

non-broadcast multiple access (NBMA) 非广播多路接入链路

重定向,应该支持本文档描述的邻居不可达检测和下一跳检测。地址解析和

在类NBMS链路上的RS/RA的传输机制,未定义在本文档中。注意,如果主机

支持手动配置默认路由器的列表,则主机能够动态的从重定向报文中获取它

们邻居的链路层地址。

shared media 共享媒介链路,重定向报文以[SH-MEDIA]中的XRedirect 消息为模型,以简

化协议在共享媒介链路上的使用。

本规范未解决仅与路由器相关的共享媒介问题,比如:

- 路由器在共享媒介链路上如何交换可达性信息。

- 路由器要向主机发送重定向报文时,如何确定主机的链路层地址。

- 路由器如何确定它是接收到封包的第一跳路由器。

本协议是可可扩展的(通过定义新的选项),所以将来可能会有其他的解决

方案。

variable MTU 可变MTU链路。邻居发现允许路由器指定链路上所有节点使用的MTU。链路上

的所有节点必须使用相同的MTU(或最大接收单元MRU),以使组播正常工作。

否则,组播的发送方无法知道哪些节点能够收到该组播包,不能确定所有节

点能够处理的最小封包尺寸(或MRU)。

asymmetric reachability不对称可达性链路

邻居发现检测对称可达性的缺失;节点应避免到其不具有对称连接性的邻居

的路径。

邻居不可达检测通常能够识别此类单向连通的链路(半连接),并且节点将

避免使用它们。

该协议可能会在将来扩展,以在缺乏反射性和传递性连接的环境中找到可行

的路径。

3.3保护邻居发现消息

各种功能需要邻居发现消息。设计了几种功能,以允许主机确定地址的所有权或链路层地址和IP地址之间的映射。与邻居发现相关的漏洞将在11.1节中讨论。保护邻居发现的通用解决方案不在本规范的范围内,并且在[SEND]中进行了讨论。但是,第11.2章节中解释了如何以及在哪些约束下使

用IPSEC AH或ESP来保护邻居发现。

4消息格式

本章介绍了本文档使用的所有消息的格式。

4.1路由器请求(RS)消息格式

主机发送RS报文以提示路由器尽快生成RA报文。

IP字段:

源地址

RS外发接口的IP地址,分两种情况:

1.外发接口的IP地址(如果已配置);

2.未定义地址(即“::”,如果外发接口没有IP地址)。

目的地址

通常是所有路由器组播地址(FF02::02)。协议未明确限制不能单播NS控制包。

跳数限制

255

ICMP字段:

Type 133

Code 0

Checksum ICMP校验和,参考[ICMPv6]

Reserved 未使用该字段。发送方置0,接收方忽略。

有效选项:

Source link-layer address

发送方的链路层地址,与上边IPv6包头中的“源地址”对应,有两种情况:发

送方已知链路层地址,则应该包含该选项;当源地址是未定义地址时,不得包含

该选项。

本规范将来的版本可能会定义新的选项类型。接收方必须无声地忽略其不认识的选项类型,并继续处理消息。

4.2路由器通告(RA)消息格式

路由器周期性的发送或者应答RS时,发送RA通告报文。

IP字段:

源地址

必须是RA发送接口分配的链路本地(link-local)地址。

目的地址

通常是RS封包的源地址或者所有节点组播地址(FF02::01):

如果是单播地址,则一般是对单播或组播请求的应答;

如果是所有节点组播地址,则一般是主动广播的RA

跳数限制

255

ICMP字段:

Type 134

Code 0

Checksum ICMP校验和,参考[ICMPv6]

Cur Hop Limit 8-bit无符号整数。用作外发封包IP包头中Hop Limit的默认值。如果为0,表示该路由器未定义该字段。

M 1bit的“被管地址配置”标志。当为1,表示地址可以通过DHCPv6获取[DHCPv6],如果M为1,则O标志冗余且可以忽略,因为通过DHCPv6可以得

到所有可用的配置信息。

O 1-bit“其他配置”标志。如果为1,表示可以通过DHCPv6获取其他配置信

息。比如DNS相关的信息或者本网络内其他Server的信息。

如果M和O标志均未设置,表示通过DHCPv6无法获取可用信息。

Reserved 未使用该字段。发送方置0,接收方忽略。

Router Lifetime

16-bit无符号整数。表示作为默认路由器的生命周期,以秒为单位。该字段

可以最大取值范围到65535,接收方应该处理任何取值,尽管第6章中的发

送规则限制生命周期最大为9000秒。取值为0时,指示该路由器不是默认

路由器,并且不应该出现在默认路由器列表中。路由器的生存周期只适用于

路由器作为默认路由器的用途;它并不适用于包含在消息字段或选项中的信

息。对自身信息有时间限制的选项将会包含自己的生命周期字段。

Reachable Time 32-b it无符号整数。以毫秒为单位的可达性保持时间,指示节点在接收到

邻居的可达性确认信息后,应该假定邻居可达性的持续时间。该时间用于邻

居可达性检测算法。取值为0表示该路由器未定义该字段。

Retrans Timer 32-bit无符号整数,重发邻居查询请求的间隔,以毫秒单位。用于地址解析

和邻居可达性检测算法(参考7.2和7.3)。取值为0,表示该路由器未定

义该字段。

Possible options:

Source link-layer address 源链路层地址

IPv6邻居发现机制IPv6协议中一个重要特性就是IPv6的邻居发现机制

IPv6邻居发现机制 IPv6协议中一个重要特性就是IPv6的邻居发现机制,在本课题的实验中可以看到IPv6邻居发现机制中的众多特性。地址自动配置与邻居发现有密切的关系,因此也将在本节中涉及。 一、邻居发现 IPv6邻居发现最初在RFC 1970(参考文献〔7〕)中描述,目前已在RFC 2461 [i]中重新定义。 IPv6邻居发现提供了几种不同用途,包括以下方面的支持: l 路由器发现。即帮助主机来识别本地路由器。 2 前缀发现。节点使用此机制来确定指明链路本地地址的地址前缀以及必须发送给路由器转发的地址前缀。 3 参数发现。此机制帮助节点确定诸如本地链路MTU之类的信息。 4 地址自动配置。用于IPv6节点地址自动配置 [ii]。 5 地址解析。替代了ARP和RARP,帮助节点从目的IP地址中确定本地节点(即邻居)的链路层地址。 6 下一跳确定。可用于确定包的下一个目的地,即可确定包的目的地是否在本地链路上。如果在本地链路,下一跳就是目的地;否则,包需要路由,下一跳就是路由器,邻居发现可用于确定应使用的路由器。 7 邻居不可达检测。邻居发现可帮助节点确定邻居(目的节点或路由器)是否可达。l 重复地址检测。邻居发现可用于帮助节点确定它想使用的地址在本地链路上是否已被占用。 8 重定向。有时节点选择的转发路由器对于待转发的包而言并非最佳,这种情况下,该转发路由器可以对节点进行重定向,以将包转发到最佳的路由器。例如,节点将发往Internet的包发送给为节点的内联网服务的默认路由器,该内联网路由器可以对节点进行重定向,以将包发送给连接在同一本地链路上的Internet路由器。 邻居发现服务通过5种ICMPv6 [iii]报文类型来执行,这些报文包括: 9 路由器宣告。要求路由器周期性地发送多点传送路由器宣告消息,宣告其可用性及其可到达的在线节点、用于配置的链路和Internet参数。这些宣告包含对所使用的网络地址前缀、建议的路程段极限值及本地的MTU的指示,也包括指明节点应使用的自动配置类型的标志。 10 路由器请求。主机可以请求本地路由器立即发送其路由器宣告。路由器必须周期性地发送这些宣告,但是在收到路由器请求报文时,不必等到下一个预定传送时间到达。而应立即发送宣告信息。 11 邻居宣告。节点在收到邻居请求报文时或者链路层地址改变时,发出邻居宣告报文。 12 邻居请求。节点发送邻居请求来请求邻居的链路层地址,以验证它先前所获得并保存在告诉缓存中的邻居链路层地址的可达性,或者验证它自己的地址在本地链路上是唯一的。

ipv6,nd协议,广播

竭诚为您提供优质文档/双击可除 ipv6,nd协议,广播 篇一:网络基础邻居发现(nd)协议 网络基础邻居发现(nd)协议 ipv6邻居发现(nd)是一组确定邻居节点之间关系的消 息和过程。nd代替了在ipv4中使用的“地址解析协议(aRp)”、“internet控制消息协议(icmp)”、路由器发现和icmp重定向,并提供了其他功能。nd在RFc2461“用于ip版本6(ipv6)的邻居发现”(neighbordiscoveryforipVersion6(ipv6))中进行了描述。 邻居发现(nd)协议的使用主要可分为三个方面,包括nd由主机使用、nd由路由器使用和nd由节点使用。其中,在nd由主机使用中,主要用于探索邻居路由器、探索地址、地址前缀和其他配置参数;在nd由路由器使用中,主要用于公告它们的存在、主机配置参数以及处于链路的前缀,通知主机更好的下一个跃点地址,以便转发用于特定目标的数据包;在nd由节点使用中,主要用于解析ipv6数据包所转发到的邻居节点的链路层地址,确定邻居节点的链路层地址何时发生变化,确定ipv6数据包是否可以发送到邻居和能

否收到来自邻居的数据包。邻居发现(nd)协议的描述过程如表5-2所示。 篇二:ipV6基本协议分析实验 上机报告 篇三:ipv6协议实验 项目名称:实验报告 i.实验目的 1.配通自己pc的ipv6网络,熟悉ipv6相关的控制台命令; 2.学习nd及相关应用(如路由器发现、不可达检测、重复地址检测、前缀发现、参数发现、重定向等);(可选做其它感兴趣的协议或应用) ii.实验要求 在网络上抓取任意4种nd消息报文(至少4个截图),做报文分析。提交的作业内容包括: 1.自己pc的ipv6地址,如何知道ipv6是通的?请以截图配文字说明; 2.用抓包工具(如wireshark),抓取nd 消息报文,分析之,以截图(至少4个截图)配文字的形式。 iii.现有条件 学校的网络,能够上ipv6网站。microsoftwindows7操作系统抓包工具wiresharkv1.6.2 1.检测网络连接:

IPv6试题()

一、不定项选择题(含多选题或者单个选题,每题4分,少选得1分,多选或错选不得分,共20分) 1、IPv6 地址中包含下列类型() A、单播 B、多播 C、任播 D、广播 2、下列哪些地址是合法的链路本地地址() A、FE80::11 B、FEC0::2 C、FF02::A001 D、FF02::1:FF00:0101:0202 3、IPv6 中,链路层地址解析使用的报文是() A、ARP B、Neighbor Solicitation C、Neighbor Advertisement D、Neighbor Discovery(邻居发现) 4、IPv6 中,无状态地址自动配置过程中使用的主要报文包括哪些() A、RS(router solicication) B、RA(router advertisement) C、NS(neibour solicition) D、NA(neibour advertisement) 5、IPv6 中,邻居发现(Neighbor Discover)使用的主要报文类型包括哪些() A、路由器请求 B、路由器公告 C、邻居请求 D、邻居公告 E、重定向 二、单选题(只有一个选项是正确,每题4分,多选或错选不得分,共20分) 1、PMTU使用下面那类消息类型来实现探测() A、目的不可达(Destination Unreachable) B、数据包超长(Packet Too Big) C、超时(Time Exceede) D、参数(Parameter Proble) 2、下面Ipv6地址表示错误的是() A、::1/128 B、1:2:3:4:5:6:7:8:/64

ipv6

IPV6 中,链路层地址解析使用的报文是NDP邻居发现协议 IPV6共有多少位128 iPv6 中,链路层地址解析使用的报文是NDP邻居发现协议 下列哪一个IPv6地址是错误地址? ::FFFF ::1 ::1:FFFF ::1::FFFF 错 下列哪些地址是合法的请求节点组播地址( d ) A、FE80::11 B、FEC0::2 C、FF02::A00 D、FF02::1:FF01:1111 对 下面等价于IPV6地址FE80:0:0:ABC::1的地址 是?( b ) FE80:0:ABC::1 FE80:0:0:ABC:0:0:0:1 对 F3CC::ABC:0:1111 FE80:ABC:1 iPv6地址中,组播地址的前几位特定比特值是1110 手工配置IPv6静态默认路由的命令是ipv6 route ::/0 F0/1 iPv6 中,无状态地址自动配置过程中使用的主要报文包括哪些RA(router advertisement) IPv6地址空间中(链路本地地址) 地址设计用于单条链路上的地址分配,例如用于自动地址配置,邻站发现等 下面那个报文不是DHCPv6过程报文(Discover) IPv4地址用点分十进制表示,IPv6地址用( 冒号十六进制)表示。 IPv6的128位地址被分(8)段,每(4 )位为一段,每段被转化为一个(4 )位(十

六)进制数,并用(冒号)隔开 IPv6 中,邻居发现(Neighbor Discover)使用的主要报文类型 ipv6地址中用:号隔开的每一块有(16)位 “IPv6的邻居发现”中定义了以下机制,下面表述正确的是?ABCD 替代ARP 无状态自动配置 路由重定向 任播 组播适合应用的场合包括(ABD ) IPTV VOD 电台广播 网上远程教学 ipv6地址类型分为( ABC ) 单播 多播 任播 广播 ipv6地址单播地址类型分为( BCD ) 组播本地地址 全局单播地址 站点本地地址 链路本地地址 ipv6单播地址中链路本地地址的开头和网络接口 分别是( AD ) FE80:: FC30:: /64 /10

IPv6的邻居发现技术

IPv6的邻居发现技术 1、引言 随着IP网络规模和业务的迅速发展,IP网络的用户数急剧增加,正因为如此,IP网络也暴露出越来越多的问题,如地址空间不足、QoS、安全问题等。为了解决Internet的这些问题,尤其是解决地址空间不足的问题,IETF于1992年在IPv4的基础上定义了下一代的Internet协议,被称之为“Ipng”或“IPv6”。 IPv6解决的最大问题是扩大了地址空间,另外,它与IPv4相比在其它许多方面都具有优势,例如安全性、服务质量、移动性等。IPv6的一个显著特点就是它具有“即插即用”功能。即插即用使节点直接连接到网络后,不需要经过任何人工配置就能够使用,即插即用使网络的管理和控制变得更加简单;其次,节点只需要知道自己的链路层地址及本地网络的子网前缀,就能够通过IPv6的无状态或者全状态自动配置得到惟一的IPv6地址,从而成为网络的一部分;另外,IPv6还实现了更好的对节点移动性的支持。这些功能都是通过邻居发现协议来实现的,同一个子网内的所有主机和路由器之间的交互也都是通过邻居发现协议来实现的。 2、工作原理 邻居发现协议是IPv6协议的一个基本的组成部分,它实现了在IPv4中的地址解析协议(ARP)、控制报文协议(ICMP)中的路由器发现部分、重定向协议的所有功能,并具有邻居不可达检测机制。 邻居发现协议实现了路由器和前缀发现、地址解析、下一跳地址确定、重定向、邻居不可达检测、重复地址检测等功能,可选实现链路层地址变化、输入负载均衡、泛播地址和代理通告等功能。 邻居发现协议采用5种类型的IPv6控制信息报文(ICMPv6)来实现邻居发现协议的各种功能。这5种类型消息如下。 (1)路由器请求(Router Solicitation):当接口工作时,主机发送路由器请求消息,要求路由器立即产生路由器通告消息,而不必等待下一个预定时间。 (2)路由器通告(Router Advertisement):路由器周期性地通告它的存在以及配置的链路和网络参数,或者对路由器请求消息作出响应。路由器通告消息包含在连接(on-link)确定、地址配置的前缀和跳数限制值等。 (3)邻居请求(Neighbor Solicitation):节点发送邻居请求消息来请求邻居的链路层地址,以验证它先前所获得并保存在缓存中的邻居链路层地址的可达性,或者验证它自己的地址在本地链路上是否是惟一的。 (4)邻居通告(Neighbor Advertisement):邻居请求消息的响应。节点也可以发送非请

IPv6邻居发现协议的安全性研究

IPv6邻居发现协议的安全性研究 宋浪 湖南理工学院计算机学院,岳阳 414000 Email: sl.class19@https://www.doczj.com/doc/fa17792762.html, 【摘要】邻居发现协议(Neighbor Discovery Protocol,NDP)作为IPv6协议的重要组成部分,取代了IPv4中的ARP协议、ICMP路由发现和ICMP重定向功能。文章分析了NDP存在的安全问题,尤其是伪造IP地址攻击,并在此基础上提出采用加密生成地址和签名技术等来解决这些安全威胁。 【关键词】IPV6 邻居发现安全加密生成地址 【中图分类号】TP393 【文献标识码】G434 Analysis on IPv6 Neighbor Discovery Protocol Security Song Lang (School of Computer Science,Hunan Institute Science and Technology, Yueyang 414000)【Abstract】NDP(Neighbor Discovery Protocol, NDP) is an important part of IPv6 protocol, which corresponds to acombination of ARP protocol, ICMP router discovery and ICMP redirect function in IPv4. This paper analyses security problem that may be subjected to NDP, especially IP address spoofing attack. At last, this paper puts forward CGA(Cryptographically Generated Addresses, CGA) and signature to solve the threats of IPv6 NDP. 【keywords】IPV6 neighbor discovery security CGA 1 引言 随着网络规模迅速发展,IPv4网络暴露出越来越多的问题,IETF于1992年在IPv4的基础上定义了下一代的Internet协议,被称之为“IPng”或“IPv6”。 IPv6[1]的一个显著特点是它的地址自动配置功能,它由IPv6协议中的邻居发现协议实现,主机不需要任何人工操作即可自动获得一个合法的IPv6地址进行通信。邻居发现协议[2]解决了连接在同一条链路上的所有节点之间的互连问题,它主要完成路由器发现、重定向功能、地址自动配置、重复地址检测、地址解析和邻居不可达探测的功能。然而,地址自动配置也带来了一些安全问题,使得邻居发现协议可能遭受到各种网络攻击。了解并发现各种攻击手段,提出有效的防御措施是目前亟待解决的。 2 邻居发现协议的伪造IP地址进行攻击

ipv6邻居发现协议

IPv6地邻居发现技术 2、工作原理 邻居发现协议是IPv6协议的一个基本的组成部分,它实现了在IPv4中的地址解析协议(ARP)、控制报文协议(ICMP)中的路由器发现部分、重定向协议的所有功能,并具有邻居不可达检测机制。 邻居发现协议实现了路由器和前缀发现、地址解析、下一跳地址确定、重定向、邻居不可达检测、重复地址检测等功能,可选实现链路层地址变化、输入负载均衡、泛播地址和代理通告等功能。 邻居发现协议采用5种类型的IPv6控制信息报文(ICMPv6)来实现邻居发现协议的各种功能。这5种类型消息如下。 (1)路由器请求(Router Solicitation):当接口工作时,主机发送路由器请求消息,要求路由器立即产生路由器通告消息,而不必等待下一个预定时间。 (2)路由器通告(Router Advertisement):路由器周期性地通告它的存在以及配置的链路和网络参数,或者对路由器请求消息作

出响应。路由器通告消息包含在连接(on-link)确定、地址配置的前缀和跳数限制值等。 (3)邻居请求(Neighbor Solicitation):节点发送邻居请求消息来请求邻居的链路层地址,以验证它先前所获得并保存在缓存中的邻居链路层地址的可达性,或者验证它自己的地址在本地链路上是否是惟一的。 (4)邻居通告(Neighbor Advertisement):邻居请求消息的响应。节点也可以发送非请求邻居通告来指示链路层地址的变化。 (5)重定向(Redirect):路由器通过重定向消息通知主机。对于特定的目的地址,如果不是最佳的路由,则通知主机到达目的地的最佳下一跳。 3、主机的数据结构 IPv6的一个设计要求是:即使在一个有限的网络内,主机也必须正确工作,而不像路由器不能储存路由表,不能有永久的配置,因此主机必须能自动配置,必须能学到交换数据的有关目的地的最小信息。这些信息储存的存储器叫做缓存,这些数据结构是一系列记录的排列,称作表项。每个表项储存的信息有一定的有效期,需要周期性地清除缓存中的表项,以保证缓存的空间大

RFC4861 IPv6邻居发现协议-2007

RFC4861 IPv6邻居发现协议 2007

该备忘录状态: 本文档为Internet社区指定了Internet标准跟踪协议,并请求讨论和改进建议。有关本协议的标准化状态和状态,请参阅当前版本的“互联网官方协议标准”(STD 1)。这份备忘录的分发是不受限制的。 概述: 本文档定义了IPv6邻居发现协议。位于同一链路(子网)上IPv6节点使用邻居发现协议去发现每个节点的存在,确定每个其他节点的链路层地址,发现路由器,并管理&维护到活动邻居路径的可达性信息。 修订记录

目录 目录 (3) 1引言 (6) 2术语 (6) 2.1通用术语 (6) 2.2链路类型 (9) 2.3地址 (10) 2.4要求 (11) 3协议概述 (11) 3.1与IPv4的对比 (15) 3.2支持的链路类型 (16) 3.3保护邻居发现消息 (17) 4消息格式 (18) 4.1路由器请求(RS)消息格式 (18) 4.2路由器通告(RA)消息格式 (19) 4.3邻居查询(NS)消息格式 (21) 4.4邻居通告(NA)消息格式 (22) 4.5重定向(Redirect)消息格式 (24) 4.6选项格式 (26) 4.6.1源/目标链路层地址 (26) 4.6.2前缀信息 (27) 4.6.3重定向头 (28) 4.6.4MTU (29) 5主机概念模型 (30) 5.1概念数据结构 (30) 5.2概念发送算法 (31) 5.3垃圾回收与超时要求 (33)

6路由器和前缀发现 (33) 6.1消息检查 (34) 6.1.1RS消息有效性检查 (34) 6.1.2RA消息有效性检查 (35) 6.2路由器规范 (35) 6.2.1RA配置变量 (35) 6.2.2成为通告接口 (39) 6.2.3RA消息内容 (39) 6.2.4发送未经请求的RA (40) 6.2.5停止作为通告接口 (41) 6.2.6处理RS (41) 6.2.7RA一致性 (42) 6.2.8链路本地地址变化 (43) 6.3主机规范 (44) 6.3.1主机配置变量 (44) 6.3.2主机变量 (44) 6.3.3接口初始化 (45) 6.3.4处理RA (45) 6.3.5前缀和默认路由器的超时 (48) 6.3.6默认路由器的选择 (48) 6.3.7发送RS (48) 7地址解析和邻居不可达检测 (50) 7.1消息检查 (50) 7.1.1NS的有效性检查 (50) 7.1.2NA的有效性检查 (51) 7.2地址解析 (51) 7.2.1接口初始化 (52) 7.2.2发送NS (52) 7.2.3接收NS (53) 7.2.4发送NA (54)

IPv6知识点整理

RFC:(Request for Comments)意即“请求注解”,包含了关于Internet的几乎所有重要的文字资料。 IETF:(Internet Engineering Task Force)即因特网工程任务组,又叫互联网工程任务组,成立于1985年底。 NGI是Next Generation Internet,下一代互联网。ND:邻居发现协议。IPSec协议即网络安全体系结构。 互联网控制消息协议第六版即ICMPv6(ICMP for IPv6)是互联网控制消息协议(ICMP)在IPv6协议下的新版本。 RFC:请求注释request for comment IPng:所有有关下一代网络协议的总称。 IPv4存在问题:地址空间匮乏;存在网络安全隐患;不提供服务质量保证;IP地址配置复杂;缺少移动性支持。 IPv4与IPv6数据包包头比较:简化字段;扩充地址位数;IPv4数据包长度可变,IPv6不可变 地址表示方式:冒号分16进制;压缩模式;内嵌IPv4地址的IPv6地址格式。任播和单播共用IPv6地址p57 IPv6地址分类:单播地址;任播地址;多播地址。(任播地址是从单播地址空间中每个划分出来的) 任播地址不能作为一个IPv6数据包的源地址;一个任播地址不能分配给一个主机,只能分配给路由器。 取消广播地址的原因:用多播地址取代广播地址实现的功能,广播可能会为网络性能设置障碍。P51 ICMPv6与ICMPv4的比较:ICMPv6支持Mobile IPv6协议;IPv6中引入了邻居发现(ND)协议,使用ICMPv6报文确定同一个链路上的邻居的链路层地址、发现路由器、随时跟踪哪些邻居是可连接的,以及检测更改的链路层地址;原来IPv4的Internet组管理协议(IGMP)功能被加到ICMPv6中;ARP与RARP功能被加入到ICMPv6中了。 ICMPv6报文格式及其内容:差错报文:目标不可达,数据包过长,超时,参数问题。如traceroute 信息报文:回送请求报文,回送应答报文。如ping命令 ICMPv6差错报文功能:该报文是由目标或中间路由器发送的,用于报告在转发或传送IPv6数据包过程中出现的错误。因为该报文的8位类型字段中的最高位都为0,所以该报文的类型字段的有效范围是0~127。 ICMPv6信息报文功能:该报文提供了简单的诊断功能,来协助发现和处理故障。包括回送请求报文和回送应答报文,后面将作详细介绍。另外,还有一些ICMPv6信息报文是在邻居发现和多播侦听发现中使用。 邻居发现(ND)协议的组成:路由请求报文;路由通告报文;邻居请求报文;邻居通告消息报文;重定向报文。 IPv6路由协议:基于距离向量:RIPng(RIP Next Generation)协议; 基于链路状态:OSPFv3(Open Shortest Path First)协议,IS-IS协议; 基于路径向量:BGP-4(Border Gateway Protocol)协议,IDRPv2(Inter-Domain Routing Protocol)协议; IPSec主要包括两方面的协议:AH/ESP(Authentication Header/Encapsulating Security Payload)安全协议和IKE(Internet Key Exchange)密钥交换协议。 IPSec提供的安全服务包括:数据源认证、无连接机密性、抗重播攻击和有限的数据流机密性保护功能,可以对运行在IP层之上的任何协议起到保护作用,如TCP、UDP和ICMP。 IP QoS可以分为两种基本类型:基于资源预留:网络资源按照某个业务的QoS要求进行分配,制定资源管理策略。互联网工程任务组IETF(Internet Engineering Task Force)提出的综合服务(Integrated Services,IntServ)体系结构便是基于这种策略,资源预留协议(Resource reSerVation Protocol, RSVP)是其核心部分。 基于优先级:网络边界节点对业务流进行分类、整形、标记。核心节点按照资源管理策略分配资源,对QoS要求高的业务给以优先处理。IETF提出的区分服务(Differentiated Services,DiffServ)便是基于这种策略 IETF已经提出了几种IP QoS模型和机制,主要有: 综合服务和资源预留协议IntServ/RSVP:以RSVP信令向网络提出业务流传输规格(Flowspec),并建立和拆除传输路径上的业务流状态。主机和路由器节点建立和保持业务流状态信息。尽管RSVP经常用于单个流,但也用于聚流的资源预留。 区分服务:在区分服务网络中,边界路由器根据用户的流规格(stream profile)将用户流划分为不同的级别,再聚合成流聚集,聚集信息存放在IP包头的DS标记域,称为DS标记(Differentiated Services CodePoint,DSCP)。内部节点则根据DSCP提供不同质量的调度转发服务。 多协议标记交换(MultiProtocol Lable Switch,MPLS):根据分组头的标记,通过网络路径控制来提供流聚集的带宽管理 子网带宽管理(Subnet Bandwidth Management,SBM):负责OSI第二层(数据链路层)的分类和优先级排列,同IEEE 802网络进行共享和交换。 移动主机(MobileHost):移动IP协议中每个移动主机在家乡链路(HomeLink)上有一个唯一的家乡地址,当它漫游到外地网络时,将获得一个临时的转交地址(CareOf Address)。移动主机可以将接入Internet的位置从一条链路切换到另一条链路上,仍保持正在进行的通信。家乡代理(HomeAgent):是一台与移动主机家乡网络相连的路由器,也称归属代理。当移动主机位置切换时,HA负责维护移动主机当前位置信息,处理和响应移动主机注册请求消息。 外地代理(ForeignAgent):是移动主机所在外地链路上的一台路由器。一方面为移动主机提供转交地址,帮助移动主机将转交地址通知

IPV6模拟试题

《IPv6原理与技术》模拟试题一.选择题(共43分) (2分) A 分组交换理论的提出和TCP/IP协议的开发成功 B 自由的学术交流环境 2.下列字段中,()不是IPv4报头中的字段。(1分) A头xx B有效载荷xx C业务类型 D标识符 3.目前来看,下面哪些描述可以认为是IPv4的不足?()(4分) A IPv4地址空间即将耗尽 B路由表急剧膨胀 C无法提供多样的QOS D网络安全令人担忧 4.如果某IPv4网络的IP地址为192.168.1.200,子网掩码为 255.255.255.0,那么该IP所在的子网ID为()(1分) A 192.168.1 B 192.168

C 192.168.1.200 D 192.168.1.255 5.下列关于IPv6基本报头中有效载荷长度字段的描述是错误的()。(1分)A字段长度为16bit B有效载荷xx不包含基本报头的xx C一个IPv6数据报可以容纳64k八比特组的数据 D 有效载荷xx包含基本报头的xx 6.下面是一些由IPv6基本报头,扩展报头和高层报头组成的IPv6信息包,它们出现的顺序哪些是正确的?()(2分) A 基本报头,路由报头,跳到跳选项报头,TCP报文段 B基本报头,认证报头,路由报头,TCP报文段 C 基本报头,路由报头,分段报头,TCP报文段 D基本报头,路由报头,TCP报文段 7.IPV6扩展报头选项中的选项类型(Option Type)字段的格式为()。其中X表示未定义。(1分) A NNXXXM B XXXNNM C NNMMXX D NNMXXX 8.如果跳到跳选项报头的报头长度(Header Length)的值为8,那么该报头的实际总长度为()。(1分) A 0个8bit组

相关主题
文本预览
相关文档 最新文档