ggRock 机器占用两倍的 IP 地址。ggRock 需要双倍 IP 地址配置
问题
每个系统在启动时消耗两个IP地址,因此如果地址空间太小,可能会耗尽IP租约空间。
解决方案 1
基于MAC地址,为每个客户端PC配置DHCP预留。
例子来自http://mustbegeek.com 支持文章Configure DHCP Reservation in Windows Server 2012 R2
要设置预留,从服务器管理器打开DHCP控制台。
输入预留名称、您要分配的IP地址和客户端的MAC地址。在本例中,我们想为MAC地址为3c-97-0e-1c-8a-55的客户端机器分配IP地址192.168.0.240。注意MAC地址不含任何特殊字符。点击添加按钮,然后关闭新建预留窗口
在Windows Server 2012 R2中配置DHCP预留

输入预留名称、您要分配的IP地址和客户端的MAC地址。在本例中,我们想为MAC地址为3c-97-0e-1c-8a-55的客户端机器分配IP地址192.168.0.240。注意MAC地址不含任何特殊字符。点击添加按钮,然后关闭新建预留窗口

要查看我们创建的预留列表,请转到该同一作用域下的预留文件夹。
这样当该特定客户端执行DHCP请求时,服务器将发送配置的IP地址。

解决方案 2
将DHCP池大小增加到至少是可用客户端数量的两倍。
例子来自Netgear支持How do I specify the pool of IP addresses assigned by my Nighthawk router?"
指定路由器分配的IP地址池:
- 从连接到网络的计算机或无线设备启动Internet浏览器。
- 输入[**http://www.routerlogin.net](https://www.routerlogin.net/)或](http://www.routerlogin.net或) [**http://www.routerlogin.com](https://www.routerlogin.com/)。**](http://www.routerlogin.com.**)
显示登录屏幕。
- 输入路由器用户名和密码。
显示基本主屏幕。
- 选择高级 > 设置 > LAN设置。

- 确保选中使用路由器作为DHCP服务器复选框。
- 指定路由器分配的IP地址范围:
a. 在起始IP地址字段中,输入范围中的最小数字。
该IP地址必须与路由器位于同一子网中。
b. 在结束IP地址字段中,输入IP地址范围末尾的数字,该数字应至少是计算机系统数量的两倍。
该IP地址必须与路由器位于同一子网中。
- 点击应用按钮。
您的设置已保存。
- 尝试重新启动系统。
解决方案 3
错开系统启动时间
使用ggRock的Wake-on-LAN功能以批次而不是全部一次启动(或重启)系统。
- 在您要启动的每个系统旁边的复选框中打上勾。

- 点击屏幕顶部的"打开"按钮。

- 重复此步骤直到所有需要的系统都已启动。
解决方案 4
减少DHCP租约时间。
- 如果可用,访问DHCP服务器设置,将DHCP租约的租约值调整为等于客户端的总启动时间的值。(例如,如果您的启动时间是60秒以启动到Windows,请将您的DHCP租约时间设置为60秒)。
- 尝试重新启动系统。
解决方案 5
使用基于端口的地址分配
这为您的网络交换机上的每个端口分配唯一的IP地址
例子来自Cisco DHCP Server Port-based Address Allocation Manual
- 访问充当DHCP服务器的交换机/路由器的命令行界面。
- 输入"enable",然后按Enter键,如果出现提示请输入密码。
- 输入"configure terminal",然后按Enter键。
- 输入"ip dhcp use subscriber-id client-id",然后按Enter键。
- 尝试重新启动系统。
解决方案 6
配置DHCP服务器仅为每个客户端分配一个地址。
注意:
第6步中的vendor-class-identifier需要根据您的独特配置进行调整,可能是以下之一:
- PXEClient:Arch:00000:UNDI:002001
- PXEClient
- PXE
- null
例子来自Microfocus OES KB Article 7002606
- 从屏幕顶部选择DHCP (OES Linux)选项卡
- 选择您要修改的服务对象
- 选中服务对象后,按屏幕顶部的创建对象按钮(立方体)。
- 从菜单中选择类,然后按确定
- 选择新创建的类进行修改。
- 在条件表达式部分中添加以下字符串:
match if substring(option vendor-class-identifier,0,3) = "PXE";
default-lease-time 1200;
max-lease-time 1200;
- 重启dhcp服务并测试。如果上面列出的vendor-class-identifier不适用于您的情况,请参阅下面的其他信息。
注意:可以直接将此类添加到dhcpd.conf中;但是,如果这样做,Java管理控制台将无法看到或修改它。
- 尝试重新启动系统。
解决方案 7
在Windows Server DHCP管理单元中配置DHCP策略
例子来自DHCP Server configuration on Windows Server 2012
右键单击您的IPv4地址池,然后点击"定义供应商类..."上下文菜单项。

点击"添加…"按钮添加新的供应商类。

在"新建类"对话框中,输入显示名称,如"PXE Client x86"
在"新建类"对话框中,输入PXE标识符,如"PXEClient:Arch:00000"(或根据您的基础设施选择其他)

在"新建类"对话框中,点击"确定"按钮。

在"DHCP供应商类"对话框中,点击"关闭"按钮。

在"DHCP"单元中展开"作用域"项。
右键单击策略子项
点击"新建策略..."上下文菜单项。

在"DHCP策略配置向导"窗口中,输入策略名称。
点击"下一步 >"按钮。

在"DHCP策略配置向导"中,点击"添加..."按钮。

在"添加/编辑条件"对话框中:
- 从"条件:"下拉列表中,选择"供应商类"
- 从"操作员:"下拉列表中,选择"等于"
- 从"值:"下拉列表中,选择您之前添加的DHCP供应商类。
- 在"追加通配符(*)"旁边放置勾号

在"添加/编辑条件"对话框中,点击"添加"按钮。

在"添加/编辑条件"对话框中,点击"确定"按钮。

在"DHCP策略配置向导"窗口中,点击"下一步 >"按钮。

注意:
点击"下一步 >"按钮和/或不要配置IP预留或DHCP选项。
在"DHCP策略配置向导"对话框中,点击"完成"按钮。

新添加的策略现在显示在DHCP管理单元中:
其他信息

核心问题是当客户端进行PXE启动时,通常不会提供客户端标识符。当操作系统(Windows)启动时,它会提供客户端标识符。这导致每个客户端消耗两个IP地址。如果DHCP池较小,或者系统多次重启,这可能导致地址空间的IP租约耗尽,导致系统启动失败。此问题有许多解决方案,但通常它们要么专注于识别PXE启动客户端并分别处理它们,要么通过扩展可用地址的数量来解决。
更新于: 24/04/2026
谢谢!
