pxelinux и Windows Deployment Services
Jul. 19th, 2013 12:09 amДокументация на syslinux-6.01 предлагает такой пример для выбора WDS из PXE меню:
Так вот такой способ не работает из-за баги в 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 сервера, то всё работает:
UPD а если PXE клиент в DHCP запросе не запрашивает option 6 (например так делает реализация PXE в Oracle VirtualBox), то он ее и не получит в DHCP ACK, поэтому информация о DNS серверах не будет доступна pxelinux-у, и всё вышеописанное работать не будет.
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-у, и всё вышеописанное работать не будет.