我有一个数据中心网络,需要在其中测试跨子网的 DHCP。我有一个智能交换机,配置为将任何子网中的 DHCP 请求重新广播到我的管理网络中的广播地址10.1.0.255
。
由于 DHCP 尚未管理任何内容,因此我已dhcpd
在 RHEL7 服务器上进行了安装10.1.0.4
,具体如下wisdom.metro.mydomain.com
:
shared-network metro {
option domain-name "metro.mydomain.com";
option domain-name-servers 10.0.1.3, 10.0.2.3;
# admin network
subnet 10.1.0.0 netmask 255.255.255.0 {
option broadcast-address 10.1.0.255;
option subnet-mask 255.255.255.0;
option routers 10.1.0.1;
authoritative;
}
# mysql database network
subnet 10.1.1.0 netmask 255.255.255.0 {
option broadcast-address 10.1.1.255;
option subnet-mask 255.255.255.0;
option routers 10.1.1.1;
authoritative;
}
}
# static leases
host johnrambo {
option host-name "johnrambo.metro.mydomain.com";
hardware ethernet 00:01:02:03:04:05;
fixed-address 10.1.1.4;
}
dhcpd.service
我正在尝试通过跟踪我的 DHCP 主机上的单元日志(即journalctl -u dhcpd.service -f
)来测试 DHCP 是否能够正确解析。
johnrambo
在运行 RHEL6 的 上,我已经安装并dhcping
可以向服务器发送 DHCP 请求,如下所示:
# dhcping -s 10.1.0.4 -h 00:01:02:03:04:05
no answer
在 上wisdom
,我可以看到它至少收到了 DHCP 请求:
Sep 01 12:18:54 wisdom.metro.mydomain.com dhcpd[29530]: DHCPREQUEST for 0.0.0.0 from 00:01:02:03:04:05 via em1: ignored (not authoritative).
如果我使用 请求明确的 IP 地址-c 10.1.1.4
,我会得到答案:
Sep 01 12:33:52 wisdom.metro.mydomain.com dhcpd[29530]: DHCPREQUEST for 10.1.1.4 from 00:01:02:03:04:05 via em1
Sep 01 12:33:52 wisdom.metro.mydomain.com dhcpd[29530]: DHCPACK on 10.1.1.4 to 00:01:02:03:04:05 via em1
Sep 01 12:33:52 wisdom.metro.mydomain.com dhcpd[29530]: DHCPRELEASE of 10.1.1.4 from 00:01:02:03:04:05 via em1 (not found)
johnrambo
如果我尝试从向其自己的广播地址或子网10.1.1.255
的广播地址进行广播,则看不到任何生成的日志。wisdom
10.1.0.255
因此,我在这里看到两个离散的问题:
dhcping
要么不进行广播,dhcpd
要么wisdom
不监听广播,要么发生其他事情阻止了一切。- 除非我特别请求地址,
dhcpd
否则wisdom
不会回复。
我的最终目标是在我的数据中心设置仅具有静态租约的 DHCP 来进行 PXE 启动,这取决于跨子网 DHCP 广播是否正常工作。如果我无法向网络上的广播地址发送 DHCP 请求,主机将无法获取 IP,也无法进行 PXE 启动。
有没有更好的方法来测试 DHCP,以及我的配置中哪里做错了dhcpd
?