DHCP协议

DHCP

  DHCP(Dynamic Host Configuration Protocol),动态主机配置协议,是一个应用层协议。将主机的IP地址设置为动态分配时,DHCP服务器就会根据DHCP将IP地址分配给客户端,使客户端可以通过这个IP地址进行上网的操作。

背景

  DHCP协议的前身是BOOTP协议,BOOTP被创建出来的目的也是为了分配IP地址但是只能实现有限的主机配置,后来被DHCP所取代。因为DHCP的功能更加的强大,也更加的复杂。

工作流程

  
在这里插入图片描述

  1. 客户端的操作系统生成一个DHCP discover报文,被放置在一个具有广播IP的目的地址和源IP为0.0.0.0的IP数据报中,发送到以太网,试图找到可以分配IP地址的DHCP服务器端。
  2. 运行在路由器上的DHCP服务器端接收到了此次请求,回复给客户端一个DHCP OFFER报文,其中包括了配置信息,要求客户端进行配置。
  3. 客户端接收到DHCPOFFER后,需要接收配置信息。表示接受的话,发送给服务器端一个DHCP request请求报文。
  4. DHCP服务器接收到request报文后,将IP地址分配给客户端。

DHCP的地址问题

  DHCP服务器可配置为提供三种地址分配:自动分配、动态分配和手动分配。三者之间的差异是地址分配是否基于客户机的身份,以及该地址是否可撤销或者变更。最常用的方法是动态分配。

  在动态分配时,DHCP客户机请求分配一个IP地址,服务器从可用的地址池中选择一个作为响应。分配给客户机的地址只在一段特定时间内有效,这段时间被称为租用期。客户机可以使用这个地址知道租用期到期,通常情况下,在租用期过半的时候会尝试续订租约。

设置租用期的原因

  租用期是DHCP服务器一个重要的配置参数。租用期的范围下从几分钟上可达永久。但需要对地址池的大小和地址稳定性等因素加以权衡。较长的租用期通常会很快的耗尽可用的地址池,但可以提供稳定的地址和减小网络开销。较短的租用期可以给客户提供可用性更高的地址池,但是随之而来的是稳定性的降低。

报文格式

在这里插入图片描述

  • OP:报文的操作类型,分为请求(1)和应答(2)两种
  • Htype:客户端的MAC地址类型,其实就是指明网络类型。
  • Hlen:MAC地址长度,以太网的MAC地址长度通常为6个字节,值为6
  • Hops:报文经过DHCP中继的数目,默认为0,每经过一个中继,增加1。
  • Xid:事务ID,是由客户机选择的一个随机数,服务器需要将它复制到响应中。用于将应答和请求匹配,在一次请求中所有的Xid都是同一个值。
  • Secs:秒数,以秒为单位。从客户端获取IP地址或者续约过程到现在所使用的时间。
  • Flags:标志位,用来标志服务器的应答报文是采用单播还是广播的形式,0:单播、1:广播;
  • Ciaddr:客户端的IP地址,由于这个协议就是用来申请IP地址的,所以只有服务器的ACK报文中显示,在其他的报文中均为0;
  • Yiaddr:服务器分配给客户端的IP地址,仅在服务器发送的OFFER和ACK报文中显示,其他报文中均为0
  • Siaddr:下一个为客户端进行操作的服务器的地址
  • Giaddr:客户端发起请求后经过的第一个中继的IP地址,如果没有中继则显示为0
  • Chaddr:客户端的MAC地址。
  • Sname:为客户端分配IP地址的服务器名称;
  • File:服务器为客户端指定的配置文件以及路径,只在OFFER中显示,其他报文显示为0;
  • Options:可选项字段,长度可变。格式为 代码+长度+数据
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值