IPv4 UEFI+Legacy PXE server(centos7.6+centos8.4)
1. 虛擬機安裝Centos 7.6
2. 關閉防火牆,禁用防火牆,關閉selinux,重啟
a) systemctl stop firewalld
b) systemctl disable firewalld
c) sed -i “s#=enforcing#disabled#g” /etc/sysconfig/selinux
d) reboot
3. 配置yum源,進行各項服務安裝,以下以centos 7.6舉例
a) 虛擬機加載centos 7.6鏡像
b) mkdir /mnt/cdrom
c) mount /dev/sr0 /mnt/cdrom
d) cd /etc/yum.repos.d/
e) mkdir backup
f) mv Cent* backup
g) vim centos.repo 文件內容如下:
4. 安裝以下服務:
a) yum –y install dhcpd (為PXE分配IP)
b) yum –y install tftp tftp-server (為PXE提供配置文件獲取路徑)
c) yum –y install httpd (為PXE提供鏡像獲取地址)
d) yum –y install syslinux (為獲取legacy pxe啟動文件pxelinux.0)
5. 配置網卡靜態IPv4地址,需存在於后續dhcp設定的網段中,完成后重啟網絡服務
6. 配置dhcp IPv4服務,vim /etc/dhcp/dhcpd.conf
7. 配置tftp服務,tftp服務路徑在/var/lib/tftpboot下
8. Legacy pxe文件配置如下:
- cd /var/lib/tftpboot
- mkdir legacy_pxe uefi_pxe
- cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/legacy_pxe/
- cd legacy_pxe
- mkdir centos_7.6 centos_8.4 pxelinux.cfg 創建該三個文件夾
- cp /mnt/cdrom/isolinux/{vmlinuz,initrd.img} /var/lib/tftpboot/legacy_pxe/centos_7.6
- centos 8的啟動文件與centos7配置方式一致
- cp /mnt/cdrom/isolinux/vesamenu.c32 /var/lib/tftpboot/legacy_pxe
- cd /var/lib/tftpboot/legacy_pxe/pxelinux.cfg
- vim default
- chmod –R 777 /var/lib/tftpboot/legacy_pxe
9. UEFI文件配置如下
- cp /mnt/cdrom/EFI/BOOT/{grub.cfg, grubx64} /var/lib/tftpboot/uefi_pxe
- initrd.img與vmlinuz兩個文件配置方式與legacy pxe的配置方式一致
- 修改grub.cfg文件如下:vim /var/lib/tftpboot/uefi_pxe/grub.cfg
- chmod –R 777 /var/lib/tftpboot/uefi_pxe
10. 配置httpd服務
a) cd /var/www/html
b) mkdir centos_7.6 centos_8.4
c) mount <centos 7.6 iso文件> /var/www/html/centos_7.6
d) mount <centos 8.4 iso 文件> /var/www/html/centos_8.4
11. 啟動所有服務,設置所有服務開機自啟
systemctl start dhcpd
systemctl enable dhcpd
systemctl start tftp
systemctl enable tftp
systemctl start httpd
systemctl enable httpd
12. 驗證效果圖:
a) IPv4 Legacy PXE
b) IPv4 UEFI PXE
IPv6 UEFI PXE Server (centos 7.6 + centos 8.4)
1. IPv6 PXE不支持legacy boot,故而僅需配置IPv6 UEFI PXE即可
2. 相比於IPv4 PXE server不同之處在於,需配置dhcpd6服務,dhcpd6服務包含在dhcpd安裝包中,可直接修改其配置文件
3. dhcpd6的配置文件是 /etc/dhcp/dhcpd6.conf
4. 配置到此IPv6 DHCP僅支持IP分發,無法通信
5. 安裝radvd服務 yum –y install radvd 該服務可為IPv6 DHCP提供路由廣播
6. 修改radvd配置文件如下
7. 打開IPv6轉發功能,否則客戶端之間IPv6無法通信
ehco “net.ipv6.conf.all.forwarding = 1” >> /etc/sysctl.conf
8. 安裝xinetd yum –y install xinetd
9. 配置tftp支持IPv6,需修改以下文件,vim /etc/xinetd.d/tftp
10. UEFI PXE配置文件grub.cfg需修改如下:
11. 重啟相應服務
systemctl restart dhcpd6 (啟動dhcpd6服務需先配置同網段靜態IPv6地址,可參考IPv4 dhcp 網卡配置部分)
systemctl restart xinetd
systemctl restart radvd
systemctl restart tftp
systemctl restart httpd
12. 啟動效果圖