#理论

DHCP

1. DHCP 概述

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

2.DHCP 的工作原理

2.1 DHCP 连接

An image to describe post

  1. Discover:广播发现当前网络中的 DHCP 服务器端
  2. offer:携带分配给客户端的 IP 地址
  3. Request:告知服务端自己将使用的该 IP 地址
  4. ACK:最终确认,告知客户端可以使用该 ip 地址

用户释放 IP 地址

ipconfig /relest # 释放IP
ipconfig /renew

2.2 DHCP 租期更新

An image to describe post

  • 客户机的租约期到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 报文格式

An image to describe post
Options:用户自定义可拓展功能主要有 Option 82OPtion 42 两种
Option 82:中继代理 DHCP Relay 信息选项
Option 43:为 AP 分配 IP 地址的同时,通报 AC 的地址

option43应用举例

主要为了解决 AP 无法获取 AC 的地址

An image to describe post

配置 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 服务端和客户端不在同一网段的问题

An image to describe post

配置 Option 82及 Option Reley 功能,需要在中继设备接口配置 DHCP Relay 功能,并指定 DHCP Server 的 IP 地址为10.1.1.2

[***]DHCP select relay
[***]DHCP relay server-select HW 

DHCP Snooping 应用举例

防止私接 DHCP 服务器

An image to describe post

主要是在交换机接口配置 TrustedUntrusted

# 进入接口配置模式并已开启dhcp功能
[****]dhcp snooping trusted # 允许 -> DHCP server
 
[****]dhcp snooping untrusted 不允许 -> DHCP server

实验 1:基于接口地址池的DHCP配置

#实操

实验目的

  1. 实现 #DHCP 动态获取 IP 地址

配置查看命令

display current-configuration

实验拓扑

采用 S5700交换机作为 DHCP Server,PC 作为验证工具

An image to describe post

实验配置

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配置

#实操

实验目的

  1. 实现 #DHCP 动态获取 IP 地址

配置查看命令

display current-configuration

实验拓扑

采用 S5700交换机作为 DHCP Server,PC 作为验证工具

An image to describe post

实验配置

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