别再死记DHCP!全网最细原理+华为 Linux实战+中继精讲+避坑指南
别再死记DHCP全网最细原理华为/ Linux实战中继精讲避坑指南一、前言做网络运维、云计算、服务器运维的同学DHCP是绕不开的核心基础。但很多人只会敲命令、配地址池根本不懂DHCP为什么要四次握手拿到OFFER为什么不直接用IP租期50%、87.5%续约到底有什么区别多DHCP服务器共存会冲突吗权威/非权威模式差异为什么跨网段必须用DHCP中继生产环境为什么坚决弃用ISC-DHCP本文结合**企业生产实践面试真题从零吃透DHCP全套知识点含原理剖析、场景选型、华为交换机/路由器配置、Linux服务部署、MAC固定IP、DHCP中继、Dnsmasq替代方案、生产避坑**一篇搞定DHCP所有考点与实操。二、为什么需要DHCP手动配IP的致命问题1. 传统手动配置网络参数的弊端效率极低终端数量多的时候人工逐台配置IP、网关、DNS工作量巨大极易出错IP重复、网关写错、DNS配置异常直接导致内网断网、无法上网维护困难设备频繁上下线、人员工位变动手动改配繁琐且难以管控无法统一运维全网参数不统一网络扩容、网段改造成本极高2. DHCP核心优势DHCPDynamic Host Configuration Protocol动态主机配置协议基于UDP协议工作用于自动为局域网终端分配IP地址及全套网络参数。全自动分配即插即用大幅降低运维成本服务器统一管理地址池从根源杜绝IP冲突批量下发网关、DNS、域名后缀全网配置标准化支持动态IP静态MAC绑定适配办公服务器固定IP场景支持DHCP中继单台服务器管控多网段简化大型组网三、DHCPv4 核心工作原理四次握手精讲DHCP 初始化交互全部为广播报文 255.255.255.255路由器默认不转发该广播因此默认只能同网段生效跨网段必须部署中继。1. DHCP DISCOVER 发现阶段客户端→全网广播终端无有效IP时以0.0.0.0为源IP向全网广播DISCOVER报文携带自身MAC地址搜寻局域网内所有DHCP服务器。2. DHCP OFFER 提供阶段服务器→全网广播所有在线DHCP服务器收到请求后从地址池取出空闲IP广播回复OFFER报文携带预分配IP、网关、DNS、租期、服务器IP等参数。注意一个网段可以存在多台DHCP服务器客户端会收到多个OFFER。3. DHCP REQUEST 请求阶段客户端→全网广播客户端筛选所有OFFER只选定一台DHCP服务器广播REQUEST报文正式申请IP。4. DHCP ACK/NAK 确认/拒绝阶段ACKIP合法未占用确认分配终端正式启用IP及所有网络参数NAKIP失效、已占用或非法请求拒绝分配终端重新发起申请四、高频面试题为什么收到OFFER不直接用IP标准答案同一网络可能部署多台DHCP服务器客户端会收到多个OFFER报文。客户端广播REQUEST报文一是正式确认选用某一台服务器的IP二是告知全网其他DHCP服务器释放预留IP避免IP资源浪费和后续IP地址冲突。五、DHCP租期机制与场景选型1. 租期更新规则50%租期单播向原DHCP服务器续约87.5%租期初次续约失败全网广播续约重绑定任意合法DHCP均可响应租期到期IP直接失效重新四次握手获取IP2. 租期长短业务场景短租期10分钟/2小时商场、KTV、展会、公共WiFi设备流动性大快速回收IP防止地址耗尽长租期3天/7天企业办公、家庭网络、内网服务器设备固定减少报文交互、降低网络开销六、多DHCP服务器共存与权威模式详解生产最佳实践同一个物理网段/广播域只部署一台权威DHCP服务器。1. 多服务器共存逻辑客户端收到多个OFFER仅选择一个其余服务器自动释放预留IP不会冲突。2. 权威/非权威模式非权威默认不干预其他服务器分配的IP防止网络混乱权威服务器仅管控自身地址池对非法IP请求直接回复NAK强制客户端重新获取IP七、企业DHCP部署场景选型网络规模部署方案家庭/10人小微公司TP-Link、小米家用路由器自带DHCP100-500人中小企业企业路由器、三层交换机内置DHCP1000人以上大型企业/多网段机房Linux部署DHCP/Dnsmasq集中管控八、华为设备DHCP实战两种部署方式方式一接口地址池简单单网段适用于小型局域网接口IP自动作为网关配置极简。网络拓扑图R1配置如下# 进入系统视图修改设备名称关闭消息提醒Huaweisystem-view[Huawei]sysname R1[R1]undo info-centerenable# 配置接口IP[R1]interface GigabitEthernet0/0/0[R1-GigabitEthernet0/0/0]ip address192.168.1.124[R1-GigabitEthernet0/0/0]quit# 全局开启DHCP[R1]dhcpenable# 接口DHCP配置[R1]interface GigabitEthernet0/0/0[R1-GigabitEthernet0/0/0]dhcpselectinterface[R1-GigabitEthernet0/0/0]dhcp server lease day3[R1-GigabitEthernet0/0/0]dhcp server dns-list223.5.5.5[R1-GigabitEthernet0/0/0]dhcp server excluded-ip-address192.168.1.4[R1-GigabitEthernet0/0/0]quitpc验证方式二全局地址池企业推荐、支持MAC绑定功能更强支持自定义地址池、排除IP、固定IP绑定适配企业多终端场景。网络拓扑图R1配置如下# 进入系统视图修改设备名称关闭消息提醒Huaweisystem-view[Huawei]sysname R1[R1]undo info-centerenable# 配置接口IP[R1]interface GigabitEthernet0/0/0[R1-GigabitEthernet0/0/0]ip address192.168.1.124[R1-GigabitEthernet0/0/0]quit# 全局开启DHCP[R1]dhcpenable# 创建全局地址池[R1]ip pool net1[R1-ip-pool-net1]network192.168.1.0 mask24[R1-ip-pool-net1]gateway-list192.168.1.1[R1-ip-pool-net1]dns-list223.5.5.5[R1-ip-pool-net1]lease day3[R1-ip-pool-net1]excluded-ip-address192.168.1.4[R1-ip-pool-net1]static-bind ip-address192.168.1.88 mac-address5489-98f3-5b43[R1-ip-pool-net1]quit# 接口调用全局地址池[R1]interface GigabitEthernet0/0/0[R1-GigabitEthernet0/0/0]dhcpselectglobal[R1-ip-pool-net1]quitpc验证九、Linux ISC-DHCP 完整生产部署CentOS71. 环境规划虚拟机IP地址自动获取关闭节点IP地址角色dhcp-server.fangbing.cloud10.1.8.10/24DHCP服务端静态IPdhcp-client1.fangbing.cloud自动获取普通动态终端dhcp-client2.fangbing.cloud固定10.1.8.88MAC绑定固定终端2. 服务端基础配置# 要配置DHCPv4服务器请首先使用 ip addr 命令确认您的网络接口配置是否指定了BROADCAST地址。[rootserver ~18:48:46]# ip addr |grep ens332: ens33:BROADCAST,MULTICAST,UP,LOWER_UPmtu1500qdisc pfifo_fast state UP group default qlen1000inet10.1.8.10/24 brd10.1.8.255 scope global noprefixroute ens33# 配置静态IP[rootserver ~18:48:52]# nmcli connection modify ens33 ipv4.method manual ipv4.addresses 10.1.8.10/24 ipv4.gateway 10.1.8.2 ipv4.dns 10.1.8.2 autoconnect yes# 激活ens33的IP配置[rootserver ~18:52:31]# nmcli connection up ens33# 修改主机名重新连接主机名称会显示修改后的[rootserver ~18:53:21]# hostnamectl set-hostname dhcp-server.fangbing.cloud# 安装DHCP[rootdhcp-server ~18:54:42]# yum -y install dhcp# 放行防火墙并设置永久放行[rootdhcp-server ~19:10:54]# firewall-cmd --add-servicedhcp[rootdhcp-server ~19:13:43]# firewall-cmd --add-servicedhcp --permanent3. 核心配置文件 /etc/dhcp/dhcpd.confdhcpd服务使用/etc/dhcp/dhcpd.conf配置文件。 dhcp软件包提供/usr/share/doc/dhcp-*/dhcpd.conf.example配置文件示例。首先cat dhcp主配置文件发现提示我们去参考这个/usr/share/doc/dhcp*/dhcpd.conf.example[rootdhcp-server ~]# cat /etc/dhcp/dhcpd.conf## DHCP Server Configuration file.# see /usr/share/doc/dhcp*/dhcpd.conf.example# see dhcpd.conf(5) man page## 新开1个窗口参考/usr/share/doc/dhcp-4.2.5/dhcpd.conf.example修改/etc/dhcp/dhcpd.conf[rootdhcp-server ~19:10:02]# vim /etc/dhcp/dhcpd.conf# 新增配置如下subnet10.1.8.0 netmask255.255.255.0{# 给10.1.8.0/24这个网络段设备分配IPrange10.1.8.1010.1.8.200;# IP分配范围10.1.8.10-10.1.8.200option domain-name-servers223.5.5.5;# 分配给dhcp客户端dns地址为223.5.5.5(阿里云公共DNS)option domain-namefangbing.cloud;# 局域网设备的域名后缀 fangbing.cloudoption routers10.1.8.2;# 分配给客户端的网关地址为10.1.8.2option broadcast-address10.1.8.255;# 局域网广播地址。DHCP、ARP依赖它default-lease-time600;# 默认租期600秒max-lease-time7200;# 最大租期7200秒}# MAC绑定固定IPhostdhcp-client2{hardware ethernet 00:0c:29:5d:dc:0e;# 客户端mac-address在客户端用ip link show ens33查询fixed-address10.1.8.88;}4. 启动服务与校验# 语法校验[rootdhcp-server~19:10:52]# dhcpd -tInternet Systems Consortium DHCP Server4.2.5 Copyright2004-2013 Internet Systems Consortium. All rights reserved. For info, please visit https://www.isc.org/software/dhcp/ Not searching LDAP since ldap-server, ldap-port and ldap-base-dn were not specifiedinthe configfile# 开机自启同时启动服务并查看状态[rootdhcp-server ~19:13:55]# systemctl enable dhcpd.service --now[rootdhcp-server ~19:15:06]# systemctl status dhcpd.service# 实时日志排错[rootserver ~19:15:23]# journalctl --unitdhcpd.service -f5. 客户端配置及测试# 1. dhcp-client1 配置[rootserver ~19:17:36]# hostnamectl set-hostname dhcp-client1.fangbing.cloud[rootdhcp-client1 ~19:19:04]# nmcli connection add type ethernet ifname ens33 con-name dynamic ipv4.method auto autoconnect yes[rootdhcp-client1 ~19:22:30]# nmcli connection up dynamic[rootdhcp-client1 ~19:22:45]# ip -br alo UNKNOWN127.0.0.1/8 ::1/128 ens33 UP10.1.8.11/24 fe80::a96e:fb50:bd29:ecfe/64 virbr0 DOWN192.168.122.1/24 virbr0-nic DOWN[rootdhcp-client1 ~19:22:48]## 查看获取的ip地址[rootdhcp-client1 ~19:22:45]# ip -br alo UNKNOWN127.0.0.1/8 ::1/128 ens33 UP10.1.8.11/24 fe80::a96e:fb50:bd29:ecfe/64 virbr0 DOWN192.168.122.1/24 virbr0-nic DOWN# 查看获取的网关[rootdhcp-client1 ~19:22:48]# route -nKernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface0.0.0.010.1.8.20.0.0.0 UG10000ens3310.1.8.00.0.0.0255.255.255.0 U10000ens33192.168.122.00.0.0.0255.255.255.0 U000virbr0# 查看生成的DNS服务器地址[rootdhcp-client1 ~19:24:30]# cat /etc/resolv.conf# Generated by NetworkManagersearch fangbing.cloud nameserver223.5.5.5# 2. dhcp-client2 配置[rootserver ~19:28:36]# hostnamectl set-hostname chdp-client2.fangbing.cloud[rootdhcp-clien2 ~19:29:20]# nmcli connection add type ethernet ifname ens33 con-name dynamic ipv4.method auto autoconnect yes[rootdhcp-clien2 ~19:30:57]# nmcli connection up dynamic# 查看获取的ip地址是固定的10.1.8.88的ip地址[rootdhcp-clien2 ~19:31:11]# ip -br alo UNKNOWN127.0.0.1/8 ::1/128 ens33 UP10.1.8.88/24 fe80::e884:26f0:6351:d7f5/64 virbr0 DOWN192.168.122.1/24 virbr0-nic DOWN6. 正常日志输出# dhcp服务端可以看到正常的日志输出分配IP地址的情况[rootserver ~19:16:33]# journalctl --unitdhcpd.service -f8月 0419:27:21 dhcp-server dhcpd[4293]: DHCPACK on10.1.8.11 to 00:0c:29:61:17:74(dhcp-client1)via ens338月 0419:31:11 dhcp-server dhcpd[4293]: DHCPDISCOVER from 00:0c:29:5d:dc:0e via ens338月 0419:31:11 dhcp-server dhcpd[4293]: DHCPOFFER on10.1.8.88 to 00:0c:29:5d:dc:0e via ens338月 0419:31:11 dhcp-server dhcpd[4293]: Dynamic and static leases presentfor10.1.8.88.8月 0419:31:11 dhcp-server dhcpd[4293]: Removehostdeclaration dhcp-client2 or remove10.1.8.88十、DHCP中继原理与跨网段实战1. 中继核心作用DHCP 广播报文无法穿越路由器不同网段终端无法获取远端DHCP服务。DHCP中继将客户端广播报文转为单播转发至核心DHCP服务器实现一台服务器管理多个网段。2. 华为路由器中继配置网络拓扑图配置如下基础配置R1Huaweisystem-view[Huawei]undo info en[Huawei]sysname r1[r1]int e0/0/0[r1-Ethernet0/0/0]ipadd192.168.1.124[r1-Ethernet0/0/0]int e0/0/1[r1-Ethernet0/0/1]ipadd12.1.1.124[r1-Ethernet0/0/1]quit[r1]ip route-static192.168.2.02412.1.1.2R2Huaweisystem-view[Huawei]undo info en[Huawei]sys r2[r2]int e0/0/0[r2-Ethernet0/0/0]ipadd192.168.2.124[r2-Ethernet0/0/0]int e0/0/1[r2-Ethernet0/0/1]ipadd12.1.1.224[r2-Ethernet0/0/1]quit[r2]ip route-static192.168.1.02412.1.1.1配置dhcp路由器R1# 创建地址池1[r1]ip pool net1[r1-ip-pool-net1]network192.168.1.0 mask24[r1-ip-pool-net1]gateway-list192.168.1.1[r1-ip-pool-net1]dns-list8.8.8.8[r1-ip-pool-net1]quit# 创建地址池2[r1]ip pool net2[r1-ip-pool-net2]network192.168.2.0 mask24[r1-ip-pool-net2]gateway-list192.168.2.1[r1-ip-pool-net2]dns-list114.114.114.114[r1-ip-pool-net2]quit# 全局使能dhcp功能[r1]dhcpenable# 接口调用全局地址池[r1]int e0/0/0[r1-Ethernet0/0/0]dhcpselectglobal[r1-Ethernet0/0/0]int e0/0/1第三步配置DHCP中继配置dhcp中继路由器R2[r2]dhcpenable[r2]int e0/0/0[r2-Ethernet0/0/0]dhcpselectrelay#开启dhcp中继[r2-Ethernet0/0/0]dhcp relay server-ip12.1.1.1#中继给12.1.1.1r1 dhcp服务器PC端验证抓包R2 E0/0/0 E0/0/1 观察收到广播的dhcp discover通过dhcp中继单播发给 R13. Linux DHCP中继实战实验主机主机名IP 地址虚拟网络dhcp-server.fangbing.cloud10.1.8.10/24vmnet8dhcp-relay.fangbing.cloud10.1.8.20/24vmnet8dhcp-relay.fangbing.cloud10.1.1.20/24vmnet1dhcp-client.fangbing.cloud自动获取vmnet1实验拓扑先将dhcp-client网卡改为vmnet1dhcp-relay机器添加第二块vmnet1的网卡dhcp-serve服务器配置dhcp-server基础配置# 要配置DHCPv4服务器请首先使用 ip addr 命令确认您的网络接口配置是否指定了BROADCAST地址。[rootdhcp-server ~18:48:46]# ip addr |grep ens332: ens33:BROADCAST,MULTICAST,UP,LOWER_UPmtu1500qdisc pfifo_fast state UP group default qlen1000inet10.1.8.10/24 brd10.1.8.255 scope global noprefixroute ens33# 修改主机名重新打开终端可以看到修改后的主机名[rootserver ~18:53:21]# hostnamectl set-hostname dhcp-server.fangbing.cloud# 配置静态IP[rootdhcp-server ~18:48:52]# nmcli connection modify ens33 ipv4.method manual ipv4.addresses 10.1.8.10/24 ipv4.gateway 10.1.8.2 ipv4.dns 10.1.8.2 autoconnect yes# 激活ens33的IP配置[rootdhcp-server ~18:52:31]# nmcli connection up ens33# 安装DHCP[rootdhcp-server ~18:54:42]# yum -y install dhcp# 放行防火墙并设置永久放行[rootdhcp-server ~19:10:54]# firewall-cmd --add-servicedhcp[rootdhcp-server ~19:13:43]# firewall-cmd --add-servicedhcp --permanent配置路由DHCP server必须配置一个到达 DHCP relay 接收 DHCP 广播网卡的路由。如果不配置该路由dhcp server 无法将数据包返回给 10.1.1.20 服务器最终导致无法提供dhcp给dhcp-client。[rootdhcp-server ~22:33:30]# nmcli connection modify ens33 ipv4.routes 10.1.1.20/32 10.1.8.20[rootdhcp-server ~22:33:42]# nmcli connection up ens33dhcp服务[rootdhcp-server ~22:35:02]# vim /etc/dhcp/dhcpd.conf# 配置如下subnet10.1.8.0 netmask255.255.255.0{# 给10.1.8.0/24这个网络段设备分配IPrange10.1.8.1010.1.8.200;# IP分配范围10.1.8.10-10.1.8.200option domain-name-servers223.5.5.5;# 分配给dhcp客户端dns地址为223.5.5.5(阿里云公共DNS)option domain-namefangbing.cloud;# 局域网设备的域名后缀 fangbing.cloudoption routers10.1.8.2;# 分配给客户端的网关地址为10.1.8.2option broadcast-address10.1.8.255;# 局域网广播地址。DHCP、ARP依赖它default-lease-time600;# 默认租期600秒max-lease-time7200;# 最大租期7200秒}# 新增1个地址池subnet10.1.1.0 netmask255.255.255.0{range10.1.1.10010.1.1.200;option domain-name-servers223.5.5.5;option domain-namefangbing.cloud;option routers10.1.1.20;option broadcast-address10.1.1.255;default-lease-time600;max-lease-time7200;}启动dhcp服务[rootdhcp-server ~22:50:38]# systemctl enable dhcpd --now[rootdhcp-server ~22:54:52]# systemctl status dhcpddhcp-relay配置基础配置# 修改主机名重新打开终端可以看到修改后的主机名[rootserver ~23:58:26]# hostnamectl set-hostname dhcp-relay.fangbing.cloud# 配置ip地址[rootdhcp-relay ~22:59:22]# nmcli connection modify ens33 ipv4.method manual ipv4.addresses 10.1.8.20/24 ipv4.gateway 10.1.8.2 ipv4.dns 10.1.8.2 autoconnect yes[rootdhcp-relay ~23:59:52]# nmcli connection up ens33[rootdhcp-relay ~23:02:34]# nmcli connection add type ethernet ifname ens35 con-name ens35 ipv4.method manual ipv4.addresses 10.1.1.20/24 autoconnect yes[rootdhcp-relay ~23:03:11]# nmcli connection up ens35配置 dhcp relay并启动服务# 在线yum安装isc-dhcp整套组件包含dhcpd(服务端)、dhcrelay(中继)工具[rootdhcp-relay ~23:06:23]# yum install -y dhcp# 把系统默认的dhcrelay.service单元文件拷贝到/etc/systemd/system目录自定义systemd配置目录优先级高于系统默认目录# 目的自定义修改中继服务启动参数不改动系统原始文件[rootdhcp-relay ~23:06:58]# cp /usr/lib/systemd/system/dhcrelay.service /etc/systemd/system/dhcrelay.service# 编辑自定义后的中继服务配置文件[rootdhcp-relay ~23:10:43]# vim /etc/systemd/system/dhcrelay.service# 配置如下[Unit]DescriptionDHCP Relay Agent DaemonDocumentationman:dhcrelay(8)Wantsnetwork-online.targetAfternetwork-online.target[Service]Typenotify# 在 ExecStart 参数末尾添加远端 DHCP 服务器 IP 地址ExecStart/usr/sbin/dhcrelay-d--no-pid10.1.8.10StandardErrornull[Install]WantedBymulti-user.target# 配置完成开启服务并查看状态[rootdhcp-relay ~23:14:31]# systemctl enable dhcrelay.service --now[rootdhcp-relay ~23:14:52]# systemctl status dhcrelay.service开启内核路由转发# 追加内核参数开启Linux IPv4数据包转发功能写入系统永久内核配置文件# DHCP中继、路由、NAT跨网段转发必须开启该参数否则无法转发不同网卡之间的广播报文[rootdhcp-relay ~23:15:12]# echo net.ipv4.ip_forward1 /etc/sysctl.conf# 加载/etc/sysctl.conf配置让内核参数立即生效无需重启服务器# 输出 net.ipv4.ip_forward 1 代表转发功能已经成功开启[rootdhcp-relay ~23:16:25]# sysctl -p /etc/sysctl.confnet.ipv4.ip_forward1dhcp-client配置及验证[rootserver ~23:22:05]# hostnamectl set-hostname dhcp-client.fangbing.cloud[rootdhcp-client ~23:22:48]# nmcli connection add type ethernet ifname ens33 con-name dynamic ipv4.method auto[rootdhcp-client ~23:25:17]# ip -br alo UNKNOWN127.0.0.1/8 ::1/128 ens33 UP10.1.1.131/24 fe80::45ba:c7fc:165b:fb/64 virbr0 DOWN192.168.122.1/24 virbr0-nic DOWN# dhcp服务端查看分配的ip地址情况[rootdhcp-server ~23:30:48]# cat /var/lib/dhcpd/dhcpd.leases# The format of this file is documented in the dhcpd.leases(5) manual page.# This lease file was written by isc-dhcp-4.2.5server-duid\000\001\000\0012\004\270\302\000\014)\212\202z;lease10.1.1.131{starts22026/08/0415:25:17;ends22026/08/0415:35:17;cltt22026/08/0415:25:17;binding state active;next binding statefree;rewind binding statefree;hardware ethernet 00:0c:29:61:17:74;client-hostnamedhcp-client;十一、生产替代方案Dnsmasq 轻量DHCP推荐替代老旧ISC-DHCP轻量、零复杂配置、集成DHCPDNS中继中小企业首选。1. 安装与基础配置[rootdhcp-server ~ 09:30:01]# yum -y install dnsmasq[rootdhcp-server ~ 09:31:46]# vim /etc/dnsmasq.conf核心配置# 文件末尾加上[rootdnsmasq ~]# vim /etc/dnsmasq.conf# IP地址范围是10.1.8.50-150掩码24位租约时间是12小时dhcp-range10.1.8.50,10.1.8.101,255.255.255.0,12h# 给Mac地址是00:0c:29:02:49:2a的主机分配IP地址10.1.8.66租约时间45分钟dhcp-host00:0c:29:02:49:2a,10.1.8.66,45m# 设置网关dhcp-optionoption:router,10.1.8.2# 设置DNSdhcp-optionoption:dns-server,8.8.8.8启动服务# 图形化安装会自动开启1个dnsmasq进程导致启动服务失败需先杀死进程后启动服务[rootdhcp-server ~ 09:39:20]# pkill -9 dnsmasq# 启动服务[rootdhcp-server ~ 09:40:16]# systemctl enable dnsmasq --now[rootdhcp-server ~ 09:42:15]# systemctl status dnsmasq# 防火墙放行[rootdhcp-server ~ 09:42:40]# firewall-cmd --add-servicedhcp[rootdhcp-server ~ 09:43:05]# firewall-cmd --add-servicedhcp --permanent客户端dhcp-client2验证[rootdhcp-client2 ~ 09:46:42]# nmcli connection add type ethernet ifname ens33 con-name dynamic ipv4.method auto[rootdhcp-client2 ~ 09:47:27]# nmcli connection up dynamic[rootdhcp-client2 ~ 09:47:37]# ip -br alo UNKNOWN127.0.0.1/8 ::1/128 ens33 UP10.1.8.66/24 fe80::addd:b528:457d:ba5f/64 virbr0 DOWN192.168.122.1/24 virbr0-nic DOWN2. Dnsmasq 中继配置这里采用上文中的环境中继服务通过Dnsmasq实现。# 在末尾增加一条记录# 作用来自于网卡10.1.1.20的dhcp请求转发到10.1.8.10dhcp-relay10.1.1.20,10.1.8.10# dhcp-relay可多次使用为不同网段提供relay功能配置路由转发# 开启路由转发[rootdhcp-relay ~10:15:12]# echo net.ipv4.ip_forward1 /etc/sysctl.conf[rootdhcp-relay ~10:15:35]# sysctl -p /etc/sysctl.confnet.ipv4.ip_forward1启动服务[[rootdhcp-relay ~10:16:12]# systemctl enable dnsmasq --now十二、生产环境高频避坑总结语法坑dhcpd.conf 所有行必须带分号缺分号直接启动失败网段坑广播地址、子网掩码、网关必须与网段严格匹配跨网段坑DHCP服务器必须配置回程路由否则中继无回包、终端拿不到IP防火墙坑Linux必须放行dhcp服务否则报文被拦截租期坑公区短租期、办公长租期避免IP耗尽或网络冗余十三、文末总结1、DHCP 四次握手、租期续约、多服务器冲突原理是网络面试必考核心理解原理远比死敲命令重要。2、生产环境优先使用Dnsmasq小型/ DHCP大型。3、企业多网段组网必须掌握 DHCP 中继实现 IP 统一管控简化运维架构。4、规范配置、合理规划租期、做好路由与防火墙策略可以规避90%以上的DHCP故障。