在 Windows XP 上禁用 IPv6 地址自動配置
在 Windows Vista 和更高版本中,您可以通過 GUI 或使用
netsh
. 地址也可以在 Windows XP 上靜態配置netsh interface ipv6 add address "Local Area Network" 2001:db8::bad:f00d
和預設路由:
netsh interface ipv6 add route ::/0 "Local Area Network" 2001:db8::1
但問題在於,如果鏈路上存在 RA 發射路由器,Windows XP 還將根據通告的前綴和
fe80::
路由器的鏈路本地 ( ) 地址為自己分配一個自動生成的地址作為預設網關。如果主機是靜態定址的,如何關閉自動配置?
更新
似乎沒有禁用 SLAAC 而不禁用 IPv6 本身的直接方法。是否有系統資料庫設置可以這樣做?
在我的本地 IPv6 網路上安裝 XP 盒子是……很有趣。不是。
因此,在一張圖片中,問題出在:XP 對 IPv6 的支持充其量是最少的。我不相信有可能禁用無狀態自動配置 - 甚至不使用任何東西。
首先,我的無狀態自動配置以及我的隱私地址都很好。隱私地址在全球網際網路上有效,我通過訪問Google Chrome 中的 IP 地址工具確認了這一點。
所以我們開始擺弄。
首先,GUI 沒有為 IPv6 提供任何配置選項;看到“屬性”是灰色的。您可能想做的所有事情都必須從命令行完成。
@MikePennington的
routerdiscovery=disabled
建議不起作用,因為 XP 根本不支持此命令。它需要 Vista 或更高版本。可以為 SP1 系統下載所謂的用於 Windows XP 的高級網路包,但此功能包含在 SP2 中,並且它提供的任何內容都應該在任何 SP2 或更高版本的系統上都可用。
安裝後,一個
ipv6
命令變得可用,但它不提供與禁用鄰居發現相關的任何內容。不幸的是,XP 上的 Windows 防火牆不區分 IPv4 和 IPv6 連接,因此無法選擇 ICMPv6 消息在防火牆中阻止。這排除了任何 Windows 防火牆解決方法。
最後,XP 甚至不支持 DHCPv6。
自 2003 年發布此程式碼以來,IPv6 本身已經成熟(微軟似乎從未在 XP 上更新過它),因此它受到近十年前關於 IPv6 的了解的限制。據我所知,Windows XP 中的 IPv6 支持應該被視為“技術預覽”,而不是在生產中使用,或者至少在使用時非常謹慎並充分了解其局限性。
當然,此時 XP 已接近其使用壽命,(有些人會說它已經過了使用壽命)因此,如果您可以升級盒子,那可能是最簡單的解決方案。
TL;DR:看看漂亮的圖片。哭泣。升級到目前版本的 Windows。