当前位置:首页>Linux>Linux 运维必备:DHCP 服务部署与原理精讲

Linux 运维必备:DHCP 服务部署与原理精讲

  • 2026-10-11 03:35:13
Linux 运维必备:DHCP 服务部署与原理精讲

技术弄巷

读完仅需

5
分钟

记得星标公众号

前言

在企业局域网、机房内网、虚拟化环境中,自动分配 IP 地址是基础网络需求。DHCP 作为标准的动态主机配置协议,可以批量、自动、统一为客户端分配 IP、子网掩码、网关、DNS 等信息,大幅减少手动配置工作量,避免 IP 冲突。

本文从 DHCP 概念、服务部署、配置详解、工作原理到验证方式,一站式讲解 Linux 下 DHCP 服务搭建全流程,适合运维快速落地使用。

一、DHCP 服务介绍

1. 什么是 DHCP

  • DHCP:Dynamic Host Configuration Protocol,动态主机配置协议
  • 属于应用层协议
  • 核心作用:自动为网络主机分配 IP 地址及相关网络参数

2. 服务端信息

  • 软件包:dhcp
  • 主配置文件:/etc/dhcp/dhcpd.conf
  • 默认端口:UDP 67(服务端)

二、DHCP 服务完整配置步骤

1. 环境准备

关闭影响服务的安全机制:

# 临时关闭 SELinux
setenforce 0

# 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld

2. 安装 DHCP 软件

yum install -y dhcp

3. 覆盖模板配置文件

cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf

4. 编辑 dhcpd.conf 配置文件

vim /etc/dhcp/dhcpd.conf

最简可用配置:

subnet 192.168.140.0 netmask 255.255.255.0 {
  range 192.168.140.100 192.168.140.188;
  option routers 192.168.140.2;
  option domain-name-servers 114.114.114.114, 223.5.5.5;
}

配置说明:

  • subnet
    :定义分配的网段与子网掩码
  • range
    :可分配的 IP 地址池范围
  • option routers
    :网关地址
  • option domain-name-servers
    :DNS 地址

5. 启动并设置开机自启

systemctl start dhcpd
systemctl enable dhcpd

6. 检查服务状态

# 查看进程
ps -elf | grep dhcpd

# 查看端口(UDP 67)
netstat -tunlp | grep 67

三、DHCP 客户端验证

  1. 关闭 VMnet 虚拟网卡自带的 DHCP 功能
  2. 将客户端设置为自动获取 IP
  3. 重新获取网络验证:
# 重新获取IP
dhclient -r
dhclient

四、DHCP 工作原理(四步交互)

DHCP 采用 C/S 模式,全程靠广播完成交互:

  1. DHCP Discovery(发现阶段)客户端发送广播,寻找网络中的 DHCP 服务器

  2. DHCP Offer(提供阶段)服务器响应,广播提供可分配的 IP 信息

  3. DHCP Request(请求阶段)客户端正式请求使用该 IP

  4. DHCP ACK(确认阶段)服务器确认,正式分配 IP 及相关参数


核心要点总结

  1. DHCP 用于自动分配 IP、网关、DNS,避免冲突、提升效率。
  2. 服务端软件为 dhcp,配置文件在 /etc/dhcp/dhcpd.conf。
  3. 配置必须定义 subnet、range、routers、dns。
  4. 服务端口为 UDP 67,依赖广播工作。
  5. 完整流程:Discovery → Offer → Request → ACK。
  6. 虚拟化环境必须关闭虚拟网卡自带 DHCP,否则冲突。

结尾互动

DHCP 是企业内网、虚拟化、云环境中最基础的网络服务,搭建简单、实用性极强。

如果这篇部署教程对你有帮助,欢迎点赞、在看、转发,让更多运维朋友快速上手!

关注我,持续更新 Linux 服务部署、网络基础、自动化运维、Shell 脚本等硬核干货,一起做高效运维人!

最新文章

随机文章