一、DHCP介绍
1、DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)
作用:给网络内的客户机自动分配IP地址
2、使用DHCP的好处
- 减少管理员的工作量
- 避免输入错误的可能
- 避免IP地址冲突
- 当更改IP地址段时,不需要重新配置每个用户的IP地址
- 提高了IP地址的利用率
- 方便客户端的配置
3、DHCP的分配方式
- 自动分配:分配到一个IP地址后永久使用
- 手动分配:由DHCP服务器管理员专门指定IP地址
- 动态分配:
- 使用完后释放该IP,供其它客户机使用
二、DHCP原理
DHCP工作可分为四个步骤
- 客户端在网络中搜索服务器
- 服务器向客户端响应服务
- 客户端向目标服务器发出服务请求
- 服务器向客户端提供服务
(1)客户机请求IP地址
当一个DHCP客户机启动时,客户机还没有IP地址,所以客户机要通过DHCP获取一个合法的地址。此时DHCP客户机以广播方式发送DHCP Discover发送信息来寻找DHCP服务器。
(2) 服务器响应
DHCP服务器接收到来自客户机请求IP地址的信息时,在自己的IP地址池中查找是否有合法的IP地址提供给客户机如果有,DHCP服务器将此IP地址做上标记,加入到DHCP Offer的消息中,然后广播一则DHCP Offer消息。
(3)客户机选择IP地址
DHCP客户机从接收到的第一个DHCP Offer消息中提取IP地址,发出IP地址的DHCP服务器将该地址保留,这样该地址就不能再分配给另一个DHCP客户机。
(4)服务器确定租约
DHCP服务器接收到DHCP Request消息后,以DHCP ACK消息的形式向客户机广播成功确认,该消息包含有IP地址的有效租约和其他可配置的信息当客户机收到DHCPACK消息时,配置IP地址,完成TCP/IP的初始化。
重新登录过程
DHCP客户机每次重新登录网络时,不需要再发送DHCP Discover信息,而是直接发送包含前一次所分配的IP地址的DHCP Request请求信息
三、实例
1、系统初始化操作
[root@localhost ~]# systemctl disable --now firewalld //关闭防火墙
[root@localhost ~]# setenforce 0 //永久关闭
[root@localhost ~]# vim /etc/selinux/config //修改文件内容为"SELINUX=disabled"
[root@clr ~]# mount /dev/sr0 /mnt //将光盘/dev/sr0挂载到/mnt目录下
[root@localhost ~]# df
文件系统 1K-块 已用 可用 已用% 挂载点
devtmpfs 1913552 0 1913552 0% /dev
tmpfs 1930628 0 1930628 0% /dev/shm
tmpfs 1930628 12808 1917820 1% /run
tmpfs 1930628 0 1930628 0% /sys/fs/cgroup
/dev/mapper/centos-root 27245572 4588580 22656992 17% /
/dev/sda1 1038336 191084 847252 19% /boot
tmpfs 386128 28 386100 1% /run/user/1000
/dev/sr0 4635056 4635056 0 100% /mnt
[root@localhost ~]# yum -y install dhcp //安装dhcp
2、修改配置文件
[root@localhost dhcp-4.2.5]# cp dhcpd.conf.example /etc/dhcp/dhcpd.conf
cp:是否覆盖"/etc/dhcp/dhcpd.conf"? yes
[root@localhost dhcp-4.2.5]# vim /etc/dhcp/dhcpd.conf //进入并修改此配置文件
3、通过修改配置文件实现自动配置IP地址
首先需要把服务器改为仅主机模式,并手动配置VMnet1的IP地址和子网掩码。
另外一台LINUX客户机改动网卡配置,并把指定配置IP地址删除。
进入dhcpd.conf文件中修改配置如下:
验证:
用win10系统自动配置IP地址
用另一台LINUX验证
配置指定的IP地址:192.168.10.88
修改dhcpd.conf文件内容
验证: