如何获得登陆用户IP?

500公里之外 2006-12-07 01:45:32
如何获得登陆用户IP?
用户是用代理进来,如何获得他的真实IP
string logip;
if(Request.ServerVariables["HTTP_VIA"]!=null)
{
logip=Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();
}
else
{
logip=Request.ServerVariables["REMOTE_ADDR"].ToString();
}
使用这个的时候,内网登陆可以,但是如果代理就出错
未将对象引用设置到对象的实例。
...全文
190 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
500公里之外 2006-12-07
  • 打赏
  • 举报
回复
兄弟们帮帮忙了,急啊
500公里之外 2006-12-07
  • 打赏
  • 举报
回复
是啊,试了好多方法,都一样
qingyingqy 2006-12-07
  • 打赏
  • 举报
回复
楼上的几种方法还只是获得的是代理服务器的IP,而不是用户的真实IP。呵呵,我也不知道怎么弄,在这陪楼主一块等……
500公里之外 2006-12-07
  • 打赏
  • 举报
回复
using System.Net;
Dns.GetHostName();//获取本地计算机名
string str_ServerIP = Dns.Resolve( Dns.GetHostName() ).AddressList[0].Tostring();//得到本地的IP地址
string str_Name = Dns.GetHostByAddress("对方主机IP");//上面相同的方法得到对方IP地址

这个不行,出现这样的错误

请求的名称有效并且是在数据库中找到,但是它没有相关的正确的数据。
xjerp 2006-12-07
  • 打赏
  • 举报
回复
string ipaddress=Page.Request.UserHostAddress.ToString();
qi_ting 2006-12-07
  • 打赏
  • 举报
回复
string IP = this.Resolve( this.GetHostName() ).AddressList[0].Tostring();
王哈呵 2006-12-07
  • 打赏
  • 举报
回复
using System.Net;
Dns.GetHostName();//获取本地计算机名
string str_ServerIP = Dns.Resolve( Dns.GetHostName() ).AddressList[0].Tostring();//得到本地的IP地址
string str_Name = Dns.GetHostByAddress("对方主机IP");//上面相同的方法得到对方IP地址

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