Linux安装DHCP服务

DHCP服务:
动态分配IP的服务
DHCP默认端口67/68
分配方式:自动分配、动态分配、手动分配
工作流程:discover→offer→request→ACK
租约:50%、87.5%
进行下一步之前需做准备:

Linux安装DHCP服务
Linux安装DHCP服务

准备好之后进行下一步
配置静态IP:
vim /etc/sysconfig/network-scripts/ifcfg-ens33
systemctl restart network

关闭防火墙:
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
vim /etc/selinux/config
selinux=disabled
reboot 或者 init 6
配置yum源:
cd /etc/yum.repos.d/
mkdir bak
mv *.repo bak/
vim local.repo
内容如下
{
[local]
name=local
baseurl=file:///mnt
enabled=1
gpgcheck=0
}
mount /dev/sr0 /mnt #挂载到mnt

安装dhcp:
yum -y install dhcp #-y可省去,是安装时会询问用户是否确定安装

查看配置文件:
cp /dev/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf

vim /dev/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
#根据虚拟机网络适配器修改配置文件内容
文件内容:
option domain-name “example.org”; #设置的名称
option domain-name-servers ns1.example.org, ns2.example.org; #DNS服务器设置
default-lease-time 600; #设置默认的租约时间
max-lease-time 7200; #设置最长租约时间
log-facility local7; #日志
subnet 10.152.187.0 netmask 255.255.255.0 {
}
#手动删除
subnet 10.254.239.0 netmask 255.255.255.224 {
range 10.254.239.10 10.254.239.20;
option routers rtr-239-0-1.example.org, rtr-239-0-2.example.org;
}
#手动删除
subnet 10.254.239.32 netmask 255.255.255.224 {
range dynamic-bootp 10.254.239.40 10.254.239.60;
option broadcast-address 10.254.239.31;
option routers rtr-239-32-1.example.org;
}
#手动删除
subnet 10.5.5.0 netmask 255.255.255.224 {#设置分配的网段和掩码
range 10.5.5.26 10.5.5.30; #分配的IP地址池
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;
}

#如图结合虚拟机适配器、网关、网段进行配置
Linux安装DHCP服务

host passacaglia {
hardware ethernet 0:0:c0:5d:bd:95;
filename “vmunix.passacaglia”;
server-name “toccata.fugue.com”;
}#默认配置
host fantasia {
hardware ethernet 08:00:07:26:c0:a5;#主机的MAC地址
fixed-address fantasia.fugue.com;#设置保留地址
}
class “foo” {
match if substring (option vendor-class-identifier, 0, 4) = “SUNW”;
}
shared-network 224-29 {
subnet 10.17.224.0 netmask 255.255.255.0 {
option routers rtr-224.example.org;
}
subnet 10.0.29.0 netmask 255.255.255.0 {
option routers rtr-29.example.org;
}
pool {
allow members of “foo”;
range 10.17.224.10 10.17.224.250;
}
pool {
deny members of “foo”;
range 10.0.29.10 10.0.29.230;
}
}

启动服务
systemctl start dhcpd
Linux安装DHCP服务

netstat -anptu | grep dhcpd
Linux安装DHCP服务

服务验证:

  1. Linux客户端获取IP
    BOOTPROTO=dhcp
    ONBOOT=yes
  2. windows客户端
    打开自动配置,网络属性,TCP/IP协议,自动获取
    DHCP日志查看:

cat /etc/rsyslog.conf #获取日志路径
执行上条命令找到/local7

Linux安装DHCP服务

cat /var/log/boot.log #日志路径

cat /var/lib/dhcpd/dhcpd.leases #租约文件路径

相关文章: