내 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 서버 주소를 지정하는 두 가지 방법이 있습니다.
- 레거시 BOOTP 필드 사용(DHCP는 BOOTP의 확장이므로)
- 또는 동일한 목적을 달성하려면 최신 DHCP 옵션을 사용하십시오.
분명히 dnsmasq
후자의 방법이 기본적으로 사용됩니다... 그리고 새로운 스타일 옵션을 약간 잘못 처리하는 상당히 현대적인 PXE 펌웨어를 발견했습니다.
(제 기억이 맞다면 2011년쯤에 만들어진 인텔 네트워크 카드가 내장된 마더보드였죠. 맞지 않는 곳에 0x00바이트를 추가한 것 같아요. 같은 오류라면 PXE 펌웨어에서 Resolve "192.168을 시도하는 걸 볼 수도 있습니다." IP 주소를 직접 사용하는 대신 .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 성공
내 솔루션입니다.