如何在 Virtualbox CentOS7 VM 中配置 DHCP 服务器以进行 Cobbler PXE 启动?

如何在 Virtualbox CentOS7 VM 中配置 DHCP 服务器以进行 Cobbler PXE 启动?

我对 Virtual Box 很陌生,并尝试模仿补鞋匠虚拟机中的 PXE 引导网络安装

尝试将 VM1 配置为 PXE/DHCP 服务器并将 VM2 作为客户端,以便在网络启动时从 VM1 DHCP 服务器获取 IP 以进行网络安装。

但继续从安装了虚拟盒的主机获取IP。因为 VM2 无法找到 VM1 中存在的 pxeboot 文件。

VM1 dhcp 状态片段:

Listening on LPF/enp0s3/08:00:27:86:b1:c6/192.168.43.0/24
Aug 09 19:03:23 localhost.localdomain dhcpd[3305]: Sending on   LPF/enp0s3/08:00:27:86:b1:c6/192.168.43.0/24
Aug 09 19:03:23 localhost.localdomain dhcpd[3305]: Sending on   Socket/fallback/fallback-net
Aug 09 19:03:23 localhost.localdomain systemd[1]: Started DHCPv4 Server Daemon.

VM1 dhcp 配置文件

ddns-update-style interim;

allow booting;
allow bootp;

ignore client-updates;
set vendorclass = option vendor-class-identifier;

option pxe-system-type code 93 = unsigned integer 16;

subnet 192.168.43.0 netmask 255.255.255.0 {
     option routers             192.168.43.1;
     option domain-name-servers 192.168.43.1;
     option subnet-mask         255.255.255.0;
     range dynamic-bootp        192.168.43.100 192.168.43.254;
     default-lease-time         21600;
     max-lease-time             43200;
     next-server                192.168.43.146;
     class "pxeclients" {
          match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
          if option pxe-system-type = 00:02 {
                  filename "ia64/elilo.efi";
          } else if option pxe-system-type = 00:06 {
                  filename "grub/grub-x86.efi";
          } else if option pxe-system-type = 00:07 {
                  filename "grub/grub-x86_64.efi";
          } else if option pxe-system-type = 00:09 {
                  filename "grub/grub-x86_64.efi";
          } else {
                  filename "pxelinux.0";
          }
     }

}

# group for Cobbler DHCP tag: default

group {
    host centostest.mydomain.com-net0 {
        hardware ethernet 08:00:27:7f:aa:f1;
        fixed-address 192.168.43.120;
        option host-name "centostest.mydomain.com";
        option subnet-mask 255.255.255.0;
        option routers 192.168.43.1;
        filename "/pxelinux.0";
        next-server 192.168.43.146;
    }
}

VM1 适配器设置 - 服务器

在此输入图像描述

VM2 适配器设置 - 客户端 在此输入图像描述

VM2 网络启动时,它获得 IP 192.168.43.17,而不是 vm1 dhcp conf 文件中提供的 192.168.43.120

在此输入图像描述

如何解决这个问题?

答案1

我建议设置“桥接”以外的网络。 DHCP 通过广播工作,因此子网上的任何 DHCP 服务器都可以响应。为了防止这种情况,您看到了自己的子网。

在文件 > 主机网络管理器中,您将看到默认的“VirtualBox 仅主机以太网适配器”。您可以取消选中“DHCP 服务器”框来关闭内置 DHCP 服务器。然后,将您的 DHCP 服务器虚拟机和您正在 PXE 引导的计算机连接到仅主机适配器而不是桥接适配器。

相关内容