目录
3:查看租约文件/var/lib/dhcpd/dhcpd.leases
一:配置 DHCP 服务器
1:安装dhcp
[root@localhost ~]# mount /dev/cdrom /media/cdrom
[root@localhost ~]#rpm -ivh /media/cdrom/Packages/dhcp-4.2.5-47.el7.centos.x86_64.rpm
2:建立主配置文件 dhcpd.conf
[root@localhost ~]# cat /etc/dhcp/dhcpd.conf
#
# DHCP Server Configuration file.
#
see /usr/share/doc/dhcp*/dhcpd.conf.example
#
see dhcpd.conf(5) man page
#
备注:
dhcp服务自带的配置文件没有任何参数,可以复制安装包提供的模板,方便配置。
[root@localhost~]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
(1)/etc/dhcp/dhcpd.conf 文件的配置构成
- 声明:用来描述 dhcpd 服务器中对网络布局的划分,是网络设置的逻辑范围。较常见的声明是 subnet、host,其中 subnet 声明用来约束一个网段,host 声明用来约束一台特定的主机。
- 参数:由配置关键字和对应的值组成,总是以“;”(分号)结束,一般位于指定的声明范围之内,用来设置所在范围的运行特性(如默认租约时间、最大租约时间等)。
- 选项:由“option”引导,后面跟具体的配置关键字和对应的值,也是以“;”结束,用于指定分配给客户机的各种地址参数(如默认网关地址、子网掩码、DNS 服务器地址等)。
(2)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 配置文件中,如“search benet.com”。
Ø option domain-name-servers,DNS 服务器地址。为客户机指定解析域名时使用的 DNS 服务器地址,该配置选项同样将体现在客户机的/etc/resolv.conf 配置文件中(如“nameserver202.106.0.20”)。需设置多个 DNS 服务器地址时,以逗号进行分隔。
[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;
}
备注:
至少有一个网络接口的 IP 地址与 DHCP 服务器中的一个 subnet 网段相对应,否则将无法正常启动 dhcpd 服务。
#host 主机声明(可选)
host 声明用于设置单个主机的网络属性,通常用于为网络打印机或个别服务器分配固定的 IP 地址(保留地址),这些主机的共同特点是要求每次获取的 IP 地址相同,以确保服务的稳定性。
host prtsvr {
hardware ethernet 00:c0:c3:22:46:81;
fixed-address 192.168.10.211;
}
备注:
注意mac地址的书写格式
3:启动 dhcpd 服务
[root@localhost ~]# systemctl start dhcpd
[root@localhost ~]# netstat -anpu | grep dhcpd
二:使用 DHCP 客户端
1:windows
2:Linux
为网卡 ens33 自动获取新的 IP 地址
[root@localhost ~]# dhclient -d ens33
释放IP地址
[root@localhost ~]# dhclient -r
3:查看租约文件/var/lib/dhcpd/dhcpd.leases
[root@localhost ~]# cat /var/lib/dhcpd/dhcpd.leases
lease 192.168.10.200 {
starts 4 2023/03/23 03:01:12; # 分配地址的时间
ends 4 2023/03/23 09:01:12; # 租约到期时间
tstp 4 2023/03/23 09:01:12; # 租约到期时间
cltt 4 2023/03/23 03:01:12; # 客户端最后访问时间
binding state active; # 租约绑定状态 状态分别是 free 和 active
next binding state free; #租约的下一个绑定状态
rewind binding state free;
hardware ethernet 00:0c:29:3d:70:62; # 客户端mac地址
uid "\0010:dP-2"; # 客户端识别id
client-hostname "DESKTOP-83TIERM"; ##被声明主机的主机名
}
lease 192.168.10.202 {
starts 4 2023/03/23 03:07:19;
ends 4 2023/03/23 03:07:19;
tstp 4 2023/03/23 03:07:19;
cltt 4 2023/03/23 03:07:19;
binding state free; ##租约的绑定状态,该IP地址处于释放状态
}
lease 192.168.10.203 {
starts 4 2023/03/23 03:09:54;
ends 4 2023/03/23 09:09:54;
cltt 4 2023/03/23 03:09:54;
binding state active; #租约的绑定状态,处于绑定状态
next binding state free; #下一个绑定状态
rewind binding state free;
hardware ethernet 00:0c:29:e9:87:15; #当前绑定的主机的mac地址
}
三:DHCP 中继
SW-3L(config)# interface vlan 2
SW-3L(config-if)# ip helper-address 192.168.100.100