DHCPとは別の複数のPXEサーバー

DHCPとは別の複数のPXEサーバー

私はエンタープライズ環境で働いています。多くの拠点があり、それぞれに多くのサブネットがあり、Linux と Windows の両方があらゆる場所で使用されています。DHCP サーバーはすべての中心に配置されています (正確には、スコープの IP の半分をそれぞれ処理する 2 つのサーバーがあります)。

今、私はすべての場所で本格的な回復に備えたいと思っています。基本的に、DHCP サーバーはそのままにしておきたいのですが、複数の PXE サーバーにクエリを実行したいと考えています。PXE サーバーに n 個の異なる IP ヘルパー アドレスを追加できることがわかります。そのため、すべてのサーバーに DHCP 要求を送信できるはずです。

多くの場合、ローカル PXE サーバーを起動し、すべてのサブネットでその事前割り当て IP アドレスを IP ヘルパーの 1 つとして使用することになると思います。ただし、そのサーバーが稼働するまでは、その場所で中央の PXE サーバーを使用するようにしたいと思います。

しかし、PXE サーバーを IP アドレスではなく、bootp サーバーとファイル名のみを配布するように構成するにはどうすればよいでしょうか。PXE サーバーは DHCP と TFTP の両方を実行していると想定し、PXE DHCP サーバーがオプション 66+67 のみを送信するようにしたいと思います。

このプロセスの説明を見つけるのは困難です。PXE ブートデバイスは、IP を取得した後、DHCP 検出パケットを送信し続けると思われます。しかし、66+67 のみで応答する必要があるパケットをどのように識別すればよいのでしょうか。また、それをどのように構成すればよいのでしょうか。

最終的には、Linux と Windows の両方の PXE サーバーを一元的に管理し、一方のプラットフォームが攻撃を受けた場合に、もう一方のプラットフォームから PXE ブートできるようにします。

答え1

現在の DHCP インフラストラクチャには proxyDHCP サーバーのみを追加する必要があります。PXE クライアントが DHCPDISCOVERY ブロードキャスト パケットを送信すると、DHCP サーバーと proxyDHCP サーバーの両方にヒットします。DHCP サーバーは通常の IP アドレスと DHCP オプションを提供します。proxyDHCP は TFTP サーバー IP と NBP (ネットワーク ブート プログラム) の名前を提供します (クライアントが PXE デバイスでない場合、proxyDHCP は何もしません)。両方のサーバーがそれぞれ 1 つの DHCPOFFER を送信し、PXE クライアントは対応する 2 つの DHCPREQUEST を送信して、対応する 2 つの DHCPACK を受信します。PXE クライアントは受信した情報を集め、TCP/IP スタック (IP アドレス/DNS/デフォルト ゲートウェイなど) と PXE 情報 (TFTP サーバー IP と NBP 名) を設定し、NBP を TFTP してそこからブートするブート シーケンスに進みます。

オプション66+67は使用しないでください。DHCPフィールド「file」と「next-server」を使用する方が適切です。proxyDHCPのみがポート4011を使用します。詳細については、PXE標準を参照してください。

関連情報