IP方式下DHCPv6地址协议过程
2015-05-29 12:47
225 查看
当配置为IP方式的DHCPv6获取地址时,报文交互如下:
1.
地址冲突检测过程:
客户端发出 Neighber Solicitation报文,将自己的LLA地址作为target。MAC头中Src为自己的mac地址,Dst为广播地址,IPv6头中Src为“::”,IPv6的Dst为“ff02::1:xxx”,其中xxx为自己的mac地址。
2.
地址冲突检测完成后,客户端发起DHCPv6的交互过程:
DHCPv6 Solicit和advertise的xid相同,而request和reply的xid相同,即每次请求和应答的xid一致。在Solicit中携带request
option信息,在Advertise中下发相应信息。之后的request和reply类似。
客户端发出的DHCPv6 Solicit和Request报文中MAC头Src为自己的mac地址,Dst为广播地址,IPv6头中Src为自己的LLA,而Dst为“ff02::1:2”。
路由器发出的Advertise和Reply报文中MAC头Src为自己的mac,Dst为客户端Mac,IPv6头中Src为自己的LLA,Dst为客户端的LLA。
3.客户端主动释放地址:
客户端发出Release报文,路由器应答Reply报文。至此地址释放。
具体交互过程如图所示:
从抓包工具上看协议交互如图所示:
这里说明下,DHCPv6协议在RFC3315中定义,在协议交互过程中客户端使用UDP的546端口,服务器和中继代理使用UDP的547端口。ff0e::1:2
是一个组播地址,指所有DHCP服务器或中继代理的组播地址。
这样一轮交互后,wan连接获取到的GUA为DHCP服务器Advertise报文里的IAA(Identity
Association Address)。
1.
地址冲突检测过程:
客户端发出 Neighber Solicitation报文,将自己的LLA地址作为target。MAC头中Src为自己的mac地址,Dst为广播地址,IPv6头中Src为“::”,IPv6的Dst为“ff02::1:xxx”,其中xxx为自己的mac地址。
2.
地址冲突检测完成后,客户端发起DHCPv6的交互过程:
DHCPv6 Solicit和advertise的xid相同,而request和reply的xid相同,即每次请求和应答的xid一致。在Solicit中携带request
option信息,在Advertise中下发相应信息。之后的request和reply类似。
客户端发出的DHCPv6 Solicit和Request报文中MAC头Src为自己的mac地址,Dst为广播地址,IPv6头中Src为自己的LLA,而Dst为“ff02::1:2”。
路由器发出的Advertise和Reply报文中MAC头Src为自己的mac,Dst为客户端Mac,IPv6头中Src为自己的LLA,Dst为客户端的LLA。
3.客户端主动释放地址:
客户端发出Release报文,路由器应答Reply报文。至此地址释放。
具体交互过程如图所示:
从抓包工具上看协议交互如图所示:
这里说明下,DHCPv6协议在RFC3315中定义,在协议交互过程中客户端使用UDP的546端口,服务器和中继代理使用UDP的547端口。ff0e::1:2
是一个组播地址,指所有DHCP服务器或中继代理的组播地址。
这样一轮交互后,wan连接获取到的GUA为DHCP服务器Advertise报文里的IAA(Identity
Association Address)。
相关文章推荐
- 大端、小端判断
- 第11周项目2-摩托车继承自行车和机动车
- java基础整理——父类引用指向子类对象实体的多态
- Java基于socket实现简易聊天室实例
- 博客园博客撰写工具【开源】(可以直接黏贴图片) (转)
- SharePoint PowerShell创建一个GUID
- mac 安装PS出现下载adobe support advisor检测
- 使用sqlmap中tamper脚本绕过waf
- 数据库范式(1NF 2NF 3NF BCNF)
- 事件驱动开发
- jquery.pagination结合jquery.tmpl封装前台分页--纯js实现与后端语言无关--适合所有前台分页情况
- 微信之门-授权接口
- jstl、EL跟OGNL
- hdu3577 Fast Arrangement
- MyEclipse 2015优化技巧
- Unity3D单例管理类
- POj 2041 Constructing Roads
- chrome开发人员工具中出现绿色的矩形框解决
- 几款开源前端绘图插件推荐
- HDU 2086 A1 = ?