Почему при настройке dnsmasq для загрузки PXE мне нужно изменить undionly.kpxe на undionly.0?

Я настроил dnsmasq для загрузки PXE клиентов iPXE, направив их на HTTP-сервер ( matchbox в этот случай). Я также настроил его для работы со старыми клиентами PXE, поместив копию iPXE в корень моего TFTP-сервера, чтобы позволить этим старым клиентам загружаться по цепочке на iPXE. Для этого я использовал следующую строку в моем dnsmasq.conf:

dhcp-boot=tag:!ipxe,undionly.kpxe

Я поместил файл undionly.kpxe в корень моего TFTP-сервера, однако в некоторых местах говорится, что вам необходимо создать символическую ссылку или скопировать undionly.kpxe в undionly.kpxe.0 или unionly.0 ( CoreOS ], FOG Wiki ).

Во-первых, почему dnsmasq не ищет точное имя файла, которое вы указали в конфигурации, а во-вторых, какое из них правильное: undionly.0 или undionly.kpxe.0?

0
задан 9 November 2017 в 01:18
1 ответ

имя файла, заканчивающееся на .0, актуально только для версий dnsmasq до 2.76. из журнала изменений 2.76:

Незначительное изменение семантики "basename" в --pxe-service. Историческое поведение всегда было что фактическое имя файла, загруженное с TFTP-сервера является . где - целое число, которое соответствует параметру уровня, предоставленному клиентом. Непонятно, какова функция «слоя» фактически находится в протоколе PXE, а на практике уровень всегда равен нулю, поэтому имя файла .0 Новое поведение такое же, как и старое, за исключением случаев, когда включает суффикс файла, и в этом случае суффикс слоя больше не добавляется. Это позволяет разумного достаточно для использования, а не бессмысленное ".0". Только в том маловероятном случае, если вы иметь конфигурацию с базовым именем, у которой уже есть суффикс, это несовместимое изменение, поскольку файл загруженный изменится с name.suffix.0 на просто name.suffix

, если вы используете версию dnsmasq после 2.76, просто используйте фактическое имя файла. если вы используете предыдущую версию, используйте "filename" .0

1
ответ дан 4 December 2019 в 16:05

Теги

Похожие вопросы