DHCP若干种request报文

DHCP request报文主要分成两大类型:

类型一、收到offer报文后,发送request广播报文进一步确认,同时通知其他dhcp服务器已经收到租约,如下所示:

类型二、在租约的0.5倍时间上,发送request单播报文续约,如下所示:

如果此报文没有回复,则在0.875倍时间上,发生request广播续约。

类型一、二有啥区别?dhcp server在接收到此两种类型的报文后,处理是否相同呢?

类型一存在option 50、54,而不存在client  ip(bootp flag);

类型二不存在option 50、54,而存在client ip(bootp flag);

原因:在offer的确认,client其实还不能确定该ip能否真正能为自己所用,还需要等待server 回复ack;

           而0.5倍单播request续约时,不需要携带option 50、54,默认该ip已经为自己所用,即在client ip(bootp flag)填写即可

          在0.85倍广播request续约时,不同于0.5倍单播续约,存在client ip(bootp flag)和option 50,而不存在option 54(因为client默认server已经丢失)

dhcp server在收到此类报文时,均对两种情况进行了检查,也即如果

1、option 50、54与server中租约信息相符合,则回复ack报文

2、client ip(bootp flag)与server ip相符合 ,则回复ack报文

3、option 54不存在,option 50与本地租约符合,也可回复ack报文(即有可能单播续约包没有及时收到)

另外在网口down up过程中,dhcp client会进入init-reboot态,发送广播request报文(且源ip也为0),与0.85倍续约发送的广播request报文有不同(此时的源ip为已经分配的ip)

总结:

dhcp client状态机会在四种状态下发送request报文

                                          报类型                      client-ip        option50      option54

1、init-reboot状态:    广播(且源ip为0)           N                   Y                   N

2、selecting态:         广播(且源ip为0)            N                  Y                   Y

3、renewing态:        单播                                   Y                  N                   N

4、rebinging态:        广播(源ip有效)             ?                  ?                   ?

init-reboot态:是指网卡重启后进入的状态,与init态区别在于:init态是完全没有任何租约信息,init-reboot态是存在之前租约信息的

selecting态:offer报文后的确认报

renewing态:0.5倍续约报文

rebinging态:0.85倍续约报文

 

 

 

 

 

  • 2
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值