目录
一、DHCP及DHCP Relay介绍
DHCP(动态主机配置协议)用于自动分配 IP 地址及相关网络参数;
定义:一种网络管理协议,基于 UDP(端口 67/68),由客户端和服务器交互完成自动地址分配。
-
作用:
-
自动分配 IP 地址、子网掩码、默认网关、DNS 等参数。
-
避免手工配置错误,减少 IP 地址冲突。
-
集中化管理,便于网络管理员统一维护。
-
-
工作流程(四步握手):
-
Discover:客户端广播请求,寻找 DHCP 服务器。
-
Offer:服务器提供可用地址和参数。
-
Request:客户端选择并请求某个地址。
-
ACK:服务器确认分配,客户端正式获得地址。
-
DHCP Relay(DHCP 中继)则用于在不同网段之间转发 DHCP 报文,使跨网段的客户端也能从集中式 DHCP 服务器获取地址。
-
定义:当客户端与 DHCP 服务器不在同一网段时,负责转发 DHCP 报文的功能。
-
作用:
-
解决广播报文无法跨三层设备的问题。
-
允许多个网段共享一个集中式 DHCP 服务器。
-
降低成本和管理复杂度,不必在每个网段部署独立 DHCP 服务器。
-
-
工作原理:
-
客户端发送 DHCP Discover 广播。
-
DHCP Relay 捕获报文并转为单播,发送到指定 DHCP 服务器。
-
服务器分配地址并返回响应给 Relay。
-
Relay 再转发给客户端,完成配置。
-
二、实验环境介绍
平台:华为eNSP(Enterprise Network Simulation Platform)
拓扑:

