c#中如何得到登陆用户的IP

来源:百度知道 编辑:UC知道 时间:2024/05/18 05:27:58
c#中如何得到登陆用户的IP,不是Request.UserHostAddress.ToString()
我用过了,这个是本机的IP。我要的是登陆用户的IP
请给我分析的详细点

c#获取客户端电脑IP函数:Page.Request.UserHostAddress。
其他功能函数:
在网络编程中的通用方法:
获取当前电脑名:static System.Net.Dns.GetHostName()。
根据电脑名取出全部IP地址:static System.Net.Dns.Resolve(电脑名).AddressList。
也可根据IP地址取出电脑名:static System.Net.Dns.Resolve(IP地址).HostName。
系统环境类的通用属性:
当前电脑名:static System.Environment.MachineName。
当前电脑所属网域:static System.Environment.UserDomainName。
当前电脑用户:static System.Environment.UserName。

string ClientHostName = Context.Request.UserHostName.ToString();
string ClientIPAddress = Context.Request.UserHostAddress.ToString();

那试试这样写:

string ClientHostName = HttpContext.Request.UserHostName.ToString();
string ClientIPAddress = HttpContext.Request.UserHostAddress.ToString();

Request.ServerVariables["REMOTE_ADDR"]

Request.UserHostAddress获得的是请求页面的客户端的IP
如果你是从本地打开页面的话就肯定得到是本机地址
除非你从局域网上打开

ip = Request.UserHostAddress