局域网获取不到客户端真是IP
客户端电脑网络设置
IP 192.168.1.107
子网掩码 255.255.255.0
网关 192.168.1.1
dns 192.168.1.20
服务器地址 192.168.1.5
服务器域名 xxxx.abc
属于局域网解析的内部域名
取IP的代码
string GetIp()
{
//可以透过代理服务器
string userIP = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
if (userIP == null || userIP == "" || userIP == "192.168.1.20")
{
//没有代理服务器,如果有代理服务器获取的是代理服务器的IP
userIP = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];
}
if (userIP == null || userIP == ""|| userIP == "192.168.1.20")
userIP = System.Web.HttpContext.Current.Request.UserHostAddress;
return userIP;
}
现在的问题是使用192.168.1.5访问系统可以正常取到ip192.168.1.107
使用域名xxxx.abc访问系统可以取到的ip192.168.1.20
怎么修改代码可以使用域名xxxx.abc访问系统可以正常取的IP192.168.1.107
根据电脑名取出全部IP地址:static System.Net.Dns.Resolve(电脑名).AddressList
这个也试过了,没有用