从 DHCP 获取客户端主机名

从 DHCP 获取客户端主机名

我有一台 voyage 2.6.38 机器,为 DHCP 服务器运行 DNSMASQ,我想获取获取 DHCP 租约的客户端的主机名。我该怎么做呢?

答案1

如果主机发送其名称,您可以从 DNS 检索它。如果您知道其 IP 地址,则只需对该 IP 地址进行反向查找即可。这些命令之一应该有效(使用主机的 IP 地址代替 192.0.32.10):

host 192.0.32.10
nslookup 192.0.32.10 

您可以检索所有租约的列表,包括文件中提供的名称(如果有)dhcp.leases。它的位置会根据您使用的发行版而有所不同。 Ubuntu 使用/var/lib/misc/dnsmasq.leases而 OpenWrt 使用/tmp/dhcp.leases.如果您有 dnsmasq 的手册页,则该命令man dnsmasq应在文档末尾提及租约文件的位置。您可以通过dhcp-leasefile在配置或命令行中指定选项来覆盖此位置。可以使用 命令行选项-l或选项来执行此操作。--dhcp-leasfile=

租约文件中的字段是时间戳、MAC 地址、IP 地址、主机名和客户端 ID。客户端不需要发送主机名或客户端 ID。

如果已启用日志记录,您可以查看系统日志以了解已协商哪些租约。应记录所有 DHCP 协商。如果你的租期很长,谈判就不会频繁。客户应在租赁时间一半时开始协商续约。最好将租用时间设置为至少是 DHCP 服务器合理预期停机时间的两倍。

答案2

由客户决定是否要发送它们。在初始请求中,可以将其配置为发送主机名。大多数桌面/服务器 DHCP 客户端都会执行此操作,而嵌入式客户端通常不会执行此操作。

相关内容