分享方式:


DHCP 疑難排解指導

試用我們的虛擬代理程式 - 它可協助您快速識別並修正常見的 DHCP 問題。

裝置必須獲指派IP位址,才能在網路中運作。 您可以手動或自動指派 IP 位址。 自動指派是由動態主機設定通訊協定 (DHCP) 服務 (Microsoft 或第三方伺服器) 處理。

DHCP 是 RFC 1541 所定義的標準通訊協定(由 RFC 2131 取代)。 DHCP 可讓伺服器以動態方式將IP位址和組態資訊散發給用戶端。 DHCP 伺服器通常至少提供下列基本資訊給用戶端:

  • IP 位址
  • 子網路遮罩
  • 預設閘道
  • 其他資訊,例如功能變數名稱服務 (DNS) 伺服器位址和 Windows 因特網名稱服務 (WINS) 伺服器位址。 系統管理員會使用剖析至客戶端的選項來設定 DHCP 伺服器。

如需詳細資訊,請參閱 DHCP 基本概念

疑難排解檢查清單

開始進行疑難解答之前,請先檢查下列專案。 這些項目可協助您找出問題的根本原因。

  • 問題何時開始發生?
  • 是否有任何錯誤訊息?
  • DHCP 伺服器先前是否正常運作,或從未運作過? 如果先前運作過,請在問題開始之前執行任何變更。 例如,是否已安裝更新? 對基礎結構所做的變更嗎?
  • 問題是否持續或間歇性? 如果它是間歇性的,它最後何時發生?
  • 所有用戶端或只有特定客戶端發生位址租用失敗,例如單一範圍子網?
  • 在與 DHCP 伺服器相同的網路子網上是否有任何用戶端?
  • 如果客戶端位於相同的網路子網上,他們可以取得IP位址嗎?
  • 如果用戶端不在相同的網路子網上,路由器或 VLAN 交換器是否已正確設定為具有 DHCP 轉送代理程式(也稱為 IP 協助程式)?
  • DHCP 伺服器是否獨立或設定為高可用性,例如分割範圍或 DHCP 故障轉移?
  • 檢查中繼裝置是否有 VRRP/HSRP、動態 ARP 檢查或 DHCP 探查等功能,已知會造成問題。

針對 DHCP 伺服器進行疑難解答

針對 DHCP 伺服器,請檢查下列裝置和設定:

  • DHCP 伺服器服務已啟動並執行。 若要檢查此設定,請執行 net start 命令,並尋找 DHCP 伺服器
  • DHCP 伺服器已獲授權。 請參閱 加入網域案例中的 Windows DHCP 伺服器授權。
  • 確認 DHCP 用戶端所開啟子網的 DHCP 伺服器範圍中是否有IP位址租用。 若要這樣做,請參閱 DHCP 伺服器管理控制台中適當範圍的統計數據。
  • 檢查是否可以在 [位址租用] 區段中找到任何BAD_ADDRESS清單。
  • 檢查網路上是否有任何裝置具有未從 DHCP 範圍排除的靜態 IP 位址。
  • 確認 DHCP 伺服器所系結的 IP 位址位於必須從中租用 IP 位址的範圍子網內。萬一沒有可用的轉接代理程式,就會發生這種情況。 若要這樣做,請執行 Get-DhcpServerv4BindingGet-DhcpServerv6Binding Cmdlet。
  • 確認只有 DHCP 伺服器正在 UDP 連接埠 67 和 68 上接聽。 沒有其他進程或其他服務(例如 WDS 或 PXE)應該佔用這些埠。 若要這樣做,請執行 netstat -anb 命令。
  • 如果您要處理 IPsec 部署的環境,請確認已新增 DHCP 伺服器 IPsec 豁免。
  • 確認可以從 DHCP 伺服器 Ping 轉接代理程式 IP 位址。
  • 列舉並檢查已設定的 DHCP 原則和篩選。

針對 DHCP 用戶端進行疑難解答

針對 DHCP 用戶端,請檢查下列裝置和設定:

  • 纜線已連接且可運作。
  • MAC 篩選會在用戶端所連接的交換器上啟用。
  • 已啟用網路配接器。
  • 已安裝並更新正確的網路適配器驅動程式。
  • DHCP 用戶端服務已啟動並執行。 若要檢查此問題,請執行 net start 命令,並尋找 DHCP 用戶端。
  • 用戶端計算機上沒有防火牆封鎖埠 67 和 68 UDP。

使用網路追蹤對 DHCP 進行疑難解答

確認 DHCP 用戶端和伺服器上的設定後,您可以使用 Wireshark 來檢查 DHCP DORA 程式是否已順利完成,或者是否有任何封包捨棄導致 DHCP 用戶端無法從伺服器取得 IP 位址。

收集網路追蹤的步驟

