跳转到内容

dhcpd

来自 Arch Linux 中文维基

dhcpd 是老版本的 ISC DHCP 服务器。

注意:

安装

安装 dhcp 包。

配置

为你想让 dhcpd 监听的接口分配静态 IPv4 地址(此处为 eth0)。指定的子网不应与其他接口的子网重叠:

# ip link set up dev eth0
# ip addr add 139.96.30.100/24 dev eth0 # arbitrary address
提示:

默认配置文件 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-maskrouters 定义子网掩码和子网上可用路由器的列表;routers 也定义了提供给客户端的默认网关。对于小型网络,您往往能把 255.255.255.0 用作掩码,并为运行 dhcpd 的机器指定 IP 地址(此处为 139.96.30.100)。

subnet 为各子网单独设置选项,作用于 dhcpd 所监听的网络接口。此处,我们定义一段可用 IP 地址用作一个子网 139.96.30.0/24(在单个接口 eth0)。

完整选项列表,参见 dhcpd.conf(5)

注意:尽管 dhcpd(8) 给出了相反的说法,但是接口必须含有在配置文件中声明的子网,才会被 dhcpd 监听。

PXE

PXE(预启动执行环境)的配置通过以下两个选项完成:

/etc/dhcpd.conf
next-server 192.168.0.2;
filename "/pxelinux.0";

next-serverTFTP 服务器的 IP 地址,而 filename 是用于启动的映像。

该段配置既可置于整个 subnet 中,亦可仅置于某个 host 定义中。

用法

dhcpd 包括两个单元文件:dhcpd4.servicedhcpd6.service,可用于控制守护进程。它们会分别为 IPv4 和 IPv6 在所有 网络接口 上启动守护进程。

参阅