DHCP服务器
目录
一、概述
(一)DHCP协议
DHCP协议(Dynamic Host Configuration Protocol) ,动态主机配置协议,动态的进行IP地址分配
服务端的监听端口 67/udp
客户端监听端口 68/udp
网络架构 C/S
(二)DHCP的优势
提高配置效率、减少配置错误
(三)DHCP的分配方式
手动分配、自动分配、动态分配
(四)应用场景
更加准确的配置网络参数的情况下,用于网络环境较大时
二、工作流程
1、 当客户端配置为自动获得IP地址时,客户端发送discover广播包(发现),用来寻找网络中的DHCP服务器
2、假如网络存在DHCP服务器,此时服务器给出回应,向客户端发送Offer广播包,携带了IP地址的信息,询问客户端是否使用该IP地址
3、假如客户端使用上述IP地址,向服务端发送Request广播包,并将请求信息写入到该包内。
4、 服务端向客户端发送Ack广播包,并确定IP地址的租约期。
何时更新租约:当租约期达到50%时
三、客户端类型
Linux DHCP服务器不存在,没有IP
Windows DHCP不存在,会启用备用IP地址( 169.254.0.0/16 ~ 169.254.255.255/16 )
当客户端重启后
客户端直接发送Request包,这是会出现两种情况:
IP地址空闲 服务端直接回应Ack
IP地址被占用 服务端回应noAck
客户端需要将上述“工作流程”完整执行一遍
四、部署
(一)基础环境
配置yum源
cd /etc/yum.repos.d
mkdir backup
mv CentOS-* backup
vim local.repo
[local]
name=local
baseurl=file:///mnt
enabled=1
gpgcheck=0
mount /dev/sr0 /mnt
关闭防火墙及SElinux
systemctl stop firewalld && systemctl disable firewalld
查看SElinux状态
getenforce
设置宽容模式
setenforce 0
关闭SElinux
vim /etc/selinux/config
将SELINUX=enforcing 改为 SELINUX=disabled
重启才能生效
配置静态IP
关闭网络图形化工具
systemctl stop NetworkManager ; systemctl disable NetworkManager
cd /etc/sysconfig/network-scripts/
vim ifcfg-ens33
TYPE=Ethernet
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.1.254
PREFIX=24
systemctl restart network
(二)安装DHCP软件包
yum install -y dhcp
五、配置
(一)配置文件存储路径
/etc/dhcp
(二)默认配置文件副本路径
/usr/share/doc/dhcp-4.2.5/
(三)数据文件存储路径
/var/lib/dhcpd
(四)核心配置文件
/etc/dhcp/dhcpd.conf
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
配置项
subnet
配置DHCP分配的地址池
subnet 10.5.5.0 netmask 255.255.255.224
{ range 10.5.5.26 10.5.5.30;
option domain-name-servers ns1.internal.example.org; option domain-name "internal.example.org";
option routers 10.5.5.1;
option broadcast-address 10.5.5.31;
default-lease-time 600;
max-lease-time 7200;}
这是一段DHCP配置,表示对于子网10.5.5.0,使用255.255.255.224作为子网掩码。
DHCP服务器为这个子网提供的IP地址范围是从10.5.5.26到10.5.5.30。
DHCP服务器向客户端提供的DNS服务器的名称是ns1.internal.example.org。
DHCP服务器向客户端提供的域名是internal.example.org。
DHCP服务器向客户端提供的默认网关是10.5.5.1。
DHCP服务器向客户端提供的广播地址是10.5.5.31。
DHCP服务器分配给客户端的IP地址的默认租期是600秒。
DHCP服务器分配给客户端的IP地址的最大租期是7200秒。
host
固定IP地址,指定分配给对应的MAC地址的主机
host fantasia
{ hardware ethernet 08:00:07:26:c0:a5;
fixed-address IP address;}
这是一个DHCP配置中的主机定义。其中,
host fantasia:定义了一个名为"fantasia"的主机。
hardware ethernet 08:00:07:26:c0:a5:指定该主机的物理硬件地址(MAC地址)为08:00:07:26:c0:a5。
fixed-address IP address:为该主机指定一个固定的IP地址。
注意,"IP address"应该替换为实际的IP地址。这个配置表示,当具有MAC地址为08:00:07:26:c0:a5的设备连接到DHCP服务器时,该设备将始终被分配到指定的固定IP地址。
(五)重启DHCP服务器
systemctl restart dhcpd
六、中继配置
(一)部署
基础环境
网卡
将第一块网卡改为vmnet1
添加第二快网卡设为vmnet2
更改编辑项改为仅主机,同时关闭自动获取IP
配置yum源
cd /etc/yum.repos.d
mkdir backup
mv CentOS-* backup
vim local.repo
[local]
name=local
baseurl=file:///mnt
enabled=1
gpgcheck=0
mount /dev/sr0 /mnt
关闭防火墙及SElinux
systemctl stop firewalld && systemctl disable firewalld
查看SElinux状态
getenforce
设置宽容模式
setenforce 0
关闭SElinux
vim /etc/selinux/config
SELINUX=enforcing 改为 SELINUX=disabled
重启才能生效
systemctl restart
(二)配置
配置网卡
cd /etc/sysconfig/network-scripts/
vim ifcfg-ens33
TYPE=Ethernet
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=DHCP机器的IP地址
PREFIX=24
vim ifcfg-网卡2
TYPE=Ethernet
BOOTPROTO=static
NAME=网卡2
DEVICE=网卡2
ONBOOT=yes
IPADDR=更改IP地址
PREFIX=24
vim /sysctl.conf
最下方插入内容
net.ipv4.ip_forward = 1
sysctl -p
systemctl restart network
安装DHCP软件包
yum install -y dhcp
指向中继服务器
dhcrelay 服务器的IP地址
配置DHCP服务器
配置DHCP网络参数
需要在配置参数中加入网关
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
/etc/dhcp/dhcpd.conf
编辑信息
vim /etc/dhcp/dhcpd.conf
更改IP地址
复制subnet行
粘贴subnet行
更改IP
重启DHCP服务器
systemctl restart dhcpd
重启网络
systemctl restart network