c#asp.net继续获取服务器IP地址 [英] c# asp.net keep getting server ip address

查看:195
本文介绍了c#asp.net继续获取服务器IP地址的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我上传到服务器后获取服务器IP地址/网关。我该怎么办?

i继续搜索谷歌,但所有代码都让我失望:(





i getting the server ip address/ gateway after i upload to my server. what should i do?
i keep searching on google but all the codes have failed me :(


protected void Page_Load(object sender, EventArgs e)
 {
     Response.Write(findip() + "<br/>"); //return server ip address
            
     Response.Write(Request.ServerVariables["remote_host"].ToString() + "<br/>");//return server gateway
            
     Response.Write(Request.ServerVariables["REMOTE_ADDR"] + "<br/>");//return server gateway
            
     Response.Write(Request.UserHostAddress + "<br/>");//return server gateway            

     string strHostName = System.Net.Dns.GetHostName();
     string clientIPAddress = System.Net.Dns.GetHostAddresses(strHostName).GetValue(0).ToString();
     Response.Write(clientIPAddress);                    
 }

public string findip()
 {
     string IP4Address = String.Empty;

     foreach (IPAddress IPA in Dns.GetHostAddresses(Dns.GetHostName()))
      {
        if (IPA.AddressFamily.ToString() == "InterNetwork")
        {
          IP4Address = IPA.ToString();
          break;
        }
      }
       return IP4Address;
 }      

推荐答案

是的,请尝试阅读Dns.GetHostName()上的文档。



它说:获取本地计算机的主机名。在这种情况下,本地计算机将是运行代码的机器,即:您的服务器。所以是的,你得到服务器的IP地址。



另外, Request.ServerVariables [remote_host] 不返回服务器网关。它返回发出请求的客户端的主机名。 ServerVariables [REMOTE_ADDR] 也是如此,它返回客户端的IP地址,而不是服务器。



ASP.NET代码完全在服务器端运行,而不是在客户端浏览器中运行。
Yeah, try reading the documentation on Dns.GetHostName().

It says: Gets the host name of the local computer. The "local computer" in this case would be the machine the code is running on, i.e.: your server. So yeah, you're getting the IPAddresses of your server.

Also, Request.ServerVariables["remote_host"] does not return the servers gateway. It returns the host name of the client that made the request. The same is true of ServerVariables["REMOTE_ADDR"], it returns the IP address of the client, not the server.

ASP.NET code runs entirely server-side, not in the clients browser.


这篇关于c#asp.net继续获取服务器IP地址的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