若要針對使用網路追蹤的 DHCP 問題進行疑難解答,請遵循下列步驟:

  1. 在受影響的 DHCP 用戶端和 DHCP 伺服器上安裝 Wireshark

  2. 以系統管理員身分在客戶端和伺服器上執行 Wireshark。

  3. 在Wireshark中按兩下 DHCP,選擇兩部裝置上用於 DHCP 的網路介面。

  4. 在客戶端和伺服器上以Wireshark啟動封包擷取。

  5. 重現問題。 觸發 DHCP 問題(例如,在用戶端上執行 ipconfig /renew )。 等候失敗案例發生。

  6. 使用Wireshark中的紅色按鈕,在兩個裝置上停止封包擷取。

    停止Wireshark擷取。

  7. 選取 [檔案>另存新檔],將擷取的封包儲存到指定的位置。

  8. 套用 DHCP 篩選器以檢視 DHCP 交易:

    • 在用戶端擷取上,套用 「dhcp」 的顯示篩選。

    • 在伺服器擷取上,使用篩選條件 「dhcp.id == <交易標識碼>」來追蹤特定的用戶端交易。 您可以從用戶端擷取取得交易標識碼,並在伺服器端擷取的篩選中套用它。

      來自用戶端擷取的交易標識碼。

  9. 分析 DHCP 交易:

    • 檢查所有四個 DHCP 封包的用戶端擷取(DISCOVER、OFFER、REQUEST、ACK)。 如果都存在,DORA 程式可能會成功。
    • 如果遺漏任何封包(例如,只有 DISCOVER 封包是可見的),表示可能會卸除。
  10. 識別網路卸除。 尋找網路下降的這些指標:

    • 用戶端擷取會顯示 DISCOVER 封包,但伺服器擷取不會。
    • 用戶端擷取會顯示 DISCOVER 封包,而伺服器會顯示已傳送供應專案,但用戶端上看不到任何供應專案。
    • 用戶端擷取會顯示 DISCOVER、OFFER 和 REQUEST,但伺服器只會顯示 DISCOVER 和 OFFER。
    • 用戶端擷取會顯示 DISCOVER、OFFER 和 REQUEST,但伺服器會顯示已完成的所有四個封包(DISCOVER、OFFER、REQUEST、ACK),且用戶端上未看到 ACK。
  11. 確認卸除之後,請讓網路小組調查並解決卸除問題。

這些步驟可確保使用Wireshark進行徹底的疑難解答,以找出 DHCP 通訊中斷的位置,協助更快速地解決 DHCP 設定或網路問題。

協力廠商資訊免責聲明

本文提及的協力廠商產品是由與 Microsoft 無關的獨立廠商所製造。 Microsoft 不以默示或其他方式,提供與這些產品的效能或可靠性有關的擔保。

資料收集

在連絡Microsoft支援之前,您可以收集問題的相關信息。

必要條件

  1. TSS 必須由本機系統上具有系統管理員許可權的帳戶執行,而且必須接受 EULA(一旦接受 EULA,TSS 將不會再次提示)。
  2. 我們建議本機電腦 RemoteSigned PowerShell 執行原則。

注意

如果目前的 PowerShell 執行原則不允許執行 TSS,請採取下列動作:

  • 執行 Cmdlet PS C:\> Set-ExecutionPolicy -scope Process -ExecutionPolicy RemoteSignedRemoteSigned設定進程層級的執行原則。
  • 若要確認變更是否生效,請執行 Cmdlet PS C:\> Get-ExecutionPolicy -List
  • 因為進程層級許可權僅適用於目前的 PowerShell 工作階段,一旦指定的 PowerShell 視窗在 TSS 執行時關閉,進程層級的指派許可權也會回到先前設定的狀態。

在連絡Microsoft支援之前收集重要資訊

  1. 在所有節點上下載 TSS ,並將它解壓縮到 C:\tss 資料夾中。

  2. 從提升許可權的 PowerShell 命令提示字元開啟 C:\tss 資料夾。

  3. 使用下列 Cmdlet 在用戶端和伺服器上啟動追蹤:

    • 用戶端:

      TSS.ps1 -Scenario NET_DHCPcli
      
    • 伺服器:

      TSS.ps1 -Scenario NET_DHCPsrv
      
  4. 如果追蹤第一次在伺服器或用戶端上執行,請接受EULA。

  5. 允許錄製 (PSR 或視訊)。

  6. 輸入 Y 之前重現問題。

    注意

    如果您在用戶端和伺服器上收集記錄,請在這兩個節點上等候此訊息,再重現問題。

  7. 輸入 Y 以在重現問題之後完成記錄收集。

追蹤會儲存在 C:\MS_DATA 資料夾中的 zip 檔案中,以便上傳至工作區進行分析。

參考

事件記錄檔

檢查 System 和 DHCP Server 服務事件記錄檔(應用程式和服務記錄>Microsoft>Windows>DHCP-Server),以取得與觀察到的問題相關的回報問題。

根據問題的種類,事件會記錄到下列其中一個事件通道:

DHCP 伺服器記錄

DHCP 伺服器服務偵錯記錄檔會提供有關 IP 位址租用指派的詳細資訊,以及 DHCP 伺服器完成的 DNS 動態更新。 根據預設,這些記錄位於 %windir%\System32\Dhcp 中。

如需詳細資訊,請參閱分析 DHCP 伺服器記錄檔