DHCP 服务器检查

DHCP 服务器检查

我已经在 OpenBsd 中设置了 DHCP 服务器,我认为现在配置正确了。但是我有几个问题。

  1. 在赋予它控制权之前,如何检查它是否正常工作?
  2. 一旦我关闭了路由器中的 dhcp,我怎么知道服务器将接管控制并响应等?
  3. 我应该如何配置服务器以便从 dhcp 守护进程为其自身提供一个 ip 地址?

请忽略我的无知。提前致谢。

答案1

如果这不是一个关键的生产网络,那么尝试一下看看情况如何可能没问题,可能在周末等休息时间进行。但请注意,您可能最终不得不走访所有客户端计算机并手动续订其租约(如下所述),或者等待一天或更长时间让其租约超时。

关闭路由器上的 dhcp 服务器,然后打开 openbsd 盒子上的 dhcp 服务器。观察/var/log/messages以确认客户端正在请求和接收地址。如果您的客户端是 Windows 计算机,您可能需要ipconfig /renew在其上运行以强制它们从新服务器请求新地址。在 Linux 客户端上,您可以运行dhclient -r以执行相同操作。

可以考虑的一个选项是,第一次在 openbsd 框上启动 dhcpd 时,直接通过以下方式运行它

/usr/sbin/dhcpd -d -f

这会导致 dhcpd 直接以调试模式登录到控制台。这可以帮助您更快地发现问题。以这种方式测试 dhcpd 后,您可以将^C其终止,然后在其正常后台模式下重新启动该程序。

你应该考虑将你的 dhcp 消息记录到一个单独的文件中详细信息- 将 dhcpd.conf 设置为 log-facility local7,然后按如下方式更改 dhcpd.conf:

local7.*                   /var/log/dhcpd.log

如果您永久执行此操作,请记住修改您的 newsyslog 配置以轮换这个新的日志文件。

如果路由器和新服务器在同一个网络上,则禁用路由器 dhcp 服务器并启用服务器 dhcpd 将自动生效。

配置服务器以从 dhcp 守护程序获取其 IP 地址实际上毫无意义,因为您会遇到先有鸡还是先有蛋的问题。相反,您可以使用关键字range在与服务器相同的网络上分配地址。例如,假设您的服务器在 C 类网络上是 192.168.0.1,您可以在 dhcpd.conf 中输入如下内容:

subnet 192.168.0.0 netmask 255.255.255.0 {
    range 192.168.0.5 192.168.0.254;
    option routers 192.168.0.1;
}

也就是说,给出 192.168.0.5 和 192.168.0.254 之间的地址(含)。您的路由器手动配置为 192.168.0.1,并留下一些额外的静态地址(.2 到 .4),以防您以后可能需要连接其他设备。

最后,为了测试这一点,将租约超时设置为比通常短得多的时间会很有帮助。在静态环境中,您可能希望将 max-lease-time 和 default-lease-time 设置为几天或一周。对于此切换,看看您是否可以在现有路由器上将这些值降低很多,并在新的 openbsd dhcp 服务器上将它们设置为较低的值(也许一个小时?)。如果您决定切换回旧的 dhcp 服务器,这将帮助您减少在客户端计算机上必须执行的手动续订次数。一旦您在新服务器上顺利运行一切,请将这些值重新调整为更大的数字,以避免网络上出现不必要的 dhcp 流量。

答案2

此外,BSD 上的 dhcpclient 比 Windows 上的提供更详细的信息(也许有一个我不知道的开关?),所以如果需要,请获取 *BSD liveCD 以了解哪个 DHCP 服务器正在提供数字。

相关内容