PXE Boot: что это такое и как работает загрузка по сети

Строка PXE-E61: Media test failure, check cable на чёрном экране при включении ноутбука — самый частый способ, которым пользователь впервые сталкивается с технологией PXE Boot: компьютер не нашёл загрузочный диск и попытался загрузиться по сети. Это не поломка сама по себе, а следствие того, что BIOS или UEFI перебрал все доступные устройства и в качестве последнего варианта обратился к сетевому адаптеру. Понимание того, что такое PXE Boot, помогает и устранить эту ошибку, и осознанно использовать технологию по назначению.

PXE (Preboot Execution Environment) — это среда предзагрузочного исполнения, позволяющая компьютеру запускать операционную систему или установщик не с локального диска, а с сервера в локальной сети. Технология встроена в прошивку сетевых адаптеров и материнских плат и активно применяется в корпоративной среде: массовое развёртывание Windows, бездисковые рабочие станции, диагностические утилиты. В статье разберём принцип работы, сценарии применения, настройку и типичные проблемы.

Как работает PXE: этапы загрузки по сети

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

Далее клиент обращается по протоколу TFTP к указанному серверу и скачивает небольшой загрузчик — например, pxelinux.0 или bootmgfw.efi для UEFI-систем. Этот файл запускается в памяти и уже подтягивает основную часть: ядро ОС, установочный образ Windows PE или диагностическую среду. Весь процесс происходит без участия жёсткого диска.

  • 🔌 DHCP — клиент получает IP-адрес и параметры загрузки (адрес сервера, имя файла).
  • 📡 TFTP — передача загрузчика и конфигурационных файлов по сети.
  • 💾 NBP (Network Boot Program) — загрузчик, который запускается в оперативной памяти.
  • 🖥️ Запуск среды — старт установщика ОС, WinPE или бездисковой системы.

Где применяется PXE Boot на практике

Основной сценарий — массовое развёртывание операционных систем. Системному администратору не нужно обходить сотни компьютеров с флешкой: достаточно включить машины, выбрать загрузку по сети, и установка Windows или Linux начнётся автоматически с сервера WDS (Windows Deployment Services), MDT, SCCM или решения на базе dnsmasq и Samba в Linux-инфраструктуре.

Второй сценарий — бездисковые рабочие станции, которые встречаются в учебных классах, колл-центрах и тонких клиентах. Также по PXE удобно запускать диагностические и сервисные инструменты: Memtest86+, антивирусные Live-среды, утилиты клонирования дисков вроде Clonezilla. Это избавляет от необходимости готовить загрузочные USB-носители под каждую задачу.

📊 Для чего вы используете (или планируете использовать) PXE Boot?
Установка ОС на несколько компьютеров
Диагностика и восстановление системы
Бездисковые рабочие станции
Столкнулся с ошибкой PXE и хочу её убрать

TFTP, DHCP и роль сервера: из чего состоит PXE-инфраструктура

Чтобы загрузка по сети работала, в локальной сети должны присутствовать минимум два компонента. Первый — DHCP-сервер, который выдаёт клиентам сетевые настройки и дополнительные опции: адрес сервера загрузки (опция 66) и имя загрузочного файла (опция 67). В ряде конфигураций эту роль берёт на себя отдельный ProxyDHCP, не конфликтующий с основным DHCP в сети.

Второй компонент — TFTP-сервер, хранящий загрузочные файлы. Протокол TFTP выбран из-за предельной простоты: его клиентская часть умещается в крошечную прошивку сетевой карты. Скорость передачи по TFTP невысока, поэтому по нему отдают только начальный загрузчик, а тяжёлые образы затем подтягиваются по HTTP, SMB или NFS — в зависимости от используемого загрузчика.

КомпонентНазначениеПримеры реализации
DHCP / ProxyDHCPВыдача IP и параметров загрузкиWindows DHCP, dnsmasq, ISC DHCP
TFTP-серверПередача загрузчика клиентуtftpd-hpa, WDS, Serva
Загрузчик NBPСтарт среды установкиpxelinux.0, iPXE, bootmgfw.efi
Хранилище образовДистрибутивы ОС и утилитыSMB-шара, HTTP, NFS
Служба развёртыванияАвтоматизация установкиWDS, MDT, SCCM, FOG

Как включить или отключить PXE в BIOS/UEFI

Для включения сетевой загрузки нужно войти в настройки BIOS или UEFI — клавиша входа зависит от производителя материнской платы или ноутбука и обычно указана на экране POST. Искомый параметр может называться Network Boot, PXE Boot, Boot from LAN или Network Stack. После активации в списке приоритета загрузки появляется пункт с сетевым адаптером, который перемещают на нужную позицию.

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

