dhcp - 探测 DHCP 服务器并转储收到的 DNS 主机配置

标签 dhcp

我想验证 dhcp 服务器配置,即客户端是否获得正确的 DNS 服务器、域名等。 我有一个有效的 DHCP 设置,以及一台具有静态 IP 地址的计算机,我可以从该地址向 DHCP 服务器发送 DHCP 请求。

我正在寻找一个图书馆(或程序)来请求租用并转储所有信息。

到目前为止我已经看到:

  • dhcping——可以工作,但不会写出它收到的租约
  • pydhcpd——未开发,alpha(?)
  • pydhcplib -- 没有文档,不确定它是否真的可以发送包或者只是封装; dhquery 应该基于这个库工作,并声称可以部分完成我想要的工作,但是在修复 client.SendDhcpPacketTo 上的 API 更改后,它没有收到任何响应。

是否有任何现有的脚本或库可以打印或接收 DHCP 服务器发送的 DNS 信息?任何语言都可以(Perl?Java?)。

最终,我想将其放入 Nagios 检查脚本中。

最佳答案

我刚刚 fork 了 dhclient,创建 dhcprobe

使用 DHCProbe,可以从 DHCP 服务器请求租约,并转储结果以验证配置。

详细模式示例:

 $ sudo ./dhcprobe -v -s 172.20.205.1
Got answer from: 172.20.205.1
option 53 DHCP message type 6 (DHCPNAK)
option 54 Server identifier 172.20.205.1
option  1 Subnet mask 255.255.255.0
option  3 Router 172.20.205.1
option 15 Domain name slh.local
option  6 DNS server 172.20.200.250
option 51 IP address leasetime 
option 58 T1 
option 59 T2 

这可以验证域名、DNS 服务器等是否配置正确 在 DHCP 服务器中。

来源和信息在这里:https://github.com/JohannesBuchner/DHCProbe

关于dhcp - 探测 DHCP 服务器并转储收到的 DNS 主机配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10056310/

相关文章:

linux - 在 dhcpd.conf 中查找空闲 IP 地址

无法打开设备 eth0 : eth0: socket: Invalid argument

python - 如何在 python 子列表中填写未使用的 ip 地址?

c - 在 GNU/Linux/C 中使用多播 (224.0.0.12) 发现 DHCP 服务器

linux - 我怎样才能覆盖另一个 .bbappend

linux - DHCP 服务器是否可以给出比 DHCP 客户端请求的租用时间更长的租用时间?

未调用 Ubuntu 11.10 dhclient-enter-hook.d 脚本

powershell - DHCP 保留删除脚本

linux - 根据严重性将 kea-dhcp4 服务器日志推送到不同的文件

remote-desktop - 从远程 PC 上的 ipconfig/release 恢复