dhcpd
dhcpd 是老版本的 ISC DHCP 服务器。
- dhcpd 不再受维护。Internet Systems Consortium(ISC,互联网系统联盟)推荐 Kea 作为其 官方替代品。
- dhcpd (DHCP (服务器) 守护进程) 不是 dhcpcd (DHCP 客户端 守护进程).
安装
配置
为你想让 dhcpd 监听的接口分配静态 IPv4 地址(此处为 eth0)。指定的子网不应与其他接口的子网重叠:
# ip link set up dev eth0 # ip addr add 139.96.30.100/24 dev eth0 # arbitrary address
- 要在启动时分配静态 IP 地址,参见网络配置#静态 IP 地址。
- RFC 1918 子网是为私有网络保留的,并不会与互联网上的主机冲突。
默认配置文件 dhcpd.conf 文件包含许多注释的例子,复制一份该文件:
# mv /etc/dhcpd.conf /etc/dhcpd.conf.example
欲仅监听子网 139.96.30.0/24,可创建最简配置文件如下:
/etc/dhcpd.conf
option domain-name-servers 8.8.8.8, 8.8.4.4;
option subnet-mask 255.255.255.0;
option routers 139.96.30.100;
subnet 139.96.30.0 netmask 255.255.255.0 {
range 139.96.30.150 139.96.30.250;
}
配置文件使用的选项如下:
domain-name-servers 包含提供给客户的 DNS 服务器地址。此处以谷歌公共 DNS 服务器为例。如果你已经将你自己的 DNS 服务器配置在一台本地机器上,则应在子网中的指定其地址(如 139.96.30.0/24)。
subnet-mask 和 routers 定义子网掩码和子网上可用路由器的列表;routers 也定义了提供给客户端的默认网关。对于小型网络,您往往能把 255.255.255.0 用作掩码,并为运行 dhcpd 的机器指定 IP 地址(此处为 139.96.30.100)。
subnet 为各子网单独设置选项,作用于 dhcpd 所监听的网络接口。此处,我们定义一段可用 IP 地址用作一个子网 139.96.30.0/24(在单个接口 eth0)。
完整选项列表,参见 dhcpd.conf(5)。
PXE
PXE(预启动执行环境)的配置通过以下两个选项完成:
/etc/dhcpd.conf
next-server 192.168.0.2; filename "/pxelinux.0";
next-server 是 TFTP 服务器的 IP 地址,而 filename 是用于启动的映像。
该段配置既可置于整个 subnet 中,亦可仅置于某个 host 定义中。
用法
dhcpd 包括两个单元文件:dhcpd4.service 与 dhcpd6.service,可用于控制守护进程。它们会分别为 IPv4 和 IPv6 在所有 网络接口 上启动守护进程。