地址规划:
Router:G0/0/0:192.168.1.1/24
Switch:
Vlan1:G0/0/24:192.168.1.2/24
Vlan10:G0/0/1:192.168.10.1/24
Vlan20:G0/0/2:192.168.20.1/24
PC1,PC2开启DHCP
三、配置过程
假设VLAN和IP地址等基础设置均已配置。
第一步:路由器上的DHCP服务器配置
首先在路由器上创建两个IP地址池,分别对应VLAN10和VLAN20的网段。
<Huawei> system-view
[Huawei] sysname Router
[Router] dhcp enable
! 创建为VLAN10服务的IP地址池
[Router] ip pool vlan10
[Router-ip-pool-vlan10] network 192.168.10.0 mask 255.255.255.0
[Router-ip-pool-vlan10] gateway-list 192.168.10.1
[Router-ip-pool-vlan10] dns-list 8.8.8.8 ! 根据实际情况配置DNS
[Router-ip-pool-vlan10] quit
! 创建为VLAN20服务的IP地址池
[Router] ip pool vlan20
[Router-ip-pool-vlan20] network 192.168.20.0 mask 255.255.255.0
[Router-ip-pool-vlan20] gateway-list 192.168.20.1
[Router-ip-pool-vlan20] dns-list 8.8.8.8
[Router-ip-pool-vlan20] quit
!关键步骤:接口下采用全局地址池的 DHCP Server 功能
[Router]interface GigabitEthernet 0/0/0
[Router-GigabitEthernet0/0/0]dhcp select global
通过此命令,设备可以从全局 IP 地址池中为 DHCP 客户端分配合适的 IP 地址。
关键点:地址池的网关必须是对应VLAN接口的IP地址,也就是核心交换机上 Vlanif10 和 Vlanif20 的地址。
第二步:核心交换机上的DHCP中继配置
这是最关键的一步。需要进入每个VLAN接口,启用DHCP中继,并指向路由器(DHCP服务器)的IP地址。
<Huawei> system-view
[Huawei] sysname Core-Switch
[Core-Switch] dhcp enable ! 交换机本身也需要启用DHCP功能
! 配置VLANIF10接口,启用中继
[Core-Switch] interface Vlanif 10
[Core-Switch-Vlanif10] ip address 192.168.10.1 24
[Core-Switch-Vlanif10] dhcp select relay ! 启用DHCP中继模式
[Core-Switch-Vlanif10] dhcp relay server-ip 192.168.1.1 ! 告诉中继,DHCP服务器在哪
[Core-Switch-Vlanif10] quit
! 配置VLANIF20接口,启用中继
[Core-Switch] interface Vlanif 20
[Core-Switch-Vlanif20] ip address 192.168.20.1 24
[Core-Switch-Vlanif20] dhcp select relay
[Core-Switch-Vlanif20] dhcp relay server-ip 192.168.1.1
[Core-Switch-Vlanif20] quit
第三步:配置路由
目前,路由器知道192.168.1.0/24这个直连网络,但它不知道如何到达192.168.10.0/24和192.168.20.0/24网络。
需要在路由器上添加静态路由,告诉它:“要去往192.168.10.0/24和192.168.20.0/24网络,请把数据包发给核心交换机的Vlanif1接口(192.168.1.2)。”
在路由器上配置:
[Router] ip route-static 192.168.10.0 255.255.255.0 192.168.1.2 [Router] ip route-static 192.168.20.0 255.255.255.0 192.168.1.2
第四步:验证测试
-
在PC1和PC2上执行
ipconfig /renew(或在eNSP中右键PC选择“重新获取IP”)。 -
检查PC1是否获取到了
192.168.10.x网段的IP,网关为192.168.10.1。 -
检查PC2是否获取到了
192.168.20.x网段的IP,网关为192.168.20.1。 -
在PC1上
pingPC2的IP地址,测试跨VLAN通信(如果交换机上没做特殊限制,应该是通的)。 -
在路由器上使用
display ip pool [name vlan10] used命令查看地址池的地址分配情况。
排错技巧
-
PC获取不到IP:检查每一步的配置,尤其是
dhcp select relay和dhcp relay server-ip命令是否在正确的VLAN接口下配置。 -
PC能获取IP但无法通信:大概率是路由问题。在路由器上用
display ip routing-table检查是否有到两个VLAN网段的路由。在核心交换机上,也要检查是否有默认路由指向路由器(如果网络更复杂的话)。 -
使用
display dhcp relay:在核心交换机上使用此命令可以查看中继状态和统计信息,帮助诊断。
四、global和interface区别
dhcp select global 和 dhcp select interface 都是让本设备作为DHCP服务器来分配IP地址的命令,但它们的作用机制和适用场景完全不同。
为了更直观地理解,我们可以用一个比喻:
-
dhcp select global:像是一个中央配给仓库。有严格规划,从不同的专用仓库(IP Pool)为不同区域(VLAN)发放物资。 -
dhcp select interface:像是每个区域的便利小店。自动从本区域的资源里分配,简单快捷,但货品单一。
| 特性 | dhcp select global | dhcp select interface |
| 核心概念 | 使用全局IP地址池 | 使用接口的IP地址段 |
| 配置位置 | 预先在系统视图下创建 ip pool | 无需预先创建地址池 |
| 地址分配 | 从指定的、独立的地址池中分配 | 从接口所在网段中自动划分 |
| 灵活性 | 高。可为不同VLAN定制网关、DNS、租期等 | 低。所有参数继承接口配置,DNS等需额外命令 |
| 适用场景 | 中大型网络、多VLAN环境、需要精细化管理 | 小型网络、单一VLAN、快速部署 |
| 配置复杂度 | 较高 | 非常简单 |
如何选择?
-
选择
dhcp select global当:-
网络中有多个VLAN。
-
需要排除一段IP地址(如给服务器静态使用)。
-
需要为不同用户组设置不同的DNS服务器或租期。
-
需要集中化和规范化的管理。
-
-
选择
dhcp select interface当:-
网络非常简单,只有一个或很少的VLAN。
-
只需要快速让客户端获取到IP地址,对细节要求不高。
-
在进行实验或临时测试。
-
2659

被折叠的 条评论
为什么被折叠?



