DHCP 动态主机配置协议(Dynamic Host Configuration Protocol)

一、DHCP 技术背景
在大型企业网络环境中(如企业级网络系统中),通常会有成百上千台主机或设备需要获取A类到F类中的部分IP地址等关键网络参数。如果采用手工配置的方式进行管理,则会耗时费力且难以维护;此外,在用户擅自修改相关网络参数时还可能造成A类到F类之间IP地址冲突等问题。基于该协议的应用程序能够自动分配IP地址及相关网络配置信息,并通过自动化的配置流程减少管理员的工作负担。
二、DHCP 基本原理与配置实现
2.1 如何实现
2.1.1 基于C/S架构
2.1.2 应用层协议 基于UDP
2.1.3 DHCP报文
2.1.4 地址池
- 管理员规定 下发的IP地址的网段
2.1.5 DHCP服务器
在现有网络环境中常见的承载者包括能够实现网络路由转发的设备(如路由器和三层交换机)。其中能够支持提供 DHCP 服务功能的服务器通常运行于 Windows 或 Linux 系统,并且这些系统通常具备开源特性
2.2. 通信过程


- 169.254.x.x
当主机通过 DHCP 功能自动生成 IP 地址时, 如果 DHCP 服务器出现故障 或其响应时间过长超出系统预设阈值, 则 Windows 系统将为该设备分配此 IP 地址
2.2.1 报文说明(1)
-
DHCP DISCOVER(广播)
主机通过广播发送的相关报文, 旨在向网络中查找符合 DHCP 服务需求的服务器响应 -
DHCP REQUEST(单点广播)
此数据包包含了由 DHCP SERVER 释放的一个可用 IP 地址 -
DHCP REQUEST(广播)
针对offer携带的可用IP地址,向server发起请求 -
DHCP ACK(单播/广播)
服务器对REQUEST报文的确认响应 -
DHCP NAK
服务器对REQUEST报文的拒绝响应 -
DHCP RELEASE
客户端要释放地址时用来通知服务器
2.2.1 报文说明(2)
当 DHCP 客户端首次接入网络时, 会生成 DHCP 发现应答 (DHCP Discover), 其功能是用来搜索并定位 DHCP 服务器的。
当 DHCP 服务器接收到 DHCP 发现应答之后, 将响应生成 DHCP 提供应答 (DHCP Offer), 此应答中包含了 IP 地址等配置信息。
在 DHCP 客户端接收到服务器提供的 DHCP 提供应答之后, 将能够生成 DHCP 请求应答 (DHCP Request) 并获取 IP 地址及完成IP地址重启流程; 同时在 IP 地址获取完毕并重启完成后, 也会再次生成 DHCP 请求应答, 其作用是确认分配好的 IP 地址配置信息。此外, 当 DHCP 客户端获取的 IP 地址租期即将临近到期时, 同样会生成 DHCP 请求应答向服务器发起续展请求。
当接收到 DHCP 客户端所发的 DHCP 请求应答后,DHCP 服务器将回复相应地生成 DHCP 确认应答 (DHCP ACK) 。当接收到该确认应答后,DHCP 客户端就能够将获得的 IP 地址等信息进行配置及应用使用。
如果某次接收到了 DHCP-REQUEST 应答却未找到相应的租赁记录,则将会被响应地生成 DHCP-NAK 应答作为反向反馈, 其内容是告知接收方无法分配到合适的 IP 地址。
当某个 DHCP 客户端成功丢弃了当前使用的 IP 地址之后,DHCP 服务器将会将其该可用的 IP 地址重新分配给其他待机中的 DHCP 客户端。
2.2.2 DHCP的租期

- 默认的租期 一天 24小时
2.2.3 DHCP重绑定

2.3 DHCP配置
2.3.1 接口

- 全局启用 DHCP 功能
- 在配置 IP 地址时,在同一网络段内指定 IP 地址为
192.168.1.254/24。 - 在设置中选择「接口模式」下的 DHCP选中接口配置选项卡,在此界面下指定地址池范围为与当前接口同属的一个网络段,并确认该接口即为此网络段的网关节点。
- 指定 DNS服务器配置路径。
- 禁止分配给该 IP 地址。
- 配置 DHCP 租期设置,在此设置下可精确至分钟单位。
接口地址池配置验证

2.3.2 全局

开启全局DHCP功能
创建地址池—给地址池起名字
指定地址池的大小
指定网关
指定DNS服务器的地址
指定租期时间
进入相关的接口 选择DHCP的模式为全局 global
全局地址池配置验证

三、DHCP的优点和缺点
3.1 DHCP的优点
- IT管理员能够核对IP地址及相关配置参数,并无需逐个核对每个主机;
- DHCP避免在同一时间分配同一IP给两台主机;
- DHCP管理者能够指定特定计算机使用特定的IP地址;
- 每个DHCP地址池都可以提供丰富的选项;
- 客户机在不同子网间转移时无需重新配置IP。
3.2 DHCP的缺点
- DHCP无法识别非DHCP设备已占用的IP地址;
- 在多台DHCP服务器共存的情况下,单个 DHCP 服务器无法查询到其他服务器分配的 IP 地址;
- DHCP 服务端无法通过路由器与终端设备通信,在此情况下仅当路由器允许 DHCP 转发时才可实现
DHCP协议主要是一种单向驱动机制;SERVER系统由于其自身的被动特性,在其运行过程中几乎所有的行为都受到CLIENT发起请求的影响。亦即,在SERVER端几乎无法实现主动控制客户端的行为。
四、DHCP Relay 产生背景

五、DHCP Relay基本原理与配置实现
5.1 DHCP Relay基本工作原理

5.2 DHCP Relay配置实现

六、DHCP面临的安全威胁与防护机制
6.1 DHCP饿死攻击/地址耗尽

6.2 仿冒DHCP Server攻击

6.3 DHCP中间人攻击

6.4 DHCP Snooping
6.4.1 DHCP Snooping技术的出现
- 旨在提高网络安全水平,并防止DHCP遭受攻击的一种技术(名称)应运而生。该技术并非标准化技术,并且目前缺乏统一的技术规范。不同厂商在实现细节上存在差异。
- 该技术主要部署于交换机设备中,并模拟客户端与服务器之间的防火墙功能。

6.4.2 DHCP Snooping用于防止DHCP饿死攻击

6.4.3 DHCP Snooping用于防止仿冒DHCP Server攻击

6.4.4 DHCP Snooping用于防止DHCP中间人攻击

6.4.5 DHCP Snooping与IPSG技术的联动

