跳至主要内容

🌐 [高级] 跨子网 PXE 启动

🧩 概览

本指南介绍了更高级的 ggRock PXE 引导场景,涉及位于多个子网、VLAN 或网络段中的客户端。


🛠️ 问题

在复杂的网络环境中,客户端设备可能位于不同的子网上。默认情况下,PXE 广播不会跨越子网边界 — 这意味着多子网 PXE 引导需要额外的配置。


✅ 解决方案

1. 禁用默认网关处理

编辑 ggRock 配置文件,避免引导流量通过默认网关路由。

nano /opt/ggrock/app/App_Data/config.json

添加以下内容:

{
"ServerConfiguration": {
"BootDefaultGateway": "None"
}
}

💾 按 CTRL+X,然后按 Y,再按 Enter 保存并关闭。


2. 定义 PXE 的子网范围

创建一个自定义的 dnsmasq 配置文件:

nano /etc/dnsmasq.d/vlan.conf

添加以下行,将 IP 范围和网掩码替换为正确的值,以定义网络上 PXE 客户端的完整范围。目标是覆盖包含所有潜在 PXE 客户端的最广泛的地址范围:

dhcp-range=10.0.0.0,proxy,255.255.255.0

示例:

  • 如果您的 PXE 客户端在 10.0.0.0 – 10.0.0.255 中,请使用:
  dhcp-range=10.0.0.0,proxy,255.255.255.0
  • 如果您的 PXE 客户端跨越 10.0.0.0 – 10.0.1.255,请使用:
  dhcp-range=10.0.0.0,proxy,255.255.254.0
  • 如果您要覆盖 10.0.0.0 – 10.0.255.255,请使用:
  dhcp-range=10.0.0.0,proxy,255.255.0.0

📌 注意: 每个包含您的 PXE 客户端的子网或超网,仅使用一行 dhcp-range。proxy 关键字确保 dnsmasq 会提供 PXE 选项,而无需分配 IP(在另一个 DHCP 服务器提供地址时使用)。


3. 重启服务

重启 ggRock 和网络服务器以应用更改:

systemctl restart ggrock
systemctl restart nginx

💡 其他说明

  • 根据您的网络拓扑,可能需要自定义 dnsmasq 配置。
  • 确保在客户端和 PXE 服务器之间的每个第 3 层设备(例如路由器或 L3 交换机)上配置了 IP Helper 地址(或 DHCP 中继)。

🧠 工作原理:跨子网 PXE

  1. 客户端广播: 客户端向本地子网发送 DHCP/PXE 广播。
  2. IP Helper: 路由器拦截广播并将其作为单播转发给 PXE 服务器。
  3. 多跳路由: 如果客户端和服务器之间存在更多路由器,每个路由器也必须通过 IP Helper 转发。

🖼️ 示例图表

Client ---[Switch]---[Router 1]---[Router 2]---[PXE Server]
^ ^
IP Helper IP Helper
Configured Configured

✅ 路径中的每个路由器都必须配置为转发 PXE/DHCP 数据包,以确保成功引导。


🆘 需要帮助?

如果您在跨子网引导时仍有困难,别担心 — 我们会帮您解决!
通过我们的 💬 网络支持聊天联系我们,或发送电子邮件至 support@ggcircuit.com。

这篇文章对您有帮助吗?

Debian 系统中的更多文章

没有找到您要的内容?

与我们聊天或给我们发送电子邮件。聊天全天候开放,点击右下角的气泡即可。

给我们发邮件