我很难配置更现代的 Fedora DHCP 服务版本来替换旧版本,问题是客户端没有获得适当的 DNS 服务器信息。
我在较早的 Fedora 版本中使用 dhcpd 非常成功地为内部网络提供服务并为客户端提供以下功能:
1)未知客户端仅收到 IP 地址,但未提供外部路由或 DNS 服务器信息。
2)通过 MAC 地址知道的客户端被映射到特定的 IP,给定正确的出站路由和外部 DNS 服务器。
但是,该系统遇到了硬件故障,我一直在尝试转换到具有更年轻操作系统的备用服务器 - FC 21。(旧配置的版本未知,但不是很旧。)我似乎无法得到已知或未知客户端正确的 DNS 服务器信息来解析主机名;他们可以路由,但不能解析名称。
新软件dhcp-4.3.1-12.fc21,它没有相同的配置细节。相反,它能够更新友好的 DNS 服务器——这里不需要这个功能。我对如何正确配置它的所有搜索都揭示了有关使用服务主机知识更新友好 DNS 服务器的详细信息——当然,这与我正在尝试做的事情无关。
这些方向仅涉及称为域名服务器的东西,因此示例如下:
# option domain-name-servers ns1.example.org, ns2.example.org;
目前我自己的条目是针对所有客户端的,并且使用 IP 地址而不是域名,就像这样
option domain-name-servers 67.100.88.26, 64.105.172.26;
如果有人可以确认它domain-name-servers
旨在用于指向该 DHCP 服务器应该连接的合作 DNS 服务器以更新有关该 DHCP 服务器的客户端的信息,那将是非常好的。
我很难找到与 dhcpd 服务器和合作 dns 服务器之间的身份验证无关的任何其他与名称服务器相关的配置设置。
值得注意的是,对我来说,为某个位置的条目提供名称而不是 IP 地址似乎相对疯狂,该位置将告诉客户端如何从名称中查找 IP 地址,但该策略可能仅取决于主机自己的 /etc/resolv .conf。
难道新系统只是将系统的resolv.conf数据交给所有客户端?!太可怕了!这意味着一个人不能对未知客户隐藏这些数据!但是,这不可能是因为我的客户没有收到任何 DNS 服务器数据!
事实证明,我正在测试的系统有两个接口,都是 dhcp 服务,但由不同的服务器(另一个是硬件路由器)提供服务,所以我的测试没有什么帮助。然而,一旦我意识到这个问题,我就能让它工作并确认一些在官方文档中不太清楚的事实:
domain-name-servers
事实上,它确实将客户端指向他们的 DNS 服务器,并且它可以在全球范围内和逐个主机的基础上运行。和;domain-name-servers
必须以“option
”开头,空格分隔,多个服务器之间用逗号分隔,分号结束。和;domain-name-servers
如果在适当的位置没有条目,就不可能进行 DNS 转换。经验教训:更仔细地测试!(“一次只测试一件事”也意味着不要让非托管变量意外引入。)
如果文档更清晰,那也很好。