本文可協助修正 DHCP 用戶端無法取得 DHCP 指派 IP 位址的問題。
原始 KB 編號: 167014
徵兆
當 DHCP 用戶端從一個子網移至另一個子網時,它可能無法取得新子網上的有效 IP 位址。
解決方法
若要解決此問題,請執行下列其中一種方法:
請勿使用重疊的IP尋址配置。
將用戶端移至新的區段之後,請執行下列命令:
Ipconfig /Release Ipconfig /Renew
其他相關資訊
當先前有 DHCP 指派位址的 DHCP 用戶端再次啟動時,用戶端會進入 INIT-REBOOT 狀態。 用戶端會嘗試藉由傳送 DHCPRequest 封包來確認它仍然可以使用相同的位址,並將先前指派的 IP 位址填入 DHCP 選項欄位“DHCP 要求位址”。
如果 DHCP 伺服器保持無訊息,用戶端會假設先前的位址仍然有效,並保留該位址。 如果 DHCP 伺服器傳送 NACK 封包以回應 DHCPRequest,則用戶端會進入探索迴圈;它也會要求 DHCPDiscover 封包中先前指派的位址。
當 DHCP 伺服器收到具有先前指定位址的 DHCPRequest 時,它會先檢查其是否來自本機區段,方法是檢查 [GIADDR] 字段。 如果它源自本機區段,DHCP 伺服器會將要求的位址與屬於接收要求的本機介面的IP位址和子網掩碼進行比較。
如果位址似乎位於相同的子網上,即使位址不在其位址集區範圍內,DHCP 伺服器仍會保持無訊息狀態。 DHCP 伺服器假設位址是由相同區段上的另一部 DHCP 伺服器指派,如果位址不是來自它自己的集區。 如果位址失敗子網掩碼/IP 位址檢查,DHCP 伺服器會檢查它是否來自 Superscope,如果已定義的話。 如果沒有,伺服器會以 NACK 封包回應 DHCPRequest。
如果傳送 DHCPRequest 的用戶端要求位於相同子網上的位址,但實際上已指派不同的子網掩碼,DHCP 伺服器會保持無訊息狀態,且客戶端無法取得新子網的有效 IP 位址。
例如,假設 DHCP 用戶端會取得子網掩碼為 255.255.255.255.0 的位址 172.17.3.x,而用戶端會移至新的區段,其中 DHCP 伺服器的位址為 172.17.1.x,且子網掩碼為 255.255.0.0。 在 DHCP 伺服器上完成子網掩碼/IP 位址比較時,DHCP 伺服器會保持無訊息,假設指派位址區段上的另一部 DHCP 伺服器。 如果子網掩碼反轉,用戶端會取得有效的位址。