《【精品】03-IPv6对组播和任播的支持精品ppt课件.ppt》由会员分享,可在线阅读,更多相关《【精品】03-IPv6对组播和任播的支持精品ppt课件.ppt(88页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、03-IPv6对组播和任播的支持第第3 3单元单元 IPv6IPv6对组播和任播的支持对组播和任播的支持n3.1 自动配置自动配置3.1.1 链路本地地址链路本地地址3.1.2 无状态自动配置无状态自动配置3.1.3 重复地址检测重复地址检测3.1.4 有状态配置有状态配置3.1.5 地址的生命期地址的生命期3.1.6 动态主机配置动态主机配置3.1.7 更新名字服务器更新名字服务器2023/2/22第第3 3单元单元 IPv6IPv6对组播和任播的支持对组播和任播的支持n3.2 地址解析地址解析3.2.1 基本的算法基本的算法3.2.2 从路由器得到信息从路由器得到信息n3.3 组播地址结构
2、组播地址结构n3.4 组标识符的结构组标识符的结构n3.5 组管理组管理 n3.6 组播路由选择组播路由选择n3.7 任播任播n3.8 任播服务器任播服务器2023/2/23第第3 3单元单元 IPv6IPv6对组播和任播的支持对组播和任播的支持n组播能力组播能力是在是在19881988年通过定义年通过定义D D类地址和类地址和IGMPIGMP(InternetInternet组管组管理协议)正式加进理协议)正式加进IPv4IPv4的。的。19921992年年MBONEMBONE的建立加速了这些能的建立加速了这些能力的实施,然而这样的实施还远非普及。力的实施,然而这样的实施还远非普及。IPv6
3、IPv6的设计者们希的设计者们希望利用改换新协议的机会望利用改换新协议的机会保证组播功能在所有的保证组播功能在所有的IPv6IPv6节点上节点上都可以提供都可以提供。他们定义了所有路由器都应该识别的一个组播。他们定义了所有路由器都应该识别的一个组播地址格式,地址格式,把把IPv4IPv4的的IGMPIGMP功能加进功能加进IPv6IPv6的基本的基本ICMPICMP协议,协议,并并且保证且保证所有的路由器所有的路由器都能够为组播分组选择路由都能够为组播分组选择路由。n在在IPv6IPv6中结合进中结合进任播能力任播能力将为网络管理者提供大量的灵活性。将为网络管理者提供大量的灵活性。2023/2
4、/243.1 自动配置自动配置n自动配置自动配置是指一台机器或一个计算机能够自动发现和注册连接到是指一台机器或一个计算机能够自动发现和注册连接到InternetInternet需要的参数需要的参数。在使用提供者编址的情况下仅仅为一台机。在使用提供者编址的情况下仅仅为一台机器设置一次参数并永久使用是不够的。还应该让用户在改变提供器设置一次参数并永久使用是不够的。还应该让用户在改变提供者的时候能够动态地改变地址,而且当网络连接到多个提供者的者的时候能够动态地改变地址,而且当网络连接到多个提供者的时候,还应该让用户能够同时得到多个地址。另外,对于时候,还应该让用户能够同时得到多个地址。另外,对于安全
5、和安全和管理需求管理需求也应该予以考虑。一些场点需要对网络有更多的控制,也应该予以考虑。一些场点需要对网络有更多的控制,它们希望能够关闭自动配置功能。由于这些原因,它们希望能够关闭自动配置功能。由于这些原因,地址配置地址配置成为成为任何任何IPv6IPv6实现的一个不可缺少的部分。它可以用实现的一个不可缺少的部分。它可以用无状态的方式无状态的方式执执行,也可以用行,也可以用有状态的方式有状态的方式(服务器分配并记录地址)(服务器分配并记录地址)执行。后执行。后者是使用者是使用DHCPDHCP的的IPv6IPv6版本。版本。地址地址仅分配给网络接口一个仅分配给网络接口一个有限的生有限的生命期命期
6、。2023/2/253.1.1 链路本地地址链路本地地址n有些网络有些网络不使用不使用IEEE 802地址地址。在这种情况下具惟。在这种情况下具惟一性的一性的号码将必须从其它元素得到号码将必须从其它元素得到,例如,例如计算机插计算机插卡卡的的EUI-64号码,或者用以把站连接到另一类号码,或者用以把站连接到另一类链路链路的接口的的接口的EUI-64号码号码。最后一种可能性是。最后一种可能性是随机地选随机地选选取一个号码选取一个号码。n当然,当然,链路本地地址链路本地地址只能用于只能用于本地链路本地链路,它们不适,它们不适合组织一个大的网络。合组织一个大的网络。2023/2/283.1.2 无状
7、态自动配置无状态自动配置nIPv6IPv6节点通过加入节点通过加入“链路上的所有节点链路上的所有节点”组播组组播组开始初始化工作。这就开始初始化工作。这就需要对其接口编程,接收对应组播地址需要对其接口编程,接收对应组播地址FF02:1FF02:1(1 1表示所有节点)表示所有节点)的所的所有分组。然后节点有分组。然后节点给在链路上的路由器发送一个征求报文给在链路上的路由器发送一个征求报文,使用,使用“链路链路上的所有路由器上的所有路由器”组播组组播组地址地址“FF02:2FF02:2”作为目的地址,作为目的地址,使用它自己使用它自己的链路本地地址(的链路本地地址(IPv6IPv6地址)作为源地
8、址地址)作为源地址。n给在链路上的路由器发送的给在链路上的路由器发送的征求报文征求报文是类型为是类型为133133的的ICMPICMP报文报文(参见下页参见下页中的插图中的插图)。ICMPICMP编码设置成编码设置成0 0,检验和按照通常的,检验和按照通常的ICMPICMP报文过程计算。报文过程计算。征求报文可以包括征求报文可以包括选项选项,它用,它用“类型类型-长度长度-值值”的格式编写,使用的格式编写,使用1 1个个字节表示类型,字节表示类型,1 1个字节表示长度,可变数量的字节表示值本身。在征个字节表示长度,可变数量的字节表示值本身。在征求报文中求报文中仅有的选项是源的链路层地址仅有的选
9、项是源的链路层地址,例如它的以太网和令牌环地址。,例如它的以太网和令牌环地址。2023/2/293.1.2 无状态自动配置无状态自动配置 2023/2/2103.1.2 无状态自动配置无状态自动配置n“源的链路层地址源的链路层地址”选项用类型选项用类型1 1标识。长度用标识。长度用6464位或位或8 8字节为单位表示。字节为单位表示。对于对于IEEE 802IEEE 802地址,长度将被设置成地址,长度将被设置成1 1,选项将由,选项将由6 6字节即字节即4848位的地址组位的地址组成。当路由器接收到这样的一个征求报文时,将用一个成。当路由器接收到这样的一个征求报文时,将用一个路由器通告报文路
10、由器通告报文应答。这个报文将被发往征求方的链路层地址,使用征求报文源地址选应答。这个报文将被发往征求方的链路层地址,使用征求报文源地址选项中的内容作为介质地址,使用征求方的项中的内容作为介质地址,使用征求方的链路本地地址(链路本地地址(IPv6IPv6地址)作地址)作为目的为目的IPv6IPv6地址地址。n作为响应的路由器通告报文作为响应的路由器通告报文是类型为是类型为134134的的ICMPICMP报文。报文。ICMPICMP编码设置为编码设置为0 0,检验和按照通常的,检验和按照通常的ICMPICMP报文过程计算。报文报文过程计算。报文包含若干个参数包含若干个参数,它们有,它们有的出现在通
11、告头中固定的位置,有的是作为可变长度的选项。的出现在通告头中固定的位置,有的是作为可变长度的选项。这些参数这些参数用于自动配置的目的和邻居发现的目的用于自动配置的目的和邻居发现的目的,后者,后者(即即邻居发现邻居发现)是是代替代替IPv4IPv4地址解析和路由器发现协议的地址解析和路由器发现协议的IPv6IPv6过程过程。2023/2/2113.1.2 无状态自动配置无状态自动配置 2023/2/2123.1.2 无状态自动配置无状态自动配置n地址配置过程地址配置过程使用的使用的参数参数是两个称着是两个称着M和和O的控制的控制位以及位以及前缀前缀选项。当站被授权执行无状态配置时,选项。当站被授
12、权执行无状态配置时,M(被管理的地址配置被管理的地址配置)位设置成位设置成0。如果这一位置。如果这一位置1,站就不应该试图自己建立地址,而应该,站就不应该试图自己建立地址,而应该联系一个联系一个地址配置服务器地址配置服务器,使用有状态协议。当,使用有状态协议。当O(其它配(其它配置标志)置标志)位置位置1时,表示站可以时,表示站可以执行无状态地址配执行无状态地址配置置。不过在此情况下站应该。不过在此情况下站应该联系一个配置服务器联系一个配置服务器以以得到除地址以外的得到除地址以外的其它参数其它参数。当当M位是位是0时,站应时,站应该察看编码成选项的前缀列表该察看编码成选项的前缀列表。2023/
13、2/2133.1.2 无状态自动配置无状态自动配置 2023/2/2143.1.2 无状态自动配置无状态自动配置n前缀信息选项用选项类型前缀信息选项用选项类型3标识。标识。在一个报文中可以有多个在一个报文中可以有多个前缀选项前缀选项,每一个编码一个,每一个编码一个32字节(字节(4个个64位)的分立前缀。位)的分立前缀。长度域总是置成长度域总是置成4。地址。地址前缀用一个前缀用一个128位的地址和表示成位的地址和表示成位的数量的前缀长度位的数量的前缀长度编码编码。有效的和优选的生命期有效的和优选的生命期表示一个表示一个地址在变成无效或被淘汰之前持续的秒数。两个地址在变成无效或被淘汰之前持续的秒
14、数。两个1位的标志位的标志描述前缀。当前缀专用于本地链路时,或描述前缀。当前缀专用于本地链路时,或当前缀可以进入被当前缀可以进入被邻居发现过程使用的本地前缀列表时,邻居发现过程使用的本地前缀列表时,链路位链路位L置置1。当前缀。当前缀被被用于自治地址配置时,用于自治地址配置时,自治配置位自治配置位A置置1(自己配置,不用(自己配置,不用地址服务器);地址服务器);在这种情况下,站将通过用接口的具惟一性在这种情况下,站将通过用接口的具惟一性的标号,典型地是用的标号,典型地是用48位的位的IEEE 802地址代替地址代替前缀前缀的的后面后面的若干位(的若干位(64位中的位中的48位)建立一个地址。
15、位)建立一个地址。2023/2/2153.1.2 无状态自动配置无状态自动配置n路由器通告报文路由器通告报文不仅仅用于对征求的响应,路由器也将把这些报文不仅仅用于对征求的响应,路由器也将把这些报文以常以常规的重复周期发送给规的重复周期发送给“链路上的所有主玑链路上的所有主玑”组播地址组播地址。如果路由器在重。如果路由器在重复周期即将期满时收到一个征求,它可能选择通过组播发送通告进行响复周期即将期满时收到一个征求,它可能选择通过组播发送通告进行响应,而不是仅将通告发送给单个站。应,而不是仅将通告发送给单个站。n已经发出一个已经发出一个征求征求的站将等待响应的站将等待响应。考虑到征求报文可能有传输
16、差错,。考虑到征求报文可能有传输差错,发送站在一个合理的延迟时间之后如果还没有收到响应,例如在两秒钟发送站在一个合理的延迟时间之后如果还没有收到响应,例如在两秒钟之后,它将重复发送它的征求。然而,它的重复征求不能多于之后,它将重复发送它的征求。然而,它的重复征求不能多于3次。次。3次次征求仍未收到一个响应表明在链路上可能没有路由器。值得注意的是,征求仍未收到一个响应表明在链路上可能没有路由器。值得注意的是,征求站仅可以跟连接到同一链路的其它站通信。它应该仅使用它的链路征求站仅可以跟连接到同一链路的其它站通信。它应该仅使用它的链路本地地址。本地地址。2023/2/2163.1.3 重复地址检测重
17、复地址检测n只有在把具有惟一性的标号分配给每个接口的条件下,才只有在把具有惟一性的标号分配给每个接口的条件下,才能有效地执行自动配置过程。能有效地执行自动配置过程。原则上,大多数接口卡在出原则上,大多数接口卡在出厂的时候就有一个厂的时候就有一个IEEE-802IEEE-802地址。这些地址在世界范围内地址。这些地址在世界范围内都是惟一的,因此完全可以用作标号。但是,错误还是可都是惟一的,因此完全可以用作标号。但是,错误还是可能发生的,因为有一些廉价设备制造商使用非能发生的,因为有一些廉价设备制造商使用非IEEE-802IEEE-802注注册的号码,导致潜在的冲突。总是有一些临时存在的网络,册的
18、号码,导致潜在的冲突。总是有一些临时存在的网络,它们不使用它们不使用IEEE-802IEEE-802编址。采用随机选择的号码可能引起编址。采用随机选择的号码可能引起问题,特别是在随机发生器性能不是很好的情况下。由于问题,特别是在随机发生器性能不是很好的情况下。由于重复地址会带来严重的不良后果,所以尽快地检测和报告重复地址会带来严重的不良后果,所以尽快地检测和报告这些错误是重要的。这些错误是重要的。2023/2/2173.1.3 重复地址检测重复地址检测n一旦配置了一个地址,主机就向那个地址发送一个一旦配置了一个地址,主机就向那个地址发送一个请求报请求报文文,并且等待,并且等待1 1秒钟。如果另
19、一个站配置了同样的地址,它秒钟。如果另一个站配置了同样的地址,它将应答,并通告它的链路层地址,从而将应答,并通告它的链路层地址,从而暴露出冲突暴露出冲突。在这。在这时候,该主机知道它的号码不是惟一的,不应该使用这样时候,该主机知道它的号码不是惟一的,不应该使用这样的地址。此时,该主机要么再选择一个新的号码,要么请的地址。此时,该主机要么再选择一个新的号码,要么请求管理员干预解决。求管理员干预解决。n对重复地址的检测使用对重复地址的检测使用邻居发现过程邻居发现过程。接收不到应答可能。接收不到应答可能是因为不存在冲突,也可能是由于请求或应答本身的丢失。是因为不存在冲突,也可能是由于请求或应答本身的
20、丢失。站在合理确信它的标号的惟一性之前应当多次重试检测过站在合理确信它的标号的惟一性之前应当多次重试检测过程。当然,重试间隔应当很好地设计,以避免引起链路层程。当然,重试间隔应当很好地设计,以避免引起链路层拥塞。拥塞。2023/2/2183.1.4 有状态配置有状态配置n前述无状态配置有许多优点。它用起来很简单,并前述无状态配置有许多优点。它用起来很简单,并且不需要任何服务器。然而,它有两个且不需要任何服务器。然而,它有两个缺点缺点:对于对于地址空间的相对低效使用和缺乏网络访问控制地址空间的相对低效使用和缺乏网络访问控制。而。而且,自动地址配置仅仅管理了地址配置。且,自动地址配置仅仅管理了地址
21、配置。主机配置主机配置需要配置更多的信息需要配置更多的信息。事实上,邻居发现过程就允。事实上,邻居发现过程就允许主机配置诸如许主机配置诸如本地子网前缀本地子网前缀或或本地路由器地址本地路由器地址这这样的关键参数。为了能够在因特网上运行,站还必样的关键参数。为了能够在因特网上运行,站还必须发现有用的服务器地址,比较明显的是须发现有用的服务器地址,比较明显的是域名服务域名服务器器,通过在域名服务(,通过在域名服务(DNSDNS)中注册,使得自己的名)中注册,使得自己的名字和地址可提供给其它站使用。字和地址可提供给其它站使用。2023/2/2193.1.4 有状态配置有状态配置n无状态配置无状态配置
22、可能使得网络易于被窃听和截取。即插即用的整个思想是合可能使得网络易于被窃听和截取。即插即用的整个思想是合法用户从包装箱中取出机器,接上插头就可以运行。这也意味着如果黑法用户从包装箱中取出机器,接上插头就可以运行。这也意味着如果黑客能够把计算机带到室内,他也可以把它连到网上运行,就像他也是合客能够把计算机带到室内,他也可以把它连到网上运行,就像他也是合法用户那样。黑客也有可能使用一个暂时处于关机状态的一个本地机器法用户那样。黑客也有可能使用一个暂时处于关机状态的一个本地机器的地址上网。当然,真正的的地址上网。当然,真正的安全性安全性必须引入身份验证和加密。必须引入身份验证和加密。n路由器的通告可
23、以通过设置被管理配置位路由器的通告可以通过设置被管理配置位M M指定主机使用指定主机使用有状态配置有状态配置。如果主机接收到该位被置如果主机接收到该位被置1 1的报文,它的报文,它应该向距离最近的地址服务器提应该向距离最近的地址服务器提出请求出请求。隔离的主机收不到路由器通告,它们应联系一个本地地址服务。隔离的主机收不到路由器通告,它们应联系一个本地地址服务器。即使主机通过设置其它配置位器。即使主机通过设置其它配置位(o)(o)使用无状态地址配置,路由器也使用无状态地址配置,路由器也可以指定它们必须联系一个配置服务器,以得到附加参数,例如域名服可以指定它们必须联系一个配置服务器,以得到附加参数
24、,例如域名服务器的地址。务器的地址。2023/2/2203.1.5 地址的生命期地址的生命期n在很长的时间内,因特网用户相信,他们拥有自己的在很长的时间内,因特网用户相信,他们拥有自己的IPv4IPv4地址和自己的网络号。这在地址和自己的网络号。这在IPv6IPv6中将不再可能了。中将不再可能了。IPv6IPv6聚聚合网络号的能力意味着在地址和网络拓扑之间的依赖性。合网络号的能力意味着在地址和网络拓扑之间的依赖性。n网络拓扑在多方面可能改变。客户可能改变提供者,公司网络拓扑在多方面可能改变。客户可能改变提供者,公司主干网络可能重组,提供者也可能合并或分离。如果拓扑主干网络可能重组,提供者也可能
25、合并或分离。如果拓扑随时间改变,如果地址必须在某种程度上反映拓扑,那么随时间改变,如果地址必须在某种程度上反映拓扑,那么地址也必须随时间改变地址也必须随时间改变。n通过无状态或有状态配置得到的通过无状态或有状态配置得到的地址将有一个有限的生命地址将有一个有限的生命期期。在有状态配置中,。在有状态配置中,地址的生命期由地址服务器给出地址的生命期由地址服务器给出。在无状态配置中,在无状态配置中,地址的生命期从前缀的生命期推算地址的生命期从前缀的生命期推算,而,而前缀的生命期则由路由器通告给出。前缀的生命期则由路由器通告给出。2023/2/2213.1.5 地址的生命期地址的生命期n生命期已满的地址
26、将变得无效生命期已满的地址将变得无效。它不可以再被本地主机用作源地址,也不。它不可以再被本地主机用作源地址,也不可以被通信对方用作目的地址。这对于正在进行的通信会产生非常严厉的可以被通信对方用作目的地址。这对于正在进行的通信会产生非常严厉的后果。例如,在一对因特网地址之间建立了后果。例如,在一对因特网地址之间建立了TCPTCP连接。如果一方地址变得无连接。如果一方地址变得无效,效,TCPTCP连接将被中断。避免这种现象的惟一方法是改变连接将被中断。避免这种现象的惟一方法是改变TCPTCP,避免使用将避免使用将很快变成无效的地址很快变成无效的地址。nIETFIETF地址配置工作组没有强制改变地址
27、配置工作组没有强制改变TCPTCP,但它确实提出了一种机制,使得预,但它确实提出了一种机制,使得预测什么时候地址快要变得无效的工作比较容易。测什么时候地址快要变得无效的工作比较容易。IPv6IPv6地址有两个生命期:地址有两个生命期:一个有效生命期和一个优选生命期一个有效生命期和一个优选生命期。对于一个有效生命期已满的地址根本。对于一个有效生命期已满的地址根本不应该使用。优选生命期已满的地址也变得无效,它不可以在启动新的连不应该使用。优选生命期已满的地址也变得无效,它不可以在启动新的连接的时候使用。当一个接的时候使用。当一个TCPTCP进程启动一条连接时,它知道目的地址,但可以进程启动一条连接
28、时,它知道目的地址,但可以选择任一本地地址作为其源地址。它选择任一本地地址作为其源地址。它应当选用具有最长优选生命期的地址应当选用具有最长优选生命期的地址,或者至少它应当避免使用已经被淘汰或者很快就要被淘汰的地址。或者至少它应当避免使用已经被淘汰或者很快就要被淘汰的地址。2023/2/2223.1.5 地址的生命期地址的生命期n主机主机继续接收路由器通告继续接收路由器通告,它们将察看包含在这些,它们将察看包含在这些通告中的前缀。如果前缀是已知的,它们将使用包通告中的前缀。如果前缀是已知的,它们将使用包含在通告中的有效的和优选的生命期含在通告中的有效的和优选的生命期更新它们在自更新它们在自动配置
29、对应的地址时存储的生命期动配置对应的地址时存储的生命期。如果它们得知。如果它们得知一个新的前缀,在自治配置标志被置位的情况下,一个新的前缀,在自治配置标志被置位的情况下,它们将自动配置一个新地址。就这样,它们将自动配置一个新地址。就这样,分配给每个分配给每个接口的一组地址将不断演变接口的一组地址将不断演变。2023/2/2233.1.5 地址的生命期地址的生命期n有效的和优选的生命期都可能被设置成有效的和优选的生命期都可能被设置成无穷无穷大大,通常编码成,通常编码成3232位全位全1 1。在这种情况下,地。在这种情况下,地址将永远不会变成无效或被淘汰。按照定义,址将永远不会变成无效或被淘汰。按
30、照定义,这是保持永久有效的链路本地地址。不过,这是保持永久有效的链路本地地址。不过,在在IPv6IPv6的新版本中,这个定义有可能被修改。的新版本中,这个定义有可能被修改。有些人建议把无穷大改为某个较长的时间值,有些人建议把无穷大改为某个较长的时间值,例如例如6060天,这样就保证所有的网络都可以重天,这样就保证所有的网络都可以重新编址。新编址。2023/2/2243.1.6 动态主机配置动态主机配置n有状态配置有状态配置是是IPv4协议的动态主机配置协议(协议的动态主机配置协议(DHCP)的)的IPv6版本版本。DHCP基本上是一个客户基本上是一个客户/服务器协议,客户服务器协议,客户(主机
31、)查询服务器,取得配置参数。在这里存在的一个问(主机)查询服务器,取得配置参数。在这里存在的一个问题是,如果客户自己还没有配置题是,如果客户自己还没有配置IPv6地址,它如何能够查地址,它如何能够查询服务器并接收服务器的响应?另一个问题是,询服务器并接收服务器的响应?另一个问题是,客户必须得客户必须得到到DHCP服务器的位置信息服务器的位置信息。在每个场点安装一个或几个服。在每个场点安装一个或几个服务器是可能的,但没有必要在每条链路上都放置一个务器是可能的,但没有必要在每条链路上都放置一个专门的专门的服务器服务器。在某些链路上安装一个或几个。在某些链路上安装一个或几个中继代理中继代理可以用作在
32、可以用作在本地客户和服务器之间的中间设备,来为其所在链路上的客本地客户和服务器之间的中间设备,来为其所在链路上的客户提供服务。户提供服务。2023/2/2253.1.6 动态主机配置动态主机配置nDHCP的的IPv6版本为了解决这些问题利用了版本为了解决这些问题利用了IPv6本身的两本身的两个功能:主机建立一个链路本地地址的可能性和组播的可提个功能:主机建立一个链路本地地址的可能性和组播的可提供性供性。当需要对一台主机做配置时,先让它通过给。当需要对一台主机做配置时,先让它通过给“链路上链路上所有所有DHCP服务器和中继代理服务器和中继代理”地址地址“FF02:1:2”发送一发送一个个DHCP
33、征求报文征求报文,尝试得到本地的,尝试得到本地的DHCP服务设备信息。服务设备信息。源地址是主机的链路本地地址。源地址是主机的链路本地地址。报文使用用户数据报协议报文使用用户数据报协议UDP发送发送。服务器和中继设备接收其地址指向。服务器和中继设备接收其地址指向547号端口的号端口的报文;客户在报文;客户在UDP 546号端口上等待应答。号端口上等待应答。2023/2/2263.1.6 动态主机配置动态主机配置 2023/2/2273.1.6 动态主机配置动态主机配置n征求报文征求报文用用类型类型1(目的地址是组播地址)(目的地址是组播地址)标识。如果客户标识。如果客户请求清除所有先前分配的资
34、源,那么就将请求清除所有先前分配的资源,那么就将C位位置置1。报文总。报文总是包含客户的链路本地地址。如果有一个是包含客户的链路本地地址。如果有一个DHCP中继设备存中继设备存在,并收到了这个报文,它将用其接收接口的全局或场点本在,并收到了这个报文,它将用其接收接口的全局或场点本地地址填写地地址填写“中继地址域中继地址域”,把,把A位位置置1表示存在一个表示存在一个中继中继地址地址,再把报文中继给具有场点范围的,再把报文中继给具有场点范围的“所有所有DHCP服务器服务器”地址地址“FF05:1:3”。如果在征求报文中有中继地址,服。如果在征求报文中有中继地址,服务器将其响应(一个通告报文)发送
35、给中继地址;否则就把务器将其响应(一个通告报文)发送给中继地址;否则就把通告报文直接发送给客户地址。通告报文直接发送给客户地址。2023/2/2283.1.6 动态主机配置动态主机配置n通告报文通告报文用用类型类型2(目的地址是单地址)(目的地址是单地址)标识。它们总是包标识。它们总是包含客户的链路本地地址。如果征求报文是被直接收到的,含客户的链路本地地址。如果征求报文是被直接收到的,S位位将被置将被置1,代理地址将被改置成服务器的地址。如果征求报文,代理地址将被改置成服务器的地址。如果征求报文是经过中继接收到的,那么代理地址将是中继设备的地址,是经过中继接收到的,那么代理地址将是中继设备的地
36、址,S位将被置位将被置0,此时要把服务器地址加到客户地址的后面。从发,此时要把服务器地址加到客户地址的后面。从发送方收到通告报文的中继设备将把报文再次发送到客户的本送方收到通告报文的中继设备将把报文再次发送到客户的本地地址。地地址。中继设备将使用代理地址中继设备将使用代理地址(其先前接收征求报文的其先前接收征求报文的接口地址接口地址)确定在哪条链路上中继响应报文。)确定在哪条链路上中继响应报文。n通告报文包含一个可变数量的通告报文包含一个可变数量的扩展扩展,该扩展就是可以被客户该扩展就是可以被客户直接使用的配置参数直接使用的配置参数。2023/2/2293.1.6 动态主机配置动态主机配置 2
37、023/2/2303.1.6 动态主机配置动态主机配置n一台主机可能收到多个响应它的征求的通告报文。如果它收不到任何响应,一台主机可能收到多个响应它的征求的通告报文。如果它收不到任何响应,它将重复它的请求,最终会收到一个响应,或者放弃。它将重复它的请求,最终会收到一个响应,或者放弃。代理也将定期地广代理也将定期地广播通告,报告它可以提供配置服务播通告,报告它可以提供配置服务。主机一旦收到一个通告,它就选择一。主机一旦收到一个通告,它就选择一个代理或一个服务器,通过发送征求报文请求配置参数。个代理或一个服务器,通过发送征求报文请求配置参数。n类型为类型为3 3(目的地址是单地址)(目的地址是单地
38、址)的的请求报文请求报文从从不组播不组播。它们被。它们被送往一个指送往一个指定的服务器定的服务器,可以是直接的,也可以是经过一个指定的代理。在后者的情,可以是直接的,也可以是经过一个指定的代理。在后者的情况下,需要把况下,需要把S S位位置置1 1,并指定代理应该把请求中继到的服务器的地址。报,并指定代理应该把请求中继到的服务器的地址。报文有一个文有一个1414位的处理标识符位的处理标识符,它是主机请求不断增加的序列号,用来关联,它是主机请求不断增加的序列号,用来关联请求和应答。在丢失存储器内容后重启动操作的主机将请求和应答。在丢失存储器内容后重启动操作的主机将C C位位置置1 1,请求服务,
39、请求服务器清除分配给该主机的所有资源。器清除分配给该主机的所有资源。2023/2/2313.1.6 动态主机配置动态主机配置 2023/2/2323.1.6 动态主机配置动态主机配置n请求将被代理中继,并被服务器接收。服务器依次给代理发送(请求将被代理中继,并被服务器接收。服务器依次给代理发送(单个目的地址单个目的地址)应答应答,代理再把,代理再把应答应答向主机的链路本地地址中继。这些类型等于向主机的链路本地地址中继。这些类型等于4 4的报文具有跟的报文具有跟对应的请求相同的处理对应的请求相同的处理IDID。当请求成功时,。当请求成功时,错误码错误码将被置成将被置成0 0,否则,它将提供,否则
40、,它将提供失败原因的表示。值得注意的是,这里是尽一切可能让中继操作简单一些。当请失败原因的表示。值得注意的是,这里是尽一切可能让中继操作简单一些。当请求通过一个中继设备发送时,求通过一个中继设备发送时,S S位位置置1 1表示报文包含请求应该被中继前往的服务器表示报文包含请求应该被中继前往的服务器地址。当应答需要中继时,地址。当应答需要中继时,L L位位置置1 1,报文包含目的地主机的链路本地地址。,报文包含目的地主机的链路本地地址。n请求和应答的扩展段包含服务器必须提供的参数列表请求和应答的扩展段包含服务器必须提供的参数列表。参数有可变长的格式。它。参数有可变长的格式。它们以们以1 1个子节
41、的个子节的扩展类型扩展类型编码起始,后随编码以字节计的编码起始,后随编码以字节计的扩展长度扩展长度的的1 1个字节,再个字节,再往后就是往后就是扩展内容扩展内容。扩展编码。扩展编码0 0和和255255有特殊的功能。两者都编码成简单的字节,有特殊的功能。两者都编码成简单的字节,没有长度编码。扩展类型没有长度编码。扩展类型0 0在需要调整字的边界时用作填充。扩展类型在需要调整字的边界时用作填充。扩展类型255255表示扩表示扩展列表的结束。展列表的结束。2023/2/2333.1.6 动态主机配置动态主机配置 2023/2/2343.1.6 动态主机配置动态主机配置n最重要的扩展是用类型最重要的
42、扩展是用类型1 1标识的标识的地址扩展地址扩展。它包括。它包括4 4个可选的域个可选的域,它们的存在用一组,它们的存在用一组标志表示。当标志表示。当C C位置位置1 1时存在的客户地址是分配给该主机的一个时存在的客户地址是分配给该主机的一个IPv6IPv6地址。当地址。当L L位位置置1 1时扩展包含指定地址的优选的和有效的生命期。在扩展中的时扩展包含指定地址的优选的和有效的生命期。在扩展中的其余字节包含该地址其余字节包含该地址所关联的域名所关联的域名。n主机通过在它们的主机通过在它们的查询中放置地址扩展来请求地址查询中放置地址扩展来请求地址。这些扩展可能已经包含一个地。这些扩展可能已经包含一
43、个地址,例如,如果一个地址已经被无状态配置过程分配了,客户可能包括该地址优址,例如,如果一个地址已经被无状态配置过程分配了,客户可能包括该地址优选的和有效生命期。选的和有效生命期。A A和和P P位位指定客户请求对那个地址的处理。如果指定客户请求对那个地址的处理。如果Q Q位位置置1 1,那么,那么客户认为这些参数的值是确定的,仅仅请求服务器登记它们;否则这些值仅是一客户认为这些参数的值是确定的,仅仅请求服务器登记它们;否则这些值仅是一个提示,服务器可以选择用更合适的值代替它们。个提示,服务器可以选择用更合适的值代替它们。A A位位请求服务器把地址登记在请求服务器把地址登记在DNSDNS中跟域
44、名相关联的一个中跟域名相关联的一个AAAAAAAA记录中。记录中。P P位位请求服务器在把名字关联到地址的请求服务器在把名字关联到地址的PTRPTR记录中做登记,记录中做登记,PTRPTR的功用是反向影射主机名。的功用是反向影射主机名。2023/2/2353.1.6 动态主机配置动态主机配置 2023/2/2363.1.6 动态主机配置动态主机配置n如果主机不需要对提供的地址运行重复地址检测过程,那么如果主机不需要对提供的地址运行重复地址检测过程,那么为主机提供地址的服务器在应答中将把为主机提供地址的服务器在应答中将把D D位位置置1 1。如果在。如果在DNSDNS中中已经插入了已经插入了AA
45、AAAAAA和和PTRPTR记录,它将把记录,它将把A A位和位和P P位位置置1 1。它将在。它将在“前缀大小前缀大小”域域中中表示构成跟链路相关的地址前缀的地址位数。表示构成跟链路相关的地址前缀的地址位数。由服务器表明的生命期所起的作用跟在无状态配置过程中由由服务器表明的生命期所起的作用跟在无状态配置过程中由路由器表明的类似参数相同。主机被提醒,它们并不拥有它路由器表明的类似参数相同。主机被提醒,它们并不拥有它们的地址;它们仅仅是租用这些地址。为了保证连续的所有们的地址;它们仅仅是租用这些地址。为了保证连续的所有关系,它们必须在关系,它们必须在生命期满生命期满之前重复它们的之前重复它们的D
46、HCPDHCP请求。如果请求。如果它们没有这样做,那么服务器可以合理地假定主机不再需要它们没有这样做,那么服务器可以合理地假定主机不再需要这些地址了,可以把这些地址重新分配给其他客户。这些地址了,可以把这些地址重新分配给其他客户。2023/2/2373.1.6 动态主机配置动态主机配置n除了地址,在除了地址,在DHCP中还定义了中还定义了其它扩展其它扩展。类型类型2的时间偏移扩展的时间偏移扩展指定指定在通用的在通用的GMT时间和场点本地时间之间的差别。时间和场点本地时间之间的差别。类型为类型为6的域名服务器的域名服务器扩展扩展提供提供DNS服务器的服务器的IPv6地址列表。地址列表。类型为类型
47、为11的目录代理的目录代理扩展提供扩展提供目录服务器的地址。目录服务器的地址。类型为类型为15的域名的域名扩展向客户报告本地域的名字。扩展向客户报告本地域的名字。类类型为型为33的静态路由的静态路由扩展扩展 包含地址对列表,每个地址对都由一个目的地包含地址对列表,每个地址对都由一个目的地址和对应的下一跳组成。址和对应的下一跳组成。类型为类型为37的的TCP-TTL扩展跟路由器通告的扩展跟路由器通告的“最大跳段限制最大跳段限制”选项具有同样的作用。选项具有同样的作用。TCP保持活动间隔扩展保持活动间隔扩展(类型是(类型是38)指定在)指定在TCP连接上保持活动报文的最小间隔。服务器可以指定它们连
48、接上保持活动报文的最小间隔。服务器可以指定它们愿意接受的愿意接受的最大报文尺寸最大报文尺寸(类型(类型57),客户可以通过一个类别标识符),客户可以通过一个类别标识符(类型(类型60)告诉服务器它们的)告诉服务器它们的配置类型配置类型。已经重新编号的服务器可以通。已经重新编号的服务器可以通过一个特别的扩展通告它们的过一个特别的扩展通告它们的新地址新地址(类型(类型71)。它们可以指示它们的)。它们可以指示它们的客户在一个组播地址上倾听重配置报文,该客户在一个组播地址上倾听重配置报文,该组播地址组播地址在一个特别的扩展在一个特别的扩展(类型(类型70)中给出。在以后的阶段还可能定义新的扩展。另外
49、,编码)中给出。在以后的阶段还可能定义新的扩展。另外,编码43是为是为厂商专有的扩展厂商专有的扩展保留的。保留的。2023/2/2383.1.6 动态主机配置动态主机配置n除了征求(除了征求(solicitation)、通告()、通告(advertisement)、请)、请求(求(request)和应答()和应答(reply),),DHCP还定义了还定义了释放和释放和重配置报文重配置报文。类型是。类型是5的的释放报文释放报文由希望释放一些参数(例由希望释放一些参数(例如不再使用的地址)的客户发送。被释放的参数列在扩展域如不再使用的地址)的客户发送。被释放的参数列在扩展域中。服务器通过一个应答报
50、文确认释放。如果中。服务器通过一个应答报文确认释放。如果D(direct)位位置置1,应答报文将直接发给客户,否则就通过客户链路的,应答报文将直接发给客户,否则就通过客户链路的代理发送。代理发送。n重配置报文重配置报文由服务器用在由服务器用在“重配置组播地址重配置组播地址”扩展中定义的扩展中定义的组播地址发送。这些报文表示本地配置的组播地址发送。这些报文表示本地配置的一些参数已经改变一些参数已经改变了,并把这些将要被改变的参数列在报文的扩展域中了,并把这些将要被改变的参数列在报文的扩展域中。它们。它们可以由任一服务器发布,但客户必须通过联系发布它们的当可以由任一服务器发布,但客户必须通过联系发