[英]Getting IPv4 address of server, not machine
我已經編寫了以下代碼來獲取機器的IPv4地址。 當我們在服務器上部署此代碼時,此代碼為我提供了服務器的IP地址,但沒有提供運行哪個應用程序的機器IP?
public string getIpAddress()
{
try
{
string myHost = System.Net.Dns.GetHostName();
string myIP = null;
for (int i = 0; i <= System.Net.Dns.GetHostEntry(myHost).AddressList.Length - 1; i++)
{
if (System.Net.Dns.GetHostEntry(myHost).AddressList[i].IsIPv6LinkLocal == false)
{
myIP = System.Net.Dns.GetHostEntry(myHost).AddressList[i].ToString();
}
}
return myIP;
}
catch (Exception)
{
throw;
}
}
由於此代碼在服務器端運行,因此這是預期的行為。
但是,如果要獲取客戶端IP地址,仍然可以使用Request對象來完成。 (有關更多詳細信息,請參閱此帖子 ,或在Google上查看示例)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.