☑️ Подготовка к загрузке по PXE

Выполнено: 0 / 5

⚠️ Внимание: в режиме UEFI с включённым Secure Boot загрузка самосборных PXE-загрузчиков может блокироваться. Либо используйте подписанные загрузчики, либо временно отключите Secure Boot — и верните его после завершения работ.

Ошибки PXE: Media test failure и другие

Сообщение PXE-E61: Media test failure, check cable означает, что клиент не смог выполнить загрузку по сети. На домашнем компьютере причина почти всегда одна: система не нашла загрузочный диск (диск вышел из строя, отключён или стёрт загрузочный раздел) и перешла к следующему устройству в списке — сетевой карте. В корпоративной сети та же ошибка указывает на недоступность DHCP или TFTP-сервера, обрыв кабеля либо неверные опции 66/67.

Порядок диагностики простой. Сначала проверьте, видит ли BIOS/UEFI сам жёсткий диск или SSD — если нет, проблема в накопителе или его подключении, а не в PXE. Если диск виден, но не загружается, вероятно, повреждён загрузчик ОС. И только если PXE используется намеренно, проверяйте сеть: линк на порту, выдачу адреса по DHCP, доступность TFTP-сервера с другой машины.

⚠️ Внимание: если диск перестал определяться в BIOS, не спешите инициализировать или форматировать его — при важных данных сначала проверьте накопитель на другом компьютере или через USB-адаптер. Необратимые действия с разделами выполняйте только после резервного копирования.

PXE, iPXE и загрузка по HTTP: в чём разница

Классический PXE ограничен медленным TFTP и жёсткой привязкой к DHCP-опциям. Проект iPXE — открытая расширенная реализация сетевого загрузчика — умеет скачивать образы по HTTP/HTTPS, работать со скриптами, аутентификацией и даже загрузкой через интернет. Это заметно ускоряет доставку больших образов и упрощает инфраструктуру.

Многие современные UEFI-прошивки также поддерживают HTTP Boot на уровне самой прошивки, без классического PXE-стека. На практике выбор выглядит так: для стандартного развёртывания Windows достаточно WDS с обычным PXE, а для гибких сценариев и больших образов удобнее iPXE. Загрузчик iPXE можно встроить в цепочку обычного PXE: сначала по TFTP грузится маленький iPXE, а дальше всё идёт по быстрому HTTP.

Что такое chainloading (цепная загрузка)

Это приём, при котором один загрузчик запускает следующий. В контексте PXE сначала по TFTP скачивается компактный iPXE (несколько сотен килобайт), а он уже загружает меню и тяжёлые образы по HTTP. Так совмещают совместимость со старым PXE-стеком и скорость современных протоколов.

Безопасность сетевой загрузки

PXE изначально проектировался без механизмов аутентификации: любой компьютер в сети может запросить загрузочный образ, а любой отвечающий сервер — его выдать. В изолированной корпоративной сети это приемлемо, но в сегментах с посторонними устройствами открытый PXE-сервер способен стать каналом утечки образов или установки модифицированных систем.

Базовые меры защиты несложны: выделение отдельного VLAN для развёртывания, фильтрация по MAC-адресам на уровне DHCP, включённый Secure Boot на клиентах и ограничение доступа к TFTP/HTTP-каталогам. В чувствительных средах PXE-сервер поднимают только на время работ по развёртыванию, а не держат постоянно активным.

Частые вопросы о PXE Boot

Что означает ошибка PXE-E61 Media test failure?

Компьютер не смог загрузиться по сети: не получил ответ от DHCP/TFTP-сервера или не обнаружил сетевой кабель. На домашнем ПК это обычно следствие того, что система не нашла загрузочный диск и перешла к сетевой загрузке. Проверьте, определяется ли накопитель в BIOS.

Можно ли установить Windows по сети без флешки?

Да. Для этого поднимают сервер развёртывания (WDS, Serva, FOG или связку DHCP+TFTP+SMB на Linux), помещают туда дистрибутив и загружают целевой компьютер по PXE. Установка проходит так же, как с USB-носителя.

Нужен ли для PXE отдельный сервер?

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

Чем iPXE отличается от обычного PXE?

iPXE — открытый загрузчик с поддержкой HTTP/HTTPS, скриптов и расширенных сценариев. Он быстрее передаёт большие образы и гибче настраивается, при этом может запускаться через классический PXE.

Опасно ли держать PXE включённым на домашнем компьютере?

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