您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 综合/其它 > RFC8415-DHCPv6&PD协议介绍
DHCPv6协议Jade2020/7/26目录•前言•DHCPv6交互过程说明•DHCPv6前缀委托•Message/Option说明•附录前言本胶片描述DHCPv6协议中client和server端的交互过程,包括地址和前缀分配/续租/释放等过程的说明;本文主要参考RFC8415/RFC3633(被RFC8415合并)/RFC6603,可作为这些协议的导读材料;阅读本胶片,读者应该了解的背景知识:-[RFC8200](“IPv6协议规范)-[RFC4291](IPv6寻址架构)-[RFC4862](IPv6无状态地址自动配置)-[RFC4861](IPv6邻居发现协议)术语•binding:分配给某个client的地址和配置信息的集合,通过三元组clientDUID,IA-type,IAID标识•relayagent:在Client和server间转发DHCP消息的实体•DUID:DHCP唯一标识,Client和Server各自生成自身的标识•Identityassociation(IA):分配给Client的地址/前缀集合,通过IAID标识•IA_NA:非临时地址IA•IA_TA:临时地址IA,由RFC3041定义,扩展SLAAC的地址生成机制,IA_NA有续租机制(定时器T1/T2),IA_TA没有•IA_PD:前缀委托PD,最初由RFC3633定义•IAID:IA(即IA_NA/IA_TA/IA_PD)的唯一标识,由Client生成•transactionID:匹配client和server间交互的消息术语•All_DHCP_Relay_Agents_and_Servers(FF02::1:2):–所有DHCP中继代理和服务器组播地址,所有DHCP中继代理和服务器都需要加入该组播组•All_DHCP_Servers(FF05::1:3):–所有DHCP服务器组播地址,用于中继代理在不知道DHCP服务器的单播IP或需要向所有服务器发送消息时使用目录•前言•DHCPv6交互过程说明•DHCPv6前缀委托•Message/Option说明•附录概述•DHCPv6协议交互过程分为两大类两步走消息交换Solicit/Reply:带RapidCommit快速配置Information-request/Reply:其他配置Renew/Reply:向租约归属服务器延长租约Rebind/Repy:向所有服务器尝试延长租约Confirm/Reply:核查租约(只有地址不含PD)Release/Reply:释放租约Decline/Reply:拒绝租约(地址冲突)Reconfiugre/Reply:Server向Client发起重配置请求四步走消息交换Solicit/Advertise:发现&定位服务器Request/Reply:申请租约2步消息交换场景之一ClientServerInformationRequestReply•InformationRequest/Reply消息对用于配合RFC2462SLAAC使用,通过此对消息交换,client从服务器获取除IP地址外的配置信息:–Client向服务器和中继代理组播地址FF02::1:2发送InformationRequest,携带ClientIdOption和requestOption–ServerReply中包括Client请求的option(Server也可包括Client未请求的Opition),同时携带ServerIDOption,ClientIDOption(如果Requst中存在该Option)–Client解析Reply,生效配置信息2步消息交换场景之二ClientServerSolicitwithRapidcommitindReplywithRapidcommitind•此消息对快速分配地址/PD/EPD和配置信息给client,前提当前link内只有一个Server–Client向服务器和中继代理组播地址FF02::1:2发送Solicit,携带ClientIDoption,RapidcommitOption和RequestOption,以及IAOption–Server响应ClientReply,携带配置信息和地址信息,以及RapidcommitOption–Client解析Reply,生效地址和配置信息2步消息交换场景之三ClientServerRenewReply•此消息对用于IP地址租用时间T1到期前续租IP地址(IA-NA)–Client向服务器发送Renew,携带RequestOption,以及IAOption–Server响应ClientReply,携带配置信息和地址信息–Client解析Reply,生效地址和配置信息–IA-NA中有两个定时器,T1和T2,T1到期client发起Renew/Reply续租地址;T1过期,T2到期后,client发起Rebind/Reply续租地址•Renew消息中将携带分配租约的Server的DUID2步消息交换场景之四ClientServerRebindReply•此消息对用于Client在Renew/Reply消息对交互失败,且当T2超时后,确认地址是否仍然可用–Client向服务器发送Rebind,携带ClientID,IAs,Optionrequest;–Server检查Confrim中的IAs是否仍然适用,如果都可用,Reply中携带一个成功的Statusoption,如果任何一个不在适用,返回一个NotonLink的Statusoption;–Client解析Reply,生效地址和配置信息;–如果未收到响应,Clien将一直重试,直到所有地址的validlifetime超时,重新发起solict去发现服务器•注意:Client决定是否放弃使用某个IP地址,由IA中的preferredlifetime和validlifetime决定•Rebind消息中将不携带分配租约的Server的DUID,使得所有DHCP服务器都可以处理该Rebind消息,这是与Renew的区别。2步消息交换场景之五ClientServerConfirmReply•此消息对用于Client切换到一个新的link时,之前分配的地址是否仍然可用–Client向服务器发送Confrim,携带ClientID,IAs,Optionrequest;–Server检查Confrim中的IAs是否仍然适用,如果都可用,Reply中携带一个成功的Statusoption,如果任何一个不在适用,返回一个NotonLink的Statusoption;–Client解析Reply,生效地址和配置信息;如果未收到响应,Client可以按照原来的Lifetime继续使用之前的地址;•协议对于该消息对应用场景的定义–Clientreboot(并且具有持久化的存储和DHCP状态)–Client重新连接到其获取到租约的链路–lient从sleep模式返回–Client使用Wireless接入时更换AP–这不适用于PD的场景,如果有PD,则使用Rebind/Reply2步消息交换场景之六ClientServerReleaseReply•此消息对用于Client发起地址释放•Client向服务器发送Release,携带ClientID,ServerID,IAs,Optionrequest;•Server检查Release中的IA中地址的有效性,回收地址,Reply中指示该地址释放成功;对于检查不通过的地址,Reply指示nobinding•Client解析Reply,完成地址释放;实际Client发起Release过程开始,被释放地址就不能再使用2步消息交换场景之七ClientServerDeclineReply•此消息对用于Client通知Server发现地址冲突•Client向服务器发送Release,携带ClientID,ServerID,IAs,其中IAs中只包含冲突的地址•Server检查Decline中的IA中地址的有效性,回收地址,响应中指示成功;对于检查不通过的地址,Reply中IA指示nobinding•Client解析Reply2步消息交换场景之八ClientServerReneworInfoRequst/ReplyReconfigure•此消息对用于Server通知Client发起地址和配置信息获取流程,随后Client可以发起Renew/Reply或者InformationRequst/Reply消息交换过程•Server设置Reconfigure消息中的TransId为0,携带ServerID,ClientID,可选的Optionrequestoption(涉及变化的option),特别的,当server要求Client重新获取IP时,Optionrequestoption需要包括IAoption,同时携带具体的IAoption,表明哪个IA需要重新配置。消息中需包括Rreconfigureoption指示Client发起Renew/Reply还是InfoRequest/Reply交换过程•Client按照Server要求发起相应的Renew或者InfoRequst流程四步消息交换场景ClientServerSolicitRequestAdvertise•Client获取配置和IP地址的标准流程•发现server,client向组播地址ff02::1:2发送Solicit,携带IA和clientID,以及RequestOption等信息•Server响应ClientAdvertise消息,携带配置信息和地址信息,超过多个server响应时,Client根据一定算法选择一个server•Client选定一个Server,发送Request消息•Server端通过Reply确认Request,Client收到Reply后生效ip和配置信息RequestReply目录•前言•DHCPv6交互过程说明•DHCPv6前缀委托•Message/Option说明•附录前缀委托•前缀委托网络拓扑•前缀委托选项最初由RFC3633定义,后被RFC8415合并•CPE设备作为DHCPClient(也称为请求路由器)像处理IA_NA/IA_TA选项一样,从ISP汇聚设备(充当DHCPServer,也称为委托路由器)获取并管理委托前缀•CPE设备将委托前缀进行子网划分(比如委托前缀为48bit,子网划分可以扩展为64bit,从而得到2^16个子网),给LAN侧每个链路分配一个前缀•RFC3633限制委托前缀不得用于上行WAN接口所在的链路,导致ISP汇聚设备无法配置到CPE的汇聚路由(至少要2条才行)子网前缀3FFE:FFFF:0:1::/64委托前缀(PD):3FFE:FFFF:0::/48子网前缀3FFE:FFFF:0:2::/64前缀排除•前缀委托网络拓扑•RFC6603解决了RFC3633委托前缀不得应用于上行接口的问题•RFC6603在RFC3633基础上引入了排除前缀选项,可以从委托前缀中划分出一个更长的前缀,用于配置给上行接口•由于新增的排除前缀选项直接嵌套在IA_PD选项中,其生命周期管理与委托前缀保持一致•如图所示,这样的话,ISP网络内的汇聚设备只需为CPE设备添加一条针对委托前缀的路由即可子网前缀3FFE:FFFF:0:1::/64委托前缀(PD):3FFE:FFFF:0::/48子网前缀3FFE:FFFF:0:2::/64排除前缀(EPD):3FFE:FFFF:0::3::/64目录•前言•DHCPv6交互过程说明•DHCPv6前缀委托•Message/Option定义•附录Client和Server间消息格式•Transaction-id标识一次Client和Server间的交互过程,特例是Server发起Reconfigure流程时,Transaction-id设置为0,其他由Clinet发起的流程中
本文标题:RFC8415-DHCPv6&PD协议介绍
链接地址:https://www.777doc.com/doc-7367314 .html