私のPXEサポートターゲットコンピュータはdnsmasqからリースを受け取り、メッセージを印刷します。
UD: 192.168.10.123
これは私のdnsmasq / tftpサーバーのアドレスですが、「スタートアップサーバーが見つかりません」というメッセージが表示されたら、もう何もできません。
これは私のdnsmasqファイルです。
port=0
domain-needed
bogus-priv
interface=eth1
listen-address=192.168.10.123
bind-interfaces
domain=chacha.mo
dhcp-range=eth1,192.168.10.200,192.168.10.207,255.255.255.0,8h
dhcp-option=3,192.168.10.1
dhcp-option=6,192.168.10.2
dhcp-option=42,192.168.10.1
enable-tftp
tftp-root=/var/lib/tftpboot
dhcp-boot=pxelinux.0
pxe-prompt="Press F8 for PXE Network boot.", 20
pxe-service=x86PC, "Install CentOS via PXE", pxelinux
別のサーバー@ 192.168.10.3にCentOS 7.6.1810インストールツリーが設定されています。 virt-installを使用してこのhttp install distを正常に使用しました。
これは私の/var/lib/tftpboot/pxelinux.cfg/defaultファイルです。
default menu.c32
prompt 0
timeout 300
ONTIMEOUT local
menu title ########## PXE Boot Menu ##########
label 1
menu label ^1) Install CentOS 7.6 x64 with Local Repo using Kickstart
kernel vmlinuz
append initrd=initrd.img inst.repo=http://192.168.10.3/pub/centos/7.6.1810/os/x86_64/ inst.ks=http://192.168.10.3/pub/kicker.ks inst.ks.sendmac
フォアグラウンドでdnsmasqを起動します。エラーが表示されませんでした。
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 available DHCP range: 192.168.10.200 -- 192.168.10.207
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 vendor class: PXEClient:Arch:00000:UNDI:002001
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 DHCPREQUEST(eth1) 192.168.10.202 00:1b:21:6c:00:93
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 tags: eth1
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 DHCPACK(eth1) 192.168.10.202 00:1b:21:6c:00:93
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 requested options: 1:netmask, 2:time-offset, 3:router, 4, 5,
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 requested options: 6:dns-server, 11, 12:hostname, 13:boot-file-size,
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 requested options: 15:domain-name, 16:swap-server, 17:root-path,
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 requested options: 18:extension-path, 22:max-datagram-reassembly,
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 requested options: 23:default-ttl, 28:broadcast, 40:nis-domain,
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 requested options: 41:nis-server, 42:ntp-server, 43:vendor-encap,
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 requested options: 50:requested-address, 51:lease-time, 54:server-identifier,
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 requested options: 58:T1, 59:T2, 60:vendor-class, 66:tftp-server,
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 requested options: 67:bootfile-name, 128, 129, 130, 131, 132,
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 requested options: 133, 134, 135
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 next server: 192.168.10.123
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 broadcast response
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 sent size: 1 option: 53 message-type 5
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 sent size: 4 option: 54 server-identifier 192.168.10.123
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 sent size: 4 option: 51 lease-time 8h
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 sent size: 11 option: 67 bootfile-name pxelinux.0
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 sent size: 4 option: 58 T1 4h
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 sent size: 4 option: 59 T2 7h
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 sent size: 4 option: 28 broadcast 192.168.10.255
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 sent size: 7 option: 15 domain-name chacha.mo
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 sent size: 24 option:210 66:74:70:3a:2f:2f:31:39:32:2e:31:36:38:2e...
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 sent size: 26 option:209 2f:76:61:72:2f:6c:69:62:2f:74:66:74:70:62...
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 sent size: 4 option: 42 ntp-server 192.168.10.1
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 sent size: 4 option: 6 dns-server 192.168.10.2
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 sent size: 4 option: 3 router 192.168.10.1
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 sent size: 4 option: 1 netmask 255.255.255.0
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 sent size: 9 option: 60 vendor-class 50:58:45:43:6c:69:65:6e:74
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 sent size: 17 option: 97 client-machine-id 00:00:00:00:00:00:00:00:00:00:00:00:1f:d0...
Jun 9 20:07:01 dnsmasq-dhcp[21523]: 577503379 sent size: 79 option: 43 vendor-encap 06:01:03:08:07:80:00:01:c0:a8:0a:7b:09:19...
答え1
DHCPプロトコルには、PXEブートファイル名とそれをロードするTFTPサーバーアドレスを指定する2つの方法があります。
- レガシーBOOTPフィールドの使用(DHCPはBOOTPの拡張なので)
- または、同じ目的を達成するために最新のDHCPオプションを使用してください。
明らかにdnsmasq
、後者の方法は基本的に使用されています...そして、新しいスタイルオプションを少し誤って処理するかなり現代的なPXEファームウェアを見つけました。
(私の記憶が正しいなら、2011年ごろに作られたIntelネットワークカードが内蔵されたマザーボードでした。合わないところに0x00バイトを追加したようです。アドレスを直接使用する代わりに、.10.123\0"をDNS名として使用してください。
設定に次の行を追加してみてくださいdnsmasq
。
dhcp-no-override
マニュアルページによると、「簡単で安全な」方法である以前のdnsmasq
方法を使用するように指示します。dnsmasq
答え2
pxe-bootサーバーのcentos8バージョンでも同じ問題が発生しました。私の問題は、UDPポートが開いていないことです。
[root@kickstart /]#firewall-cmd --add-port={4011/udp,69/udp} --永久成功 [root@kickstart /]#firewall-cmd --reload 成功
私の解決策です。