DHCP原理与配置

目录

一 DHCP工作原理

1 了解DHCP服务

2 使用DHCP的好处

3 DHCP的分配方式

4 DHCP的租约过程

(1)客户端请求IP地址

(2)服务器响应

(3)客户机选择IP地址

(4)服务器确定租约

(5)重新登录

(6)更新租约

二 使用DHCP动态配置主机地址

1 配置DHCP服务器

(1)安装DHCP服务器软件

(2)建立主配置文件dhcpd.conf

(3)启动dhcpd服务

2 使用DHCP客户端

三 管理软件包租

1 DHCP中继原理

2 DHCP中继配置


一 DHCP工作原理

1 了解DHCP服务

动态主机配置协议,自动为客户端分配IP地址、子网掩码、网关等网络参数,避免手动配置的麻烦。

2 使用DHCP的好处

  • 减少管理员的工作量
  • 避免输入错误的可能
  • 避免IP地址冲突 当更改IP地址段时,不需要重新配置每个用户的IP地址
  • 提高了IP地址的利用率
  • 方便客户端的配置

3 DHCP的分配方式

  • 自动分配:客户端永久获得固定IP(租期无限)。

  • 动态分配:临时分配IP(有租期),到期可回收或续约。

  • 手动分配:管理员手动绑定特定MAC地址与IP(保留地址)。

4 DHCP的租约过程

  • 客户机从DHCP服务器获得IP地址的过程称为DHCP的租约过程
  • 分为四个步骤:

(1)客户端请求IP地址
  • 当一个DHCP客户机启动时,客户机还没有IP地址,所以客户机要通过DHCP获取一个合法的地址
  • 客户端广播 DHCP Discover 报文,寻找可用的DHCP服务器。

(2)服务器响应
  • DHCP服务器接收到来自客户机请求IP地址的信息时,在自己的IP地址池中查找是否有合法的IP地址提供给客户机
  • DHCP服务器回应 DHCP Offer,提供可分配的IP、子网掩码、租期等信息。

(3)客户机选择IP地址
  • 客户端选择第一个收到的Offer,广播 DHCP Request 确认申请该IP。

(4)服务器确定租约
  • 服务器发送 DHCP ACK 确认分配,客户端正式获得IP并配置网络。

(5)重新登录
  • 租期过半(T1=50%)时,客户端尝试续约(单播 Request);若失败,则在租期87.5%(T2)时广播请求其他服务器续约。

(6)更新租约
  1. 成功续约:服务器回应 ACK,延长租期。
  2. 失败释放:租期到期未续约,IP被回收,客户端重新发起 Discover

核心流程Discover → Offer → Request → ACK(DORA),后续通过 Request + ACK 续约。

二 使用DHCP动态配置主机地址

1. DHCP服务 :为大量客户机自动分配地址,提供集中管理 减轻管理和维护成本、提高网络配置效率

2. 可分配的地址信息主要包括 :网卡的IP地址、子网掩码

                                                    对应的网络地址、广播地址

                                                    默认网关地址

                                                    DNS服务器地址

1 配置DHCP服务器

(1)安装DHCP服务器软件
  • CentOS光盘中的 dhcp-4.2.5-47.el7.centos.x86_64.rpm
  • DHCP软件包的主要文件
  • 主配置文件:/etc/dhcpd.conf
  • 执行程序:/usr/sbin/dhcpd、/usr/sbin/dhcrelay
先执行“ rpm -q dhcp ”命令查看系统中是否已经安装dhcp软件包,openEuler系统中已经默认安装dhcp,具体操作如下。

(2)建立主配置文件dhcpd.conf

1.配置文件基本命令

[root@localhost ~]# vi /etc/dhcp/dhcpd.conf

#调整全局配置

ddns-update-style none; //禁用 DNS 动态更新

default-lease-time 21600; //默认租约为 6 小时

max-lease-time 43200; //最大租约为 12 小时

option domain-name "kgc.com";      //指定默认搜索域

option domain-name-servers 114.114.114.114,8.8.8.8;      //指定 DNS 服务器地址

#subnet 网段声明

subnet 192.168.10.0 netmask 255.255.255.0 {

  range 192.168.10.200 192.168.10.250;

  option routers 192.168.10.254;

}

2. /etc/dhcp/dhcpd.conf 文件的配置构成 

配置构成 说明

声明

用来描述 dhcpd 服务器中对网络布局的划分,是网络设置的逻辑范围。较常见的声明是 subnethost,其中 subnet 声明用来约束一个网段,host 声明用来约束一台特定的主机。

参数

由配置关键字和对应的值组成,总是以”(分号)结束,一般位于指定的声明范围之内,用来设置所在范围的运行特性(如默认租约时间、最大租约时间等)。

选项

“option”引导,后面跟具体的配置关键字和对应的值,也是以结束,用于指定分配给客户机的各种地址参数(如默认网关地址、子网掩码、DNS 服务器地址等)。

3. dhcpd 服务的全局配置

为了使配置文件的结构更加清晰,全局配置通常会放在配置文件 dhcpd.conf 的开头部分,可以是配置参数,也可以是配置选项。常用的全局配置参数和选项如下所述。

参数和选项说明

ddns-update-style

动态 DNS 更新模式。用来设置与 DHCP 服务相关联的 DNS数据动态更新模式。在实际的 DHCP 应用中很少用到该参数,将值设为none即可。

default-lease-time

默认租约时间。单位为秒,表示客户端可以从 DHCP 服务器租用某个 IP 地址的默认时间。

max-lease-time

最大租约时间。单位为秒,表示允许 DHCP 客户端请求的最大租约时间,当客户端未请求明确的租约时间时,服务器将采用默认租约时间。

option domain-name

默认搜索区域。为客户机指定解析主机名时的默认搜索域,该配置选项将体现在客户机的/etc/resolv.conf 配置文件中。

option domain-name-servers

DNS 服务器地址。为客户机指定解析域名时使用的 DNS 服务器地址,该配置选项同样将体现在客户机的/etc/resolv.conf 配置文件中。需设置多个 DNS 服务器地址时,以逗号进行分隔。

(3)启动dhcpd服务

启动dhcpd服务的基本配置命令如下。

systemctl start dhcpd       # 启动服务
systemctl enable dhcpd      # 开机自启
systemctl status dhcpd      # 检查状态

netstat -anpt | grep dhcpd      #检查dhcpd是否开启

2 使用DHCP客户端

(1)windows客户端

获取/释放IP

ipconfig /release   # 释放当前IP  
ipconfig /renew     # 重新获取IP  

查看DHCP信息

ipconfig /all       # 查看IP、DHCP服务器、租期等  

手动指定DHCP服务器(特殊场景)

netsh interface ip set dhcp "以太网" server=192.168.1.1  

(2)Linux客户端

使用 dhclient 管理IP

dhclient -r eth0        # 释放IP(-r 表示 release)  
dhclient -v eth0        # 重新获取IP(-v 显示详细过程)  

使用 nmcli(NetworkManager)

nmcli con up eth0       # 重新申请IP(适用于动态分配)  
nmcli dev show eth0     # 查看DHCP分配的详细信息  

查看租约信息(客户端侧)

cat /var/lib/dhclient/dhclient.leases  # 客户端租约记录(部分系统路径可能不同)  

(3)查看租约文件/var/lib/dhcpd/dhcpd.leases

服务器租约数据库路径

cat /var/lib/dhcpd/dhcpd.leases  # 服务器已分配的租约记录(ISC DHCP)  

  • 关键字段

    • lease [IP] { ... }:分配的IP及租期信息。

    • starts/ends:租约起止时间。

    • hardware ethernet:客户端的MAC地址。

1 DHCP中继原理

(1)作用

  • 解决 跨网段IP分配 问题,使客户端能通过中继代理从不同子网的DHCP服务器获取IP。

  • 中继代理(如路由器)负责转发DHCP请求/响应报文。

(2)工作原理

  1. 客户端广播DHCP Discover(目标IP: 255.255.255.255)。

  2. 中继代理(如路由器)接收广播,将其改为 单播 并转发给指定DHCP服务器(目标IP: DHCP服务器地址)。

  3. DHCP服务器响应Offer,中继代理再转发回客户端所在的子网。

  4. 后续 Request/ACK 流程同样由中继代理转发。

(3)关键点

  • 中继代理需配置 DHCP服务器IP

  • 依赖 UDP 67(服务器)和 68(客户端) 端口。

2 DHCP中继配置

(1)Linux系统(isc-dhcp-relay)

安装中继软件

apt install isc-dhcp-relay -y   # Ubuntu/Debian  
yum install dhcp-relay -y       # CentOS/RHEL  

配置中继代理

编辑配置文件 /etc/default/isc-dhcp-relay

SERVERS="192.168.1.100"   # DHCP服务器IP  
INTERFACES="eth0 eth1"    # 监听客户端请求的接口  
OPTIONS="-d"              # 调试模式(可选)  

启动服务

systemctl start isc-dhcp-relay  
systemctl enable isc-dhcp-relay  


(2)华为交换机(VRP系统)

启用DHCP中继

sys  
dhcp enable  
interface vlanif 10       # 进入客户端所在VLAN  
 dhcp select relay        # 启用中继模式  
 dhcp relay server-ip 192.168.1.100  # 指定DHCP服务器  

验证配置

display dhcp relay statistics  # 查看中继统计信息  


(3)Cisco路由器(IOS系统)

配置中继

interface GigabitEthernet0/0  
 ip helper-address 192.168.1.100  # 指定DHCP服务器  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值