2010-08-10 291 views
0

如何在.NET中獲得Web /應用程序服務器的IP地址?不是客戶端IP地址,而是服務器IP地址。如何在.NET中獲取服務器的IP地址?


我只是發現了一些關於server variables

+2

你想要的外部IP地址?本地網絡上的IP地址?發起請求的URL的IP地址? – McKay 2010-08-10 18:06:22

+0

@McKay我正在尋找Web服務器的外部IP地址。 – 2010-08-10 18:10:07

+0

所以,問題是服務器的外部IP地址不是服務器自己知道的。這是外部硬件知道的事情。我的外部IP地址由我的ISP控制。我碰巧知道它是什麼,但我不能直接得知它。 – McKay 2010-08-10 18:12:25

回答

2

你可能想要的東西類似下面的代碼,以獲得當前機器的所有IP地址。但是,如果您有多個請求,它不會告訴您哪個網絡適配器(以及IP地址)有特定的請求。

String strHostName = Dns.GetHostName(); 
    Console.WriteLine("Host Name: " + strHostName); 

    // Find host by name 
    IPHostEntry iphostentry = Dns.GetHostByName(strHostName); 

    // Enumerate IP addresses 
    foreach(IPAddress ipaddress in iphostentry.AddressList) 
    { 
     Console.WriteLine(ipaddress.ToString()); 
    } 
1

要獲得my own IP address in C#

IPHostEntry ipEntry = DNS.GetHostByName (Dns.GetHostName()); 
IPAddress [] addr = ipEntry.AddressList; 

要獲取其他的機器

IPHostEntry ipEntry = DNS.GetHostByName (strHostName); 
IPAddress [] addr = ipEntry.AddressList; 
-2

要獲取IP地址(和Coutnry /位置)的服務器的編程我使用Utrace.de API 。它也會返回一個包含IP地址和位置信息的XML。

例子查詢:http://xml.utrace.de/?query=google.com

+0

我認爲他正在尋找發現他當前的服務器的IP地址,並不知道如何獲取數據傳遞給utrace.de – McKay 2010-08-10 18:22:29

+0

哦..我明白了。我應該給域名的例子..而不是IP。 – ankitjaininfo 2010-08-10 18:24:43