1、查询是否安装DHCP,如果未安装,则运行命令安装dhcp服务包。
yum list installed |grep dhcp
yum install -y dhcp
2、查看配置文件/etc/dhcp/dhcpd.conf内容,提示参考/usr/share/doc/dhcp-*/dhcpd.conf.sample文件,复制此配置文件。
cat /etc/dhcp/dhcpd.conf
cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
3、查看服务器本机IP,编辑/etc/dhcp/dhcpd.conf配置文件内容,修改红框内容,设置服务器子网网段。
ifconfig
vi /etc/dhcp/dhcpd.conf
4、临时关闭防火墙(iptable和seLinux),此时就可正常启动dhcp服务了。设置dhcpd服务开机启动。
service iptables stop
setenforce 0
service dhcpd start
chkconfig --add dhcpd
chkconfig dhcpd on
chkconfig --list dhcpd
5、虚拟机复制克隆一份作为客户机,克隆步骤参考博客https://blog.csdn.net/renfeigui0/article/details/100133546,设置后测试客户机获取DHCP分配IP如下。
ifconfig
6、怎么验证这个客户端IP确实是服务器分配的一个IP,查看服务器文件/var/lib/dhcpd/dhcpd.leases如下图,客户端每次重启网络服务获得一个IP都会在该文件中产生记录,192.168.1.243是分配给客户端的IP,00:0c:29:4d:b6:9d 是客户端的MAC地址,经检查就是上图的客户端的MAC地址,证明了客户端的IP确实是服务器分配的。
cat /var/lib/dhcpd/dhcpd.leases
7、配置如下实例。
- 在公司的局域网中用linux搭建dhcp服务器,网络中的ip地址网段为192.168.1.0,子网掩码为255.255.255.0,动态分配的ip地址区间为192.168.1. 240-250,默认网关地址为192.168.1.60,一台计算机(client-a)的IP地址固定为192.168.1.70。此需求在服务器设置如下。
vi /etc/dhcp/dhcpd.conf
8、dhcpd.conf配置文件的详细说明。
(1)全局设置
-
ddns-update-style参数:设置DHCP服务器与DNS服务器的动态信息更新模式,一般的DHCP服务器可以不考虑设置该项,但是全局设置中一定要包括ddns-update-style的设置dhcpd才可以正常启动。设置为:interim 表示与DNS互动更新,设置为:none 表示不自动更新。
-
default-lease-time参数:设置默认租约时间,参数值单位是秒。默认租约时间表示客户端从服务器租用一个IP地址的默认时间,到时间后客户端会向服务器提出继续租用该IP地址的请求。
-
max-lease-time参数:设置最大租约时间,参数值单位是秒。当客户端租约的地址到这个最大时间,就不能继续租用该IP地址了。
-
option domain-name参数:设置主机所在域的名称,设置的域名和主机名称一起组成主机全名。
-
option domain-name-servers参数:设置DNS服务器地址,设置后客户机DNS会使用该地址,如果要设置多个DNS地址,用逗号隔开。
(2)使用subnet声明设置子网属性。
- subnet:后面设置网络地址,netmask:后面设置子网掩码。
- range参数:是设置subnet中可供动态分配的IP地址范围,参数值一定要是subnet设置的子网之内,否则不能启动。
- subnet-mask参数:设置子网掩码,设置子网掩码之后一般不需要再设置网络地址和广播地址。
- routers参数:是设置默认网关。
(3)使用host声明设置主机属性,通常用于为服务器分配好固定使用的IP地址。
- host:后面需要为DHCP客户端主机设置主机名称。
- hardware参数:是设置客户端主机的物理地址(MAC地址),因为通常使用的都是以太网,所以hardware参数类型设置为ethernet。
- fixed-address参数:设置在host声明中指定的客户端分配固定使用的IP地址。