2012-07-22 55 views
1

我已經搜索了很多,我仍然沒有任何運氣。問題是,如果我從我的服務器上查找,如果主機有IPv6地址,我會在列表中看到它。但是,如果我使用.Net System.Net的Dns.GetHostAddresses(域),它只會返回IPv4地址。.Net Dns.GetHostAddresses(域) - 返回ipv6地址

有了大量的閱讀,我發現:如果本地計算機沒有安裝IPv6,IPv6地址將從GetHostAddresses方法的結果中過濾掉。

我在只有IPv4的網絡中。我不需要ping或具有實際的網絡連接,只需要爲主機返回一個IPv6地址,如同我說的那樣,它可以在同一臺服務器上使用nslookup。

任何人都可以告訴我如何使用.Net獲得IPv6地址,即使您碰巧在IPv4網絡中?

感謝

+0

什麼是「域」,你傳遞給GetHostAddresses的東西? – 2012-07-22 21:07:47

回答

0

如果我叫GetHostAddresses( 「localhost」 的),我得到IPv4和IPv6地址。因此,在您的網絡中,無論哪個域包含,都沒有分配IPv6地址。

嘗試:

var addresses = Dns.GetHostAddresses(Dns.GetHostName()); 

你會得到什麼樣的結果?