基于CentOS的DHCP服务器基础配置

DHCP 服务器基础配置

介绍

DHCP (Dynamic Host Configuration Protocol)是一种网络协议,它允许网络设备自动获取IP地址、网关地址、DNS服务器地址等配置信息,从而简化了网络管理和配置。DHCP服务器负责为客户端分配IP地址,并提供其他必要的配置信息。

ISC DHCP服务器(Internet Systems Consortium DHCP Server)是一个开源的DHCP实现,被广泛应用于Linux和Unix系统中。它提供了以下主要功能:

  1. IP地址分配:DHCP服务器可以自动从可用的IP地址池中为客户端分配IP地址,减轻了手动配置的负担。
  2. 租约管理:DHCP服务器会为每个客户端分配一个IP地址租约,并管理租约的状态和过期时间。
    配置参数发送:DHCP服务器除了分配IP地址,还可以将网关、DNS服务器、子网掩码等其他配置参数发送给客户端。
  3. 高度可配置:ISC DHCP服务器的配置文件支持丰富的语法,可以根据不同的网络需求进行定制。
  4. 高可用性:ISC DHCP服务器支持主备模式,可以实现DHCP服务的高可用性。

总之,ISC DHCP服务器是一个功能强大、配置灵活的DHCP实现,广泛应用于企业和运营商的网络环境中。它大大简化了网络设备的IP地址分配和配置管理工作。

设备环境

  • 系统:CentOS 8.3

  • 网段:192.168.1.0/24

安装DHCP服务端

yum install dhcp-server -y

复制配置

修改/etc/dhcp/dhcpd.conf

第一次进去你只能看到

#
# DHCP Server Configuration file.
#   see /usr/share/doc/dhcp-server/dhcpd.conf.example
#   see dhcpd.conf(5) man page
#

这堆东西

上面在说默认的样板配置文件在/usr/share/doc/dhcp-server/dhcpd.conf.example

需要你手动复制过来覆盖掉这个文件

cp /usr/share/doc/dhcp-server/dhcpd.conf.example /etc/dhcp/dhcpd.conf

此时系统会提示你是否覆盖掉这个文件

cp:是否覆盖'/etc/dhcp/dhcpd.conf'?

只需要打一个y然后回车就完事了

你可以跳过这步然后手打配置

配置服务端


普通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;   # DNS 服务器
  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;                                   # 最大租约时间
}

subnet 这行修改网段和子网掩码,例如

  • subnet 192.168.1.0 netmask 255.255.255.0 {

注意是填写网段不是具体的IP

range 是地址池,也就是分发的范围

比如我要服务器分发200到210这个范围,例如

  • range 192.168.1.200 192.168.1.210;

注意末尾的分号

option domain-name-servers 这行是分发下去的DNS服务器

例如分发192.168.1.1为DNS服务器,例

  • option domain-name-servers 192.168.1.1;

这也可以写域名的DNS服务器,例

  • option domain-name-server dns.jnds.com;

option domain-name 是分发的域名

比如我要下发jnds.com这么一个域名

  • option domain-name “jnds.com”;

option routers 是默认网关

比如下发192.168.1.254为网关

  • option routers 192.168.1.254;

option broadcast-address是广播地址

通常来说直接注释掉就行了

如果你需要修改那么就修改为你需要的广播地址,比如

  • option broadcast-address 192.168.1.255;

default-lease-time是租约时间,看你需要修改到多少

比如172800秒

  • default-lease-time 172800;

注意这是以秒为单位的

max-lease-time是最大租约时间,同样看你需要多少

不能少于default-lease-time的时间

比如我修改为259200秒

  • default-lease-time 259200;

注意秒为单位

整体修改完后就应该这个样子

subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.200 192.168.1.210;
  option domain-name-servers 192.168.1.1;
  option domain-name "jnds.com";
  option routers 192.168.1.254;
#  option broadcast-address 10.5.5.31;
  default-lease-time 172800;
  max-lease-time 259200;
}

只是差不多这样,到时候你配置出来的不可能和我的一模一样

注意别忘了每一行最后的分号


保留

同样还是这个文件

找到以下配置

host fantasia {                            # 保留名称
  hardware ethernet 08:00:07:26:c0:a5;     # 设备MAC地址
  fixed-address fantasia.example.com;      # 静态分配的IP
}

保留的主机名按需求修改就好

设备的MAC地址得按实际填写

比如00:0C:29:78:02:9A就修改为

  • hardware ethernet 00:0C:29:78:02:9A;

fixed-address是保留下来的静态分配IP

比如静态分配192.168.1.10这么一个IP

  • fixed-address 192.168.1.10;

修改为

host fantasia {
  hardware ethernet 00:0C:29:78:02:9A;
  fixed-address 192.168.1.10;
}

超级作用域

DHCP 超级作用域(DHCP Super-scope)是 ISC DHCP 服务器的一个重要功能,用于管理大型网络环境中的 DHCP 配置。
超级作用域的主要作用如下:

  1. 跨子网分配 IP 地址
    在复杂的网络环境中,可能需要在多个不同的子网中分配 IP 地址。超级作用域可以跨越多个子网,统一管理 IP 地址池和 DHCP 配置。
  2. 支持 VLAN 和多个网卡
    超级作用域可以为不同的 VLAN 或多个网络接口分配不同的 IP 地址池和配置参数,提高了灵活性。
  3. 简化管理
    通过在超级作用域下定义共享的配置参数,可以大大简化 DHCP 服务的管理和维护工作。
  4. 高可用性
    超级作用域支持主备模式,可以实现 DHCP 服务的高可用性,提高网络的可靠性。
    配置超级作用域需要在 DHCP 服务器的配置文件中进行相关设置,包括定义超级作用域、关联子网、配置 IP 地址池等。超级作用域的使用对于管理大型复杂网络环境的 DHCP 服务非常有帮助。

配置

修改/etc/dhcp/dhcpd.conf

到这个配置文件的最下面

找到以下配置

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;
  }
}

把里面的pool的配置删干净

就像这样

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;
  }
}

修改shared-network 224-29 {中的224-29

这个是超级作用域的名字,比如

  • shared-network mydhcpdomain {

subnet设置不多说,就像上面那样配置

只不过你需要手动添加range等相关的设置

作用域内必须包括服务端本机所在的网段的配置

不写在作用域内也必须在其他写出来

配置完后就像这样

shared-network mydhcpdomain {
  subnet 192.168.1.0 netmask 255.255.255.0 {
    option routers 192.168.1.254;
  }
  subnet 192.168.30.0 netmask 255.255.255.0 {
    option routers 192.168.30.254;
    range 192.168.30.200 192.168.30.210;
    option domain-name-servers 192.168.30.1;
    option domain-name "jnds.com";
    default-lease-time 172800;
    max-lease-time 259200;
  }
}

把上面的非超级作用域配置使用shared-network包起来其实也可以的,但是不做示例

别忘了每一行最后的分号

  • 6
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值