
У меня есть две виртуальные машины: главная ВМ и подчиненная ВМ (они не вложены друг в друга).
Оба созданы с использованием KVM и libvirt. (Использование Vagrant для моделирования виртуальной среды)
Я пытаюсь загрузить подчиненную ВМ через главную ВМ с помощью PXE. Однако при загрузке она зависает и ничего не делает.
Я думаю, что могут быть проблемы с MAC-адресом подчиненной виртуальной машины.
Как это исправить? И как MAC-адрес связан с загрузкой PXE? Разве он не загружается по сети? То есть ip-адрес?
Как я могу гарантировать, что между главным устройством и виртуальной машиной есть допустимое соединение для загрузки PXE. Поскольку я дал подчиненному устройству статический IP-адрес в Vagrantfile, но главное устройство не может его пинговать, но я предполагаю, что он не может его пинговать, если он не развернут с ОС, мое предположение верно?
Пожалуйста, помогите мне, я запутался и только начинаю работать с Linux.
решение1
Загрузка PXE клиентской машины включает в себя два компонента в сети. Сначала клиент запускает DHCP, чтобы получить себе IP-адрес. В зависимости от того, как он настроен, DHCP-сервер может использовать MAC-адрес клиента, чтобы решить, какой IP-адрес выдать (например, если у вас есть фиксированная таблица адресов IP<->MAC в конфигурации DHCP). Вместе с выбранным IP-адресом DHCP-сервер отправляет обратно параметры, сообщающие клиенту, как настроить процесс загрузки PXE — это IP-адрес сервера TFTPBOOT и имя файла для загрузки с него. Серверу TFTPBOOT все равно, какой MAC-адрес у клиента — он просто обслуживает любой запрошенный клиентом файл.
Вы упомянули, что при настройке клиентской машины вы дали ей статический IP-адрес. Это было бы довольно странно, поскольку загрузка PXE подразумевает использование DHCP для получения IP-адреса и данных сервера TFTPBOOT.