DHCP简介
DHCP(DynamicHost ConfigurationProtocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理、分配IP地址,使网络环境中的主机动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。
DHCP的优点
1、减少管理员的工作量
2、避免IP地址冲突
3、当前网络更改IP地址段时,不需要再重新配置每个用户的IP地址
4、提高IP地址的利用率
5、方便客户端的配置
环境(基础网络环境配置完成)
redhat 9
192.168.200.133 服务端
192.168.200.129 客户端
步骤:
修改双方名称
[root@admin ~]# hostname server
[root@admin ~]# bash
[root@server ~]#
[root@AI ~]# hostname cilent
[root@AI ~]# bash
[root@cilent ~]#
服务端安装DHCP 软件包(确保YUM仓库配置完成)
root@server ~]# yum -y install dhcp-server.x86_64
正在更新 Subscription Management 软件仓库。
无法读取客户身份
本系统尚未在权利服务器中注册。可使用 subscription-manager 进行注册。
AppStream 3.1 MB/s | 3.2 kB 00:00
BaseOS 2.7 MB/s | 2.7 kB 00:00
依赖关系解决。
软件包 架构 版本 仓库 大小
安装:
dhcp-server x86_64 12:4.4.2-18.b1.el9 BaseOS 1.2 M
安装依赖关系:
dhcp-common noarch 12:4.4.2-18.b1.el9 BaseOS 131 k
事务概要
安装 2 软件包
总计:1.4 M
安装大小:4.2 M
下载软件包:
运行事务检查
事务检查成功。
运行事务测试
事务测试成功。
运行事务
准备中 : 1/1
安装 : dhcp-common-12:4.4.2-18.b1.el9.noarch 1/2
运行脚本: dhcp-server-12:4.4.2-18.b1.el9.x86_64 2/2
安装 : dhcp-server-12:4.4.2-18.b1.el9.x86_64 2/2
运行脚本: dhcp-server-12:4.4.2-18.b1.el9.x86_64 2/2
验证 : dhcp-common-12:4.4.2-18.b1.el9.noarch 1/2
验证 : dhcp-server-12:4.4.2-18.b1.el9.x86_64 2/2
已更新安装的产品。
已安装:
dhcp-common-12:4.4.2-18.b1.el9.noarch dhcp-server-12:4.4.2-18.b1.el9.x86_64
完毕!
[root@server ~]#
关闭防火墙以及selinux
[root@server ~]# systemctl stop firewalld.service
[root@server ~]# setenforce 0
[root@server ~]#
编辑DHCP服务配置⽂件,因为默认DHCP服务配置⽂件为空,所以需要先将配置 ⽂件模板的内容添加⾄配置⽂件中。
[root@server ~]# cat /usr/share/doc/dhcp-server/dhcpd.conf.example > /etc/dhcp/dhcpd.conf
[root@server ~]#
编辑配置文件
47 subnet 192.168.200.0 netmask 255.255.255.0{
48 range 192.168.200.10 192.168.200.20; //地址范围
49 option domain-name-servers 114.114.114.114; //DNS地址
50 option domain-name "internal.example.org"; //域名
51 option routers 192.168.200.1; //网关
52 option broadcast-address 192.168.200.255; //广播地址
53 default-lease-time 7000; //租约时间
54 max-lease-time 7200; //最大租约时间
55 }
重启服务设置开机自启
[root@server ~]# systemctl restart dhcpd
[root@server ~]# systemctl enable dhcpd
Created symlink /etc/systemd/system/multi-user.target.wants/dhcpd.service → /usr/lib/systemd/system/dhcpd.service.
[root@server ~]#
客户端
在客户端进⾏测试,由于VMware虚拟化软件本身⾃带DHCP服务,所以需要将 VMware的DHCP服务关闭,打开虚拟⽹络编辑器根据虚拟机采⽤的⽹络模式选择相 应的虚拟⽹卡,此台虚拟机采⽤的nat模式,所以选择nat模式,取消DHCP的勾选 保存即可
原来IP地址
[root@cilent ~]# ip a
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens160: mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:0c:29:ae:bd:c8 brd ff:ff:ff:ff:ff:ff
altname enp3s0
inet 192.168.200.129/24 brd 192.168.200.255 scope global dynamic noprefixroute ens160
valid_lft 6907sec preferred_lft 6907sec
inet6 fe80::20c:29ff:feae:bdc8/64 scope link noprefixroute
valid_lft forever preferred_lft forever
3: docker0: mtu 1500 qdisc noqueue state DOWN group default
link/ether 02:42:25:a5:0d:19 brd ff:ff:ff:ff:ff:ff
inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
valid_lft forever preferred_lft forever
使⽤nmcli命令修改为AUTO,并激活
[root@cilent ~]# nmcli connection modify ens160 ipv4.method auto connection.autoconnect yes
[root@cilent ~]# nmcli connection up ens160
查看现在IP
[root@cilent ~]# ip a
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens160: mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:0c:29:ae:bd:c8 brd ff:ff:ff:ff:ff:ff
altname enp3s0
inet 192.168.200.10/24 brd 192.168.200.255 scope global dynamic noprefixroute ens160
valid_lft 6661sec preferred_lft 6661sec
inet6 fe80::20c:29ff:feae:bdc8/64 scope link noprefixroute
valid_lft forever preferred_lft forever
3: docker0: mtu 1500 qdisc noqueue state DOWN group default
link/ether 02:42:25:a5:0d:19 brd ff:ff:ff:ff:ff:ff
inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
valid_lft forever preferred_lft forever
[root@cilent ~]#
此时DHCP已经获取成功!