在C#中获取用户计算机的IP地址[重复]

Posted

技术标签:

【中文标题】在C#中获取用户计算机的IP地址[重复]【英文标题】:Get IP address of user computer in C# [duplicate] 【发布时间】:2011-12-05 22:54:13 【问题描述】:

可能重复:How to get a user's client IP address in ASP.NET?

我有一个应用程序,我必须在其中获取访问我网站的用户的 IP 地址。 我的网站托管在 Go Daddy 托管服务器上。 我已经尝试了几个代码(如下所列),但似乎它们不起作用。

HttpContext.Current.Request.UserHostAddress.ToString(); 

Request.UserHostAddress.ToString();

Request.ServerVariables["HTTP_X_FORWARDED_FOR"];

Request.ServerVariables["REMOTE_ADDR"];

HttpContext.Current.Request. Server Variables["HTTP_X_FORWARDED_FOR"];

自过去 3 天以来我一直在研究这个问题,但我找不到任何好的解决方案。 任何好的解决方案。

请帮我做这件事。

谢谢。

【问题讨论】:

到目前为止您尝试的这 5 种方法的输出是什么? string clientIPAddress = HttpContext.Current.Request.UserHostAddress; 为我工作。这段代码有什么用? 阅读此主题 - ***.com/questions/735350/… 我已经在 aspx.cs 页面中尝试过了。它可以在本地 Intranet 中运行,但是当我将其上传到 Go daddy 服务器时,它的页面不起作用。 【参考方案1】:

那些应该工作。您是否希望在您的网络上获得您计算机的 IP 地址? (与您的 ISP 提供的公开版本相反,这可能会改变)

【讨论】:

我应该获取访问我网站的客户端电脑的 IP 地址。【参考方案2】:

这可能会有所帮助

System.Net.Dns.GetHostByName(Environment.MachineName).AddressList[0].ToString()

【讨论】:

这给出了主机 IP 地址。但我想获取访问我网站的用户的 IP 地址。 我个人认为不可能【参考方案3】:

我觉得你可以用HttpRequest.UserHostAddress

【讨论】:

阅读开篇文章。他/她试过了。

以上是关于在C#中获取用户计算机的IP地址[重复]的主要内容,如果未能解决你的问题,请参考以下文章

C#:将当前用户/IP/计算机名称等输出到标签[重复]

如何在 C# 代码中获取 IP 地址 [重复]

从同一网络C#中的另一台计算机下载文件[重复]

在PHP中获取本地机器IP地址[重复]

在 C# 中通过远程处理获取外部 IP 地址

怎么实现c#获取ip内网,外网地址?