如何在CentOS/RHEL 7/6/5上配置DHCP服务器

时间:2019-05-19 01:25:45  来源:igfitidea点击:

DHCP(动态主机配置协议)是一种网络协议,用于从预定义的IP池向网络客户端动态分配IP地址。
它对LAN网络很有用,但一般不用于生产服务器。
本文将在Red Hat系统上配置DHCP服务器。

安装DHCP包

首先安装DHCP包使用yum包管理器在CentOS,红帽系统。
DHCP rpm可以在基本存储库下使用,因此我们不需要添加额外的存储库。

yum install dhcp

更新/etc/sysconfig/dhcpd文件

首先需要在 /etc/sysconfig/dhcpd文件中将以太网接口名设置为DHCPDARGS。
编辑这个配置文件并更新以太网名称。

DHCPDARGS=eth1

配置DHCP服务器

DHCP创建一个空的配置文件 /etc/dhcp/dhcpd.conf

此外,它还提供了一个示例配置文件: /usr/share/doc/dhcp/dhcpd.conf.sample* 。
,这对于配置DHCP服务器非常有用。
因此,作为第一部分,将示例配置文件的内容复制到主配置文件中。
示例配置文件可能被更改,因为我们已经安装在系统上。

# cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf

3.1 -参数配置

首先配置对所有支持的网络都通用的基本选项。

option domain-name "theitroad.com";
  option domain-name-servers ns1.theitroad.com, ns2.theitroad.com;
  default-lease-time 600;
  max-lease-time 7200;
  authoritative;
  log-facility local7;

3.2 - 定义IP子网

首先,编辑DHCP配置文件并根据网络更新子网细节。
在本例中,我们将DHCP配置为 192.168.1.0/24局域网。

subnet 192.168.1.0 netmask 255.255.255.0 {
        option routers                  192.168.1.254;
        option subnet-mask              255.255.255.0;
        option domain-search            "theitroad.com";
        option domain-name-servers      192.168.1.1;
        option time-offset              -18000;     # Eastern Standard Time
	range   192.168.1.10   192.168.1.100;
}

3.3 -分配固定IP地址给主机

在某些情况下,我们需要为每次从dhcp请求的接口分配一个固定的IP。
我们也可以根据该接口的MAC地址(硬件以太网)分配一个固定的IP。
设置主机名是可选的。

host station1 {
   option host-name "station1.example.com";
   hardware ethernet 00:11:1A:2B:3C:AB;
   fixed-address 192.168.1.100;
}

启动DHCP服务

完成上述所有更改之后,让我们根据操作系统版本使用以下命令启动dhcp服务。

## CentOS/RHEL 7 系统
systemctl start dhcp

## CentOS/RHEL 6/5 系统
service dhcp start

类似地,使用以下命令停止和重新启动dhcp服务。

## CentOS/RHEL 7 系统
systemctl stop dhcp
ystemctl restart dhcp

## CentOS/RHEL 6/5 系统
service dhcp stop
service dhcp restart

步骤5:安装客户端系统

在这个阶段,我们有一个正在运行的dhcp服务器,它可以接受请求并为它们分配适当的ip。
但为了验证我有另一台CentOS机器在同一局域网上运行。
现在登录到该客户机并编辑以太网配置文件。

vim /etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=eth1
BOOTPROTO=dhcp
TYPE=Ethernet
ONBOOT=yes

确保将 BOOTPROTO设置为 dhcp
让我们重新启动客户机上的网络服务。
我们将从定义的子网中获得为dhcp服务器分配的ip地址。

## CentOS/RHEL 7 系统
systemctl restart network

## CentOS/RHEL 6/5 系统
service network restart