2012-11-24 64 views
3

我有IPv6字符串,並且我想創建IPAddress對象。我嘗試下面的代碼.NET IPAddress類正在將IPv6轉換爲映射的IP地址

String ipString = "2400:3C00:3FFE:0000:0000:5EFE:8999:48AA"; 
System.Net.IPAddress address; 
IPAddress.TryParse(ipString, out address); 

但address.ToString()的返回值 「2400:3c00:3FFE :: 5EFE:137.153.72.170」。

爲什麼這已被轉換爲混合IP?

回答

1

這是,AFAIK,發生在Windows 2003 + XP(可能是Vista,但我不確定),因爲它們實現了IPv6。在新的操作系統上,它會好的。

+0

我在Windows 7和Windows Server 2008 R2上都得到了這個。 –

+0

我一直在使用VS2012在Windows 7上嘗試此操作。一些IPv6地址工作正常(:: 1,我的本地IP)。其他人展示你所看到的。不知道爲什麼。 –

+0

我也面臨同樣的問題。如果我改變了兩個連續的零它適用於「2400:3C00:3FFE:1000:1000:5EFE:8999:48AA」 –