Linux / BSD上是否有与“netsh dhcp”相同的内容?

我有一个在Windows 2003 Server上运行的DHCP服务器。 我想查询租赁数据库以查找特定IP租约的详细信息。 我如何从Linux远程执行此操作?

Windows XP上有这个命令:

netsh dhcp server <type.srvIP.here> scope ssss show client | find "clientIP" 10.1.1.100 - 255.255.255.0 -10-12-34-56-78-9a - NEVER EXPIRES -D 

我寻求IP / MAC地址与Windows dhcp服务器2003上的租约之间的通信。

为什么不尝试Winexe ? 它授予您从类Unix系统访问Windows控制台的权限。

我不相信有一个工具可以为* nix平台远程执行此操作。 大多数文档会告诉您直接在服务器上读取dhcpd.leases文件,并从那里手动收集您想要的信息。 你总是可以写一个perl(或其他类似的)脚本来做到这一点,但我还没有find一个可用的。

无论DHCP服务器是什么O / S,都必须将租约存储在DHCP客户端上,即使只知道何时必须续订租约。 租约的存储取决于你的DHCP客户端和你的操作系统。

在OpenBSD上,租赁logging存储在/var/db/dhclient.lease.interfacename中。 要看到它,你可以使用“猫”和尾巴(只显示最后一个租约):

 benoit@alix [/var/db] sudo cat dhclient.leases.vr2 | tail -14 Password: lease { interface "vr2"; fixed-address nnn.nnn.nnn.nnn; server-name "dhcp.server.fqdn"; option subnet-mask nnn.nnn.nnn.nnn; option routers nnn.nnn.nnn.nnn; option broadcast-address nnn.nnn.nnn.nnn; option dhcp-lease-time 604800; option dhcp-message-type 5; option dhcp-server-identifier nnn.nnn.nnn.nnn; renew 3 2009/9/30 08:39:39; rebind 5 2009/10/2 23:39:39; expire 6 2009/10/3 20:39:39; } 

看看你的操作系统的手册页或在你的机器上运行的DHCP客户端,它必须包含这个信息。

我不想在* nix dhcpd服务器上读取租约,而是在Windows 2003 dhcp服务器上读取租约

你有没有考虑过在Windows上设置一个SSH服务器? 一旦安装完毕,您只需简单地使用ssh并运行netsh即可。

我无法安装任何东西,因为它是我的域控制器。

那么你可能运气不好。

关于我能想到的唯一的其他事情就是要求Windowspipe理员设置一个使用“netsh”定期将dhcp数据库转储到您可以查看的文件的脚本。