Powershell - 将 DHCP 范围选项设置为预定义值

Powershell - Set DHCP scope option to a predefined value

我正在寻找一种在作用域上设置 DHCP 作用域选项的方法,以便在更改服务器的预定义默认值时,它会在作用域上发生变化。

当我使用 MMC Snap In 打开一个选项时(它有一个预定义的选项值),它是这样工作的,所以我知道这是可能的,我只是不知道是否可以使用 POWERSHELL .

有人知道在 powershell 中是否有直接或间接实现此目的的方法吗?

澄清一下,如果我在 MMC 管理单元中选中范围选项 042 的复选框,它会自动将值设置为,比如说“1.2.3.4”。如果我在服务器的预定义选项列表中更改该值,它也会更改范围。 如果我使用 set-dhcpserverv4optionvalue 将同一选项设置为“1.2.3.4”,然后更改预定义选项,则范围保持在“1.2.3.4”。

你的解释有点含糊,但我的理解是你是:

  1. 启用具有预定义值的 scope level 选项(继承自 server level)。
  2. 更改 服务器级别 预定义值,然后更改 范围级别 的值。
  3. 使用 Set-DhcpServerv4OptionValue -ScopeId 更改 范围级别 值。
  4. 更改服务器级别预定义值,然后不会更改范围级别值。

如果我的解释是正确的,那么这是预期的行为。您可能会像对待级联样式表或组策略对象一样对待它:最具体的设置获胜。

在范围级别设置 后,它不再从服务器级别继承其值。

如果您在未指定 -ScopeId 的情况下使用 Set-DchpServerv4OptionValue,那么它将设置 服务器级别 值。

根据评论编辑:

现在我更好地理解了,我认为 PowerShell cmdlet 中缺少此功能。您可以设置服务器级别的默认值,也可以在作用域上设置显式值,但我看不到任何方法可以在使用默认值而不是显式值的作用域上启用选项。

DHCP cmdlet 是底层 CIM/WMI 对象的相当薄的包装器,因此可能可以通过 CIM/WMI 调用,但我不知道如何临时执行。