65 lines
1.7 KiB
Markdown
65 lines
1.7 KiB
Markdown
## PXE
|
|
|
|
Use `pxelinux-generator.sh` script to generate configs and populate the target path with pxe profiles according to mac-address from `mac-lists.csv` file.
|
|
|
|
**DHCP Setup**
|
|
|
|
```dhcp
|
|
authoritative;
|
|
ddns-update-style interim;
|
|
allow booting;
|
|
allow bootp;
|
|
allow unknown-clients;
|
|
ignore client-updates;
|
|
default-lease-time 14400;
|
|
max-lease-time 14400;
|
|
|
|
subnet 192.168.22.0 netmask 255.255.255.0 {
|
|
option routers 192.168.22.1; # lan
|
|
option subnet-mask 255.255.255.0;
|
|
option domain-name "ocp.lan";
|
|
option domain-name-servers 192.168.22.1;
|
|
# range 192.168.22.80 192.168.22.99;
|
|
next-server 192.168.22.1;
|
|
filename "pxelinux/pxelinux.0";
|
|
}
|
|
```
|
|
|
|
**Host File Structure**
|
|
```
|
|
/var/lib/tftpboot/
|
|
└── pxelinux
|
|
├── bg.png
|
|
├── boot.msg
|
|
├── fcos-37-pxe
|
|
│ ├── fcos-initramfs.x86_64.img
|
|
│ ├── fcos-live-kernel.x86_64
|
|
│ └── fcos-live-rootfs.x86_64.img
|
|
├── ldlinux.c32
|
|
├── libcom32.c32
|
|
├── libutil.c32
|
|
├── menu.c32
|
|
├── pxelinux.0
|
|
├── pxelinux.cfg
|
|
│ ├── 01-00-50-56-bb-f8-6d
|
|
│ ├── 01-52-54-00-1b-15-29
|
|
│ ├── 01-52-54-00-47-1a-1b
|
|
│ ├── 01-52-54-00-5e-7c-d6
|
|
│ ├── 01-52-54-00-70-f5-db
|
|
│ ├── 01-52-54-00-84-b1-11
|
|
│ ├── 01-52-54-00-a1-55-1a
|
|
│ ├── 01-52-54-00-c0-d0-de
|
|
│ ├── 01-52-54-00-f1-d1-63
|
|
│ ├── 01-ac-1f-6b-ef-83-74
|
|
│ └── default
|
|
├── rhcos-4.9-pxe
|
|
└── vesamenu.c32
|
|
```
|
|
|
|
### Dependencies
|
|
|
|
- initramfs and kernel file (Will make the handler later)
|
|
- PXE setup
|
|
- DHCP Config
|
|
- tftpboot
|