Windows – WDS

Loading

在安裝作業系統時最常見的方式就是透過 CD/DVD 開機並透過它為安裝媒體的來源,而這邊所說的 PXE (Preboot eXecution Environment) 則是透過網路卡開機的方式進行開機與安裝作業系統.

在網卡上有一塊 ROM (firmware) 裡面存放了一些基本的網路協定,透過這些協定使得 PXE 可以進行網路的存取,進一步取得網路上的資源.

  1. Internet Protocol (IP)
  2. User Datagram Protocol (UDP)
  3. Dynamic Host Configuration Protocol (DHCP)
  4. Trivial File Transfer Protocol (TFTP)

PXE 最主要透過 DHCP (使用 UDP) 和 TFTP, 兩個 Protocol 來進行網路資源的存取.

  1. 透過 DHCP 讓 PXE 獲得 IP 以及得知開機前導程式.
  2. 而 TFTP (由 WDS 提供) 則是讓 PXE 可以下載該前導程式.

只要具有 DHCP 和 tftp 服務的 OS 皆可以擔任此項工作.Linux PXE 請參考 https://benjr.tw/83

在 Windows 下可以透過 WDS (Windows Deployment Services) 來做,透過 WDS 的 PXE Boot 步驟如下:
測試環境為 Windows server 2016 x64 (虛擬機).

  1. BIOS / EFI 由 PXE boot ROM 開機.
  2. PXE boot ROM 的第一步就是透過 DHCP 取得 IP.
  3. DHCP Client 會從 TFTP 下載 PXEboot.n12 開始網路開機,並從 TFTP 下載 bootmgr.exe (UEFI 的檔案名稱則是 Bootmgfw.efi) 與 Boot\BCD (詳細關於 WDS 的 BCD 設定請參考 – https://benjr.tw/101425 )檔案.
  4. Bootmgr.exe 會依據 BCD 設定位置來下載 Windows PE 映像檔 Boot\boot.wim.也會依據 BCD 設定位置執行 \windows\system32\winload.exe 來啟動 Windows PE.
  5. 載入 Windows PE 後會執行 wpeinit.exe 來進行初始化.
  6. 如果 PXE ROM 無法完成上序的步驟,BIOS / EFI 就會依序啟動其他可以開機的裝置.

WDS 需搭配 DHCP 一起使用,設定 DHCP 需要先將網卡設定好固定 (Static) IP ,在 Control Panel\Network and Internet\Network and Sharing Center 可以設定 Static IPv4 與 v6,我的 IP 設定如下.

  • IPv4 – 192.6.1.1/24
  • IPv6 – 3ffe:501:ffff:100::1/64

詳細設定 DHCP 請參考 https://benjr.tw/94541,並確認 DHCP / Server options / Advanced – 060 PXEClient 有點選.

安裝 WDS

透過 Server Manager / Add roles and features / Role-based or feature-based installation 新增 Windows Depoloyment services

總共需要安裝 Deployment server 與 Transport Server

設定 WDS

Server Manager / Servers / Server Name 右鍵 選擇 Windows Depoloyment Services Management Console
進入 Windows Depoloyment Services 在所屬的 Servers 右鍵 Configure Server.

我沒有建立 AD (Active Directory) 所以選擇 Standalone Server 即可.

預設 Boot 與 Install Images 將會存放在這所指定的位置 c:\RemoteInstall

如果有警告訊息(不建議使用 C: 槽),選擇確認即可或是選擇其他硬碟槽.

Proxy DHCP Server – 我的 DHCP 與 WDS 皆在同一台 Server 上,所以勾選 Do not listen on DHCP or DHCPv6ports 與 Configure DHCP options or for proxy DHCP.

PXE Server Initial Settings – 我主要用途是在測試 PXE 功能所以勾選 Responed to all client computer(Knownn and unknown) .

設定好之後回到 Windows Depolyment services / Server 右鍵 All Task / Start 啟動服務.

設定 WDS

接下來就是匯入 Install Image 與 Boot Image, 透過右鍵來 Add Install Image (安裝檔案)與 Add Boot Image (開機檔案),這些檔案皆可以在皆 ISO 檔內的 Sources 資料夾可以找到,名稱分別為 Boot.wim 與 Install.wim .

WDS 細項設定

還有一些細項可以做設定,在 Server 右鍵選擇 Proprites .
Boot / PXE Boot Policy
WDS 的 PXE Boot 預設從 PXE 開機後還需要按 F12 確認後才會出現開機選單,可以在這邊選擇 Known clients / Unknown Clients – Always continue the PXE Boot 就不需要按 F12 了.

從 Default boot images(optional) 看起來 WDS 只有支援 x86 , ia64 , x64 , arm , x86(UEFI) , x64(UEFI) ,至於 ARM64 似乎要看 Windows 2019 有沒有支援了.

WDS Client PXE Boot

Client 從 PXE Boot

遇過的問題
在 Windows 2019 WDS+DHCP IPv6 PXE 時遇到以下的錯誤訊息,最後是在 Linux 環境下建立另外一個與 IPv6 位址分配相關服務 RADVD (Router Advertisement Daemon) ,詳情請參考 https://benjr.tw/94906 ,才沒出現錯誤訊息.

Wdsclient: There was a problem initializing WDS Mode
沒有解決問題,試試搜尋本站其他內容

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料