如何在沒有 DHCP 伺服器的情況下使用自動 TCP/IP 定址

本文說明如何使用自動傳輸控制通訊協定/網際網路通訊協定 (TCP/IP) 位址,而不需網路上有動態主機設定通訊協定 (DHCP) 伺服器。 本文一節所列的作業系統版本具有稱為「自動私人 IP 定址」(APIPA)的功能。 透過這項功能,Windows 電腦可以在 DHCP 伺服器無法使用或不存在於網路上時,自行指派網際網路通訊協定 (IP) 位址。 這項功能可讓設定及支援執行 TCP/IP 的小型區域網路(LAN)變得不那麼困難。

相關資訊

重要

請仔細依照本節中的步驟執行。 如果您未正確修改登錄,可能會發生嚴重問題。 在您進行修改之前,請先備份登錄,做為還原之用,以免發生問題。

設定為使用 DHCP 的 Windows 電腦,如果 DHCP 伺服器無法使用,可以自動指派網際網路通訊協定 (IP) 位址。 例如,這可能發生在沒有 DHCP 伺服器的網路上,或在 DHCP 伺服器暫時關閉以進行維護時發生于網路上。

網際網路指派號碼授權單位 (IANA) 已保留 169.254.0.0-169.254.255.255 自動私人 IP 位址。 因此,APIPA 會提供保證不會與可路由位址衝突的位址。

指派網路介面卡 IP 位址之後,電腦可以使用 TCP/IP 與連線至相同 LAN 的任何其他電腦通訊,而且該電腦也已針對 APIPA 設定,或手動將 IP 位址設定為 169.254.x.y(其中 x.y 是用戶端的唯一識別碼)位址範圍,且子網路遮罩為 255.255.0.0。 請注意,電腦無法與其他子網上的電腦通訊,或與不使用自動私人 IP 定址的電腦通訊。 預設會啟用自動私人 IP 定址。

在下列任何情況下,您可能想要停用它:

  • 您的網路使用路由器。

  • 您的網路會連線到沒有 NAT 或 Proxy 伺服器的網際網路。

除非您已停用 DHCP 相關訊息,否則 DHCP 訊息會在 DHCP 定址與自動私人 IP 定址之間變更時提供通知。 如果意外停用 DHCP 傳訊,您可以將下列登錄機碼中的 PopupFlag 值值從 00 變更為 01 來重新開啟 DHCP 訊息: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\DHCP

請注意,您必須重新開機電腦,變更才會生效。 您也可以使用 Windows Millennium Edition、Windows 98 或 Windows 98 Second Edition 中的 Winipcfg 工具,來判斷您的電腦是否使用 APIPA:

按一下 [開始],按一下 [執行],輸入 「winipcfg」 (不含引號),然後按一下 [確定]。 按一下 [詳細資訊]。 如果 [IP 自動設定位址] 方塊包含 169.254.x.x 範圍內的 IP 位址,則會啟用自動私人 IP 定址。 如果 [IP 位址] 方塊存在,則目前未啟用自動私人 IP 定址。 針對 Windows 2000、Windows XP 或 Windows Server 2003,您可以在命令提示字元使用 IPconfig 命令來判斷您的電腦是否使用 APIPA:

按一下 [開始],按一下 [執行],輸入 「cmd」 (不含引號),然後按一下 [確定] 以開啟 MS-DOS 命令列視窗。 輸入 「ipconfig /all」 (不含引號),然後按 ENTER 鍵。 如果 'Autoconfiguration Enabled' 行顯示 「Yes」,而 'Autoconfiguration IP Address' 是 169.254.x.y(其中 x.y 是用戶端的唯一識別碼),則電腦會使用 APIPA。 如果 'Autoconfiguration Enabled' 行顯示 「否」,則電腦目前未使用 APIPA。 您可以使用下列任一方法停用自動私人 IP 位址。

您可以手動設定 TCP/IP 資訊,以完全停用 DHCP。 您可以編輯登錄來停用自動私人 IP 位址處理(但無法停用 DHCP)。 若要這麼做,您可以將 「IPAutoconfigurationEnabled」 DWORD 登錄專案的值 0x0新增至下列 Windows Millennium Edition、Windows98 或 Windows 98 Second Edition 的登錄機碼: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\DHCP

針對 Windows 2000、Windows XP 和 Windows Server 2003,APIPA 可以藉由將 「IPAutoconfigurationEnabled」 DWORD 登錄 0x0專案的值新增至下列登錄機碼,以停用 APIPA: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\<Adapter GUID>

注意

接器 GUID 子機碼是電腦 LAN 介面卡的全域唯一識別碼 (GUID)。

為 IPAutoconfigurationEnabled DWORD 專案指定 1 的值將會啟用 APIPA,這是從登錄省略此值時的預設狀態。

WHERE APIPA 可能很有用的範例

範例 1:沒有先前的 IP 位址和沒有 DHCP 伺服器

當您的 Windows 電腦(針對 DHCP 設定)正在初始化時,它會廣播三或多個「探索」訊息。 如果 DHCP 伺服器在廣播數個探索訊息之後沒有回應,Windows 電腦就會自行指派類別 B (APIPA) 位址。 然後,Windows 電腦會向使用者顯示錯誤訊息(前提是過去從未從 DHCP 伺服器指派 IP 位址)。 然後,Windows 電腦會每隔三分鐘傳送一則探索訊息,以嘗試建立與 DHCP 伺服器的通訊。

範例 2:先前的 IP 位址和沒有 DHCP 伺服器

電腦會檢查 DHCP 伺服器,如果找不到任何伺服器,就會嘗試連絡預設閘道。 如果預設閘道回復,則 Windows 電腦會保留先前租用的 IP 位址。 不過,如果電腦未收到預設閘道的回應,或未指派任何回應,則會使用自動私人 IP 定址功能自行指派 IP 位址。 系統會向使用者顯示錯誤訊息,並每隔 3 分鐘傳輸一次探索訊息。 一旦 DHCP 伺服器上線,就會產生訊息,指出已使用 DHCP 伺服器重新建立通訊。

範例 3:租用到期,沒有 DHCP 伺服器

Windows 電腦會嘗試重新建立 IP 位址的租用。 如果 Windows 電腦找不到 DCHP 伺服器,則會在產生錯誤訊息後,將 IP 位址指派給自己。 然後電腦會廣播四個探索訊息,並在每 5 分鐘之後重複整個程式,直到 DHCP 伺服器上線為止。 接著會產生訊息,指出已使用 DHCP 伺服器重新建立通訊。