Настройка TFTP для загрузки ОС с PXE

Вопрос или проблема

Я пытаюсь сделать сеть через PXE. Я почти закончил, но у меня есть проблема. Когда я загружаю свой клиент через PXE, я вижу на экране клиента следующее: PXE-E11: таймаут ARP PXE-E38: TFTP не может открыть соединение.

Есть несколько попыток в Интернете исправить это, но ничего конкретного, поэтому я опишу свой случай подробнее.

В файле /etc/default/atftpd я изменил
USE_INETD=true
на
USE_INETD=false,
затем в файле /etc/default/tftpd-hpa

Я указал TFTP_DIRECTORY=”/srv/tftp”, потому что srv/tftp был в конце файла /etc/default/atftpd.

Затем я запустил sudo /etc/init.d/atftpd start

И в последнюю очередь я набрал sudo mount -o loop /home/tux/ubuntu16-Desktop.iso /srv/tftp/ubuntu/ и закончил с tftp, но это не работает.

Есть идеи, как это исправить?

Я бы сказал, проверьте конфигурацию DHCP для этой подсети. Предполагая, что вы запускаете свой DHCP-сервер отдельно от TFTP-сервера, у вас должен быть установлен next-server на правильный адрес TFTP (или DNS-запись, при условии, что option domain-name-servers также установлена правильно в DHCP). Возможно, имеет смысл проверить, что параметр filename тоже установлен надлежащим образом.

Кроме того, проверьте, чтобы на директории TFTP были установлены правильные разрешения.

Ответ или решение

Установка TFTP для загрузки ОС через PXE

Настройка PXE (Preboot eXecution Environment) и TFTP (Trivial File Transfer Protocol) для сетевой загрузки операционной системы может вызывать ряд сложностей, особенно если возникают такие ошибки, как PXE-E11 (ARP timeout) и PXE-E38 (TFTP cannot open connection). В этой статье мы рассмотрим основные шаги для успешного выполнения этой задачи, а также предложим рекомендации по устранению возникающих проблем.

Шаг 1: Конфигурация TFTP-сервера

Для начала убедитесь, что ваш TFTP-сервер правильно настроен. Неправильная конфигурация может стать причиной многих проблем. В вашем случае вы изменили параметры в файле /etc/default/atftpd. После того, как вы установили USE_INETD=false, у вас должен быть корректный путь к директории TFTP.

В файле /etc/default/tftpd-hpa укажите:

TFTP_DIRECTORY="/srv/tftp"

После этого проверьте, что директория /srv/tftp существует и имеет необходимые права доступа. Права должны позволять TFTP-серверу читать и записывать файлы в этой директории. Вы можете установить права через:

sudo chmod -R 777 /srv/tftp

Однако, в производственной среде лучше настроить более строгие права доступа.

Шаг 2: Конфигурация DHCP

Если вы используете отдельный DHCP-сервер, необходимо убедиться, что параметры DHCP указаны правильно. Проверьте файл конфигурации вашего DHCP-сервера (например, /etc/dhcp/dhcpd.conf). Вам необходимо добавить или изменить следующие параметры:

option domain-name "example.com";
option domain-name-servers 8.8.8.8; # или ваш локальный DNS
next-server <IP-адрес вашего TFTP-сервера>;
filename "pxelinux.0"; # или другой загрузочный файл

Не забудьте заменить <IP-адрес вашего TFTP-сервера> на фактический адрес. Параметр filename должен совпадать с именем файла загрузки, который находится в каталоге TFTP.

Шаг 3: Запуск и проверка TFTP

Необходимо перезапустить ваш TFTP-сервер, чтобы изменения вступили в силу:

sudo systemctl restart atftpd

Или, если вы используете другой менеджер:

sudo /etc/init.d/atftpd restart

Теперь можно проверить, работает ли TFTP-сервер. Используйте утилиты, такие как tftp или telnet, для тестирования подключения:

tftp <IP-адрес вашего TFTP-сервера>
tftp> get <имя_файла>

Если соединение удалось установить, это означает, что TFTP-сервер работает корректно.

Шаг 4: Проверка сети и разрешения проблем

Проблемы с ARP timeout указывают на возможные проблемы в сети. Убедитесь, что клиент может видеть TFTP-сервер. Проверьте следующее:

  • Клиент и TFTP-сервер находятся в одной сети.
  • Нет фильтров на уровне маршрутизаторов или брандмауэров, блокирующих порты TFTP (по умолчанию UDP 69).
  • Используйте пинг, чтобы проверить доступность TFTP-сервера с клиентской машины.

Шаг 5: Подключение образа ОС

Если вы монтируете ISO-образ, убедитесь, что он правильно установлен. Проверьте, что файлы, необходимые для загрузки, находятся в каталоге /srv/tftp/ubuntu/. Обычно для PXE-загрузки вам может потребоваться файл загрузчика, такой как pxelinux.0 или аналогичный.

Заключение

Настройка PXE и TFTP для загрузки ОС требует внимания к деталям. Проверьте все шаги, начиная с конфигурации сервера до прав доступа и сетевых настроек. Если проблемы сохраняются, рекомендуется проводить диагностику каждой составляющей: TFTP-сервера, DHCP, сети и прав доступа.

Следуя этим рекомендациям, вы сможете минимизировать проблемы и обеспечить успешную загрузку операционной системы через PXE.

Оцените материал
Добавить комментарий

Капча загружается...