DHCP概述
名字解析
DHCP : Dynamic Host Configure Protocol 动态主机配置协议
主要内容
- 从BOOTP(Bootstrap Protocl)协议发展过来
- UDP封装,服务器=67,客户端=68
- 动态分配TCP/IP信息(IP地址、子网掩码、默认网关、DNS服务器等)
- 分配出去的地址都是有租约的(华为默认是1天)
图示
DHCP系统组成
图表
系统组成 | 备注 |
---|---|
DHCP Client(客户端) | 需要动态获取IP地址的主机 |
DHCP Server(服务器) | 能提供DHCP功能的服务器或者网络设备 |
DHCP Relay(中继) | 一般是路由器或者三层交换等网络设备 |
图示
D HCP报文结构
图示
DHCP报文类型
图表
报文类型 | 含义 | 广播形式 |
---|---|---|
DHCP Discover | 客户端用来寻找DHCP服务器 | 广播 |
DHCP Offer | DHCP服务器用来响应DHCP Discover报文 此报文携带各种配置信息(IP地址、子网掩码、默认网关、DNS服务器信息等) |
单播/广播 |
DHCP Request | 客户端请求配置确认,或者续约租期 | 广播 |
DHCP ACK | 服务器对Request报文进行确认响应 | 单播/广播 |
DHCP NAK | 服务器对Request报文进行拒绝响应 | |
DHCP Release | 客户端要释放地址时候,用来通知服务器 | 广播 |
图示
DHCP工作流程
图示
分析
- 主机接入网络没有IP地址,会以广播的形式发送DHCP Discover 报文,并在报文中包含自己需要的配置信息(例如:IP地址、子网掩码、默认网关、DNS服务器等)。
- 第一个收到主机Discover报文的DHCP服务器,回复DHCP Offer报文,报文中包含了DHCP服务器能够提供给主机的配置信息。
- 主机收到DHCP服务器发送的Offer报文,以广播的形式回复DHCP Request报文,确认自己可以使用该DHCP服务提供的配置信息,并告知其他DHCP服务器。
- DHCP服务器收到主机发送的Request报文,回复给主机DHCP ACK报文,告知主机可以使用该IP地址及其它的配置
DHCP租期
DHCP续期
图示
分析
- 主机从DHCP服务器上获取到IP地址等配置信息,等到租期还剩50%时,主机会向DHCP发送单播DHCP Request报文。
- 如果DHCP服务器可以提供主机原IP地址等相关配置信息,会单播发送DHCP ACK报文,续约租期。
- 例如:1.1
1.9 ,8天的租约,等到4天之后1.5,发送DHCP Request报文,请求续约,1.51.13 8天的续约
DHCP重绑定(Rebind)
图示
分析
- 主机的DHCP租期到50%时,会向DHCP发送单播DHCP Request报文,请求续约,当DHCP服务器没有回复DHCP ACK单播报文时,主机会继续使用该DHCP配置信息。
- 当租期还剩12.5%的时,主机会发送广播DHCP Request报文。
- 如果收到DHCP服务器回复的DHCP ACK报文,则继续使用DHCP配置且续约
- 如果没有收到DHCP服务器的响应,则重新绑定DHCP配置信息,
自动保留IP地址
- APIPA Automatic Private IP Addressing
- 如果Windows客户端无法从服务器租用到IP地址
- 自动使用网络号为169.254.0.0.0/16的专用地址
- 仅供与相同处境的PC临时通讯
租期设置原则
- 设置租期较短
- 增加网络负担
- 适合客户端较多
- 适合流动场所(机场、火车站、酒店、购物中心)
- 设置租期较长
- 减轻网络负担
- 等待较长
- 适合固定场所(家庭、企业)
IP地址释放
图示
分析
- 如果IP租约到期前没有收到DHCP服务器的响应,客户端自动停止使用此IP地址
- 如果DHCP客户端不在使用分配的IP地址,可以主动发送DHCP Release 报文给DHCP服务器,释放该IP地址2
DHCP地址池
概述
- DHCP地址池(pool)
- 分类
- 接口地址池,接口地址池与三层接口关联,分配该接口的网段给DHCP主机,DHCP服务器地址就是该接口地址
- 全局地址池,单独的DHCP服务器,需要全局地址
- 接口地址池优先级高于全局地址池