2013-07-19

victor_sudakov: (Default)
2013-07-19 12:09 am

pxelinux и Windows Deployment Services

Документация на syslinux-6.01 предлагает такой пример для выбора WDS из PXE меню:

label WDS
 menu LABEL Windows Deployment Service
 com32 pxechn.c32
 append 10.1.1.4::boot\x86\wdsnbp.com -W


Так вот такой способ не работает из-за баги в pxelinux, в результате которой pxechn.c32 не понимает, что 10.1.1.4 является IP адресом, пытается его резолвить как имя в DNS, потом искать локальный файл с именем "10.1.1.4::boot\x86\wdsnbp.com", а потом возвращает ошибку "pxechn.c32: Attempting to load '10.1.1.4::boot\x86\wdsnbp.com': 2:No such file or directory"

Workaround. Если указать не адрес, а DNS имя WDS сервера, то всё работает:

label WDS
 menu LABEL Windows Deployment Service
 com32 pxechn.c32
 append wds01.your.domain.ru::boot\x86\wdsnbp.com  -W


UPD а если PXE клиент в DHCP запросе не запрашивает option 6 (например так делает реализация PXE в Oracle VirtualBox), то он ее и не получит в DHCP ACK, поэтому информация о DNS серверах не будет доступна pxelinux-у, и всё вышеописанное работать не будет.