我有一个由多个子网组成的 VLAN,我想使用 DHCP 来集中分配 IP 地址。
DHCP 服务器 ( 100.100.25.88
) 是子网上的 Debian 计算机100.100.25.64/27
。我想为子网中的计算机分配 IP 地址100.100.68.0/24
。最终目标是在子网中的所有计算机上启用 PXE 启动100.100.68.0/24
。
以下是我的dhcpd.conf
文件,
# DHCP Configuration file
use-host-decl-names on;
ddns-update-style interim;
ignore client-updates;
next-server 100.100.25.88;
# Subnet of DHCP server
subnet 100.100.25.64 netmask 255.255.255.224 {
option subnet-mask 255.255.255.224;
range dynamic-bootp 100.100.25.66 100.100.25.94;
default-lease-time 21600;
max-lease-time 43200;
option domain-name-servers 100.100.25.69, 100.100.44.21;
option routers 100.100.25.65;
filename "pxelinux.0";
}
# Subnet of client machines
subnet 100.100.68.0 netmask 255.255.255.0 {
range dynamic-bootp 100.100.68.10 100.100.68.200;
option subnet-mask 255.255.255.0;
default-lease-time 21600;
max-lease-time 43200;
option domain-name-servers 100.100.25.69, 100.100.44.21;
option routers 100.100.68.1;
option broadcast-address 100.100.68.255;
filename "pxelinux.0";
allow unknown-clients;
}
按照我对 DHCP 的理解,DHCP 服务器应该将数据包广播到为第二个子网指定的广播地址。100.100.68.255
但是,没有客户端能够检索 IP 地址。这是我的 DHCP 配置中的错误,还是可能是因为路由器未启用 DHCP 中继?
谢谢!
答案1
如果您希望 DHCP 服务器接收来自其他网络的客户端请求,则需要在每个此类网络中设置 DHCP 中继,并且每个中继都需要配置为将客户端请求转发到您的 DHCP 服务器。我相信 ISC DHCP 软件包能够提供中继服务,但我从未以这种身份使用过它。许多路由器也可以配置为在其所连接的网络上充当 DHCP 中继。
就您而言,在 上配置 DHCP 中继似乎合乎逻辑100.100.68.1
,因为它是路由器。但是,网络上的任何服务器(具有静态 IP)100.100.68.0/24
都可以轻松充当该角色。
(顺便说一句,DHCP 服务器从不广播,它们总是发送直接(单播)消息。)