如何判断 Ubuntu 16.04 上是否正在运行多个 DHCP 服务器?

如何判断 Ubuntu 16.04 上是否正在运行多个 DHCP 服务器?

因此,我尝试在 Ubuntu 16.04 上使用 isc-dhcp-server 设置 DHCP 服务器。一切似乎都进展顺利,因为我在关闭路由器上的 DHCP 后获得了一个 IP 地址。不幸的是,当我进行配置时,它似乎并没有影响分配给我的 Windows 10 计算机的 IP4 地址。

例如,将 dhcp.conf 文件中所示的范围更改为如下所示的范围后,Windows 机器仍会获得 10.0.0.101,这超出了指定的范围。

ddns 更新样式无;

选项域名“somename”;

默认租用时间 600;

最大租赁时间7200;

权威性;

日志设施local7;

子网 10.0.0.0 网络掩码 255.255.255.0 {

选项域名服务器 8.8.8.8, 8.8.4.4;

范围 10.0.0.60 10.0.0.65;

选项路由器 10.0.0.1; }

我尝试删除 /var/lib/dh​​cp/dhcpd.leases 和 /var/lib/dh​​cp/dhcpd.leases~ 但没有什么区别。

我在 Mac 上运气好一点。它被分配了一个范围内的 IP 地址,但在停止服务后:

sudo 服务 isc-dhcp-server 停止

我注意到 Mac 仍然被分配了一个 IP 地址,尽管有所不同:

10.0.0.102。

Windows 机器也获得了 10.0.0.101 IP 地址。当 isc-dhcp-server 停止时,设备正在获取 IP 地址,这让我想到我可能有多个 DHCP 服务器正在运行,但我怎么知道呢?(顺便说一句 - 我在 dhcpd.leases 中找不到“dhcp-service-identifier”)。

不过,我不确定多个 DHCP 服务器是否是问题所在,因为如果我理解正确的话,dhcp.conf 文件应该适用于任何DHCP 服务器,所以我有点困惑,除非:

  1. 我的 dhcp.conf 文件中有错误
  2. DHCP 服务器在不同的机器上运行(不是路由器!)

答案1

如果你想知道是否有多个实例正在运行,只需在终端窗口中检查你的进程即可 -ps aux | grep dhcpd

要查明网络上是否有多个 dhcp 以及它们可能具有哪个 IP:在 Windows 上,打开 cmd 并输入ipconfig /all。标明您的 IP 10.0.0.101 的块将告诉您它从哪个 DHCP 服务器获取其信息。

一般来说,如果您想在 Ubuntu 系统上知道租约来自哪里,请执行此操作,grep dhcp /var/log/syslog或者如果您有一个控制台并且您的网络接口是 eth0,您可以sudo ifdown eth0; sudo ifup -v eth0在终端中执行此操作以查看配置信息来自哪里。

相关内容