私のネットワークには、dhcpを実行するルーターがすでに存在し、このネットワークで起動します。pxeサーバーがdnsmasqを使用してO/Sを提供している間に、pxeを使用してネットワークから起動するディスクレスシステムを起動する必要がありますが、現在、このdnsmasqはdhcpサーバーもあるため、同じネットワーク上に複数のdhcpサーバーがあります
dnsmasqを使用してdhcpサーバーとして機能せずにpxeサーバーを実行する方法は?
これはdnsmasqへの私のコマンドラインです。どういうわけか、dhcp ip rangeを指定しないと、クライアントはIPを受信せず、起動しません。
dnsmasq --enable-tftp --tftp-root=/var/state/dnsmasq/root \
--dhcp-boot=pxelinux.0,"$IP",$IP \
--dhcp-range=192.168.1.10,192.168.1.252,proxy,2552.255.255.0,192.168.1.255 --log-dhcp \
--dhcp-option=3,192.168.1.1
BOOTPおよびTFTPサーバーが必要です。 「next-server」を現在のDHCPサーバー設定に設定してTFTPサーバーに設定することもできます。正しいBOOTPサーバーをTFTPサーバー(次のサーバー)に設定しないと、リモートブートを実行できません。
まず、クライアントネットワーク構成をセットアップし、PXE/TFTPサーバーに使用するサーバーを通知するためにBOOTP/DHCPサーバーが必要です。次に、PXEファイルをホストするためのPXE/TFTPサーバーが必要です。dnsmasqが処理するのは2つの異なるサービスです。
すでに配置されているDHCPサーバーとPXEサーバーが異なるPC上にあることを考えてみましょう。
この場合、PXEサーバーのDHCPコンポーネントはproxyDHCPとして構成する必要があり、メインDHCPとの競合は発生しません。
DnsmasqをproxyDHCPとして設定できます。
# This range(s) is for the public interface, where dnsmasq functions
# as a proxy DHCP server providing boot information but no IP leases.
# Any ip in the subnet will do, so you may just put your server NIC ip here.
dhcp-range=10.160.31.10,proxy