如何在 Windows 2008 服务器上保存 DHCP 选项 43?

如何在 Windows 2008 服务器上保存 DHCP 选项 43?

我需要从 Windows 2008 服务器(或任何其他 Windows 版本,只要在参数请求列表(代码 55)中指定了代码 43)上的 DHCP 服务器(Linux ISC DHCP 服务器)检索 DHCP 选项 43。

我可以在 Windows 上使用 Wireshark 在 DHCP Offer 数据包中看到所需的值

Option: (t=43; l=30) Vendor-Specific Information
  Option: (43) Vendor-Specific Information
  Length: 30
  Value: xxxxxxxxxxxxxxxxxxxxxxxxx (some hex number)

转换为字符串的十六进制值给了我想要的信息。

但我不知道将它存储在磁盘上的哪里/如何存储?

我以为我可以在做的时候看到它

ipconfig /all

有谁知道这是怎么做到的吗 ?

答案1

您在 DHCP 服务器上,对吗?

尝试netsh dhcp server show optionvalue

答案2

您正在寻找的信息存储在以下寄存器中:

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\Tcpip\Parameters\Interfaces\{ID}

{ID} 取决于您的机器。我找到它的方法是打开 regedit 并查找条目“DhcpInterfaceOptions”。

这个 ruby​​ 上的小代码将为您选择注册表”

    require 'win32/registry'

    keyname= "SYSTEM\\ControlSet001\\services\\Tcpip\\Parameters\\Interfaces\\{A0ACCA78-1CB2-46BD-B2E0-B0E791ABFC3B}"
    access = Win32::Registry::KEY_ALL_ACCESS
    Win32::Registry::HKEY_LOCAL_MACHINE.open(keyname) do |reg|;
      key = reg.read_bin('DhcpInterfaceOptions').unpack('H*')
      puts key   
    end

相关内容