Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 正在获取服务器的IPv4地址,而不是计算机的IPv4地址_C#_Asp.net_Ip Address - Fatal编程技术网

C# 正在获取服务器的IPv4地址,而不是计算机的IPv4地址

C# 正在获取服务器的IPv4地址,而不是计算机的IPv4地址,c#,asp.net,ip-address,C#,Asp.net,Ip Address,我已经编写了以下代码来获取我机器的IPv4地址。当我们在服务器上部署这段代码时,这段代码给出了服务器的IP地址,而不是运行哪个应用程序的机器的IP地址 public string getIpAddress() { try { string myHost = System.Net.Dns.GetHostName(); string myIP = null; for (int i = 0; i <= System.Net.Dns

我已经编写了以下代码来获取我机器的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;
    }
}
公共字符串getIpAddress()
{
尝试
{
字符串myHost=System.Net.Dns.GetHostName();
字符串myIP=null;

对于(inti=0;i这是预期的行为,因为此代码在服务器端运行


但是,如果您想要获取客户端IP地址,您仍然可以通过使用请求对象来实现。(有关更多详细信息,请参阅此内容,或者查看google上的示例)

问题到底是什么?嗨,Joker\u vD,问题是,当我在服务器上部署此代码,并通过任何机器访问应用程序时,我得到的是服务器的IPv4地址,而不是本地机器IPHi,我已经检查了Request.UserHostAddress;但每次它给我这个127.0.0.1.UserHostAddress都会捕获代理服务器或rou的IPter.请参阅本文。@user3437960您正在服务器上运行web浏览器吗?没有笑话,我没有在服务器上运行web浏览器,我正在本地机器上运行浏览器您的浏览器地址栏中显示的url是什么?