개요
Windows Server의 Windows Deployment Services 환경에서 최신 EFI 지원 마더보드에서는 정상적으로 PXE 부팅이 수행되지만, Legacy BIOS로 PXE 부팅을 수행하는 구형 마더보드에서는 PXE 부팅이 정상적으로 수행되지 않는 경우가 발생합니다.
이는 WDS의 기본 부팅 파일이 EFI용 파일을 가르키고 있기 때문입니다. Legacy BIOS에서도 PXE 부팅을 정상적으로 수행 할 수 있게 하려면, DHCP 서버 정책을 통해 장치가 EFI, BIOS냐에 따라 부팅 파일을 다르게 지정해주어야 합니다.
이 문서는 WDS와 DHCP가 같은 서버에서 실행되고 있는 환경 기준으로 작성되었습니다.
WDS 서버 DHCP 정책 구성하기
Windows Deployment Services 콘솔에서 대상 서버를 우클릭하여 Properties 항목을 클릭합니다.
DHCP 항목의 Do not listen on DHCP ports, Configure DHCP options to indicate that is also a PXE Server 항목을 체크합니다.
DHCP Vendor Class 지정하기
DHCP Vendor Class는 클라이언트가 Legacy BIOS를 사용하는지 EFI를 사용하는지 구분할 수 있게 합니다.
DHCP 콘솔에서 대상 서버를 우클릭하여 Define Vendor Classes 항목을 클릭합니다.
Add를 눌러 새 Vensor Class를 아래 표에 맞게 추가합니다.
Display Name | ASCII |
PXEClient (UEFI x64) | PXEClient:Arch:00007 |
PXEClient (UEFI x86) | PXEClient:Arch:00006 |
PXEClient (BIOS x86 & x64) | PXEClient:Arch:00000 |
ID, Binary는 입력 할 필요가 없이, 자동으로 ASCII 문자에 맞게 입력됩니다.
ASCII 값은, 대소문자를 구분합니다.
DHCP 정책 구성하기
대상 서버의 IPv4 => Policies 우클릭 한 후 New Policy 항목을 클릭하여 아래 표에 맞게 새 정책을 만듭니다.
모든 정책의 Option 66은 WDS 서버의 FQDN 또는 IP 주소로 지정하세요.
Policy Name | Conditions | Option 60 | Option 67 |
PXEClient (UEFI x64) | PXEClient (UEFI x64) | PXEClient | boot\x64\wdsmgfw.efi |
PXEClient (UEFI x86) | PXEClient (UEFI x86) | PXEClient | boot\x86\wdsmgfw.efi |
PXEClient (BIOS x86 & x64) | PXEClient (BIOS x86 & x64) | 설정 안함 | boot\x64\wdsnbp.com |
아래 과정을 위 표에 맞게 반복합니다.
DHCP 서버 옵션에서 Option 43이 지정 되있는 경우, Legacy BIOS 환경에서 MTFTP에서 넘어가지 않고 부팅이 취소 될 수 있습니다. 이 경우에는 'PXEClient (BIOS x86 & x64)' 정책을 설정 할 때에 Option 43번에 체크 후 내용을 비워 43번 옵션이 아무 값도 가지지 않도록 하여 해결 할 수 있습니다.
정책 이름 (Policy Name)을 지정합니다.
정책 조건 (Conditions)에서 Add를 눌러 조건을 추가합니다.
위의 표에 맞게 정책 조건을 선택하고 Append wildcard(*)에 체크 후 Add를 눌러 조건을 추가하고 OK를 눌러 저장합니다.
위의 표에 맞게 정책을 구성합니다. Option 60번의 경우 설정 안함은 Avaliable Options에서 60번을 체크하지 말아야 합니다.
Finish를 눌러 정책을 저장합니다.
이렇게 총 3개의 정책이 추가되었습니다. 이제 DHCP 정책에 의해 클라이언트가 EFI, BIOS 인지에 따라 다른 부트 파일 경로를 전송하게 됩니다.
이제 EFI와 BIOS 환경 모두에서 정상적으로 PXE 부팅이 가능합니다.