#理论
DHCP
1. DHCP 概述
- DHCP 全称动态主机配置协议,是四个单词的缩写:dynamic host configuration protocol。
- DHCP 协议用于自动分配 IP 地址、子网掩码和网关等网络参数。
- DHCP 协议的出现背景是手动配置 IP 地址的局限性,包括参数多、小白不会配、利用率低和灵活性差。
2.DHCP 的工作原理
2.1 DHCP 连接

Discover:广播发现当前网络中的 DHCP 服务器端offer:携带分配给客户端的 IP 地址Request:告知服务端自己将使用的该 IP 地址ACK:最终确认,告知客户端可以使用该 ip 地址
用户释放 IP 地址
ipconfig /relest # 释放IP
ipconfig /renew
2.2 DHCP 租期更新

-
客户机的租约期到50%,会向 DHCP 服务器发送 DHCP Request 消息包。
-
如果客户机接收到该服务器回应的 DHCP Ack 消息包,客户机就根据包中所提供的新的租期以及其它已经更新的 TCP/IP 参数,更新自已的配置,IP 租用更新完成。
-
如果没有收到该服务器的回复,则客户机继续使用现有的 IP 地址,因为租期还剩50%。
-
随后客户机将在租期过去87.5%的时候再次向为其提供 IP 的 DHCP 服务器联系。
-
如果还不成功,到租约的100%时候,客户机必须放弃这个 IP 地址,发送 DHCP DISCOVER 重新申请地址。
-
如果此时无 DHCP 可用,客户机会使用169.254.0.0/16中随机的一个地址,并且每隔5分钟再进行尝试。
DHCP 报文格式

Options:用户自定义可拓展功能主要有 Option 82 和 OPtion 42 两种
Option 82:中继代理 DHCP Relay 信息选项
Option 43:为 AP 分配 IP 地址的同时,通报 AC 的地址
option43应用举例
主要为了解决 AP 无法获取 AC 的地址

配置 Option 43,使 AP 能够获得 AC 的 IP 地址,假设 AC 的 IP 地址是10.10.10.1
DHCP 基本配置已完成
[****] option 43 sub-option 3 ascii 10.10.10.1
Option 82应用举例
主要解决 DHCP 服务端和客户端不在同一网段的问题

配置 Option 82及 Option Reley 功能,需要在中继设备接口配置 DHCP Relay 功能,并指定 DHCP Server 的 IP 地址为10.1.1.2
[***]DHCP select relay
[***]DHCP relay server-select HW
DHCP Snooping 应用举例
防止私接 DHCP 服务器

主要是在交换机接口配置 Trusted和 Untrusted
# 进入接口配置模式并已开启dhcp功能
[****]dhcp snooping trusted # 允许 -> DHCP server
[****]dhcp snooping untrusted 不允许 -> DHCP server
实验 1:基于接口地址池的DHCP配置
#实操
实验目的
- 实现 #DHCP 动态获取 IP 地址
配置查看命令
display current-configuration
实验拓扑
采用 S5700交换机作为 DHCP Server,PC 作为验证工具

实验配置
Step1:配置 vlan 10并设置 IP 地址192.168.10.254 子网掩码 24
<Huawei>system-view
[huawei]sysname HDCP server
[HDCP server]vlan 10
[HDCP server]int vlan 10
[HDCP server-Vlanif10]ip add 192.168.10.254 24
[HDCP server-Vlanif10]interface g 0/0/1
[HDCP server-GigabitEthernet0/0/1]port link-type access
[HDCP server-GigabitEthernet0/0/1]port default vlan 10
Step2:配置 DHCP 服务
[HDCP server]dhcp enable
[HDCP server]int vlan 10
[HDCP server-Vlanif10]dhcp se
[HDCP server-Vlanif10]dhcp select interface # 设置dhcp为接口配置
[HDCP server-Vlanif10]dhcp server dns-list 10.10.10.10 # 设置DNS
[HDCP server-Vlanif10]dhcp server excluded-ip-address 192.168.10.11 192.168.10.2
53 # 用来排除ip地址的,在这里只保留192.168.10.1-192.168.10.10的IP地址
[HDCP server-Vlanif10]dhcp server lease day 8 # 设置租用时间为8天
Step3:PC 机设置成 DHCP,命令行
ipconfig
实验 2:基于全局地址池的DHCP配置
#实操
实验目的
- 实现 #DHCP 动态获取 IP 地址
配置查看命令
display current-configuration
实验拓扑
采用 S5700交换机作为 DHCP Server,PC 作为验证工具

实验配置
Step1:配置 vlan 20并设置 IP 地址192.168.20.254 子网掩码 24
<Huawei>system-view # 用户模式进入系统模式
[huawei]sysname HDCP server # 设备重命名
[HDCP server]vlan 20 # 创建 vlan
[HDCP server]int vlan 20 # 进入vlan配置界面
[HDCP server-Vlanif10]ip add 192.168.20.254 24 # 配置 IP 地址
[HDCP server-Vlanif10]interface g 0/0/1 # 进入端口配置模式
[HDCP server-GigabitEthernet0/0/2]port link-type access # 设置端口协议为 access
[HDCP server-GigabitEthernet0/0/2]port default vlan 20 # 把端口划分到vlan20 下
Step2:配置全局 DHCP 服务
# 启动dhcp服务
[HDCP server]dhcp enable
[HDCP server]int vlan 20
[HDCP server-Vlanif20]dhcp select global
[HDCP server-Vlanif20]quit
# 配置地址池
[HDCP server]ip pool 20 # 创建一个名为20的地址池
Info:It's successful to create an IP address pool.
[HDCP server-ip-pool-20]network 192.168.20.0 mask 24 # 配置ip段
[HDCP server-ip-pool-20]gateway-list 192.168.20.254 # 网关地址
[HDCP server-ip-pool-20]dns-list 8.8.8.8 # DNS地址
[HDCP server-ip-pool-20]lease 10 # 租期 10天
[HDCP server-ip-pool-20]excluded-ip-address 192.168.20.11 192.168.20.253 #排除网段范围
[HDCP server-ip-pool-20]quit
Step3:PC 机设置成 DHCP,命令行
ipconfig