问题描述
有的时候需要根据IP或MAC来限定登录的计算机,请问如何来获取局域网中的IP地址呢?
解决方案
解决方案二:
1.在ASP.NET中专用属性:获取服务器电脑名:Page.Server.ManchineName获取用户信息:Page.User获取客户端电脑名:Page.Request.UserHostName获取客户端电脑IP:Page.Request.UserHostAddress2.在网络编程中的通用方法:获取当前电脑名:staticSystem.Net.Dns.GetHostName()根据电脑名取出全部IP地址:staticSystem.Net.Dns.Resolve(电脑名).AddressList也可根据IP地址取出电脑名:staticSystem.Net.Dns.Resolve(IP地址).HostName3.系统环境类的通用属性:当前电脑名:staticSystem.Environment.MachineName当前电脑所属网域:staticSystem.Environment.UserDomainName当前电脑用户:staticSystem.Environment.UserName
解决方案三:
可能是我没有说清楚,我们公司是局域网,现在想对公司员工登陆网站时限制每个人的权限,所以需要一个唯一的标志符,如IP或MAC,当员工登陆时,取得员工计算机的内网IP地址,从而进行判断他的权限。哪位有高见,请多多发表啊,如果有完整代码最好。
解决方案四:
这么做有点风险啊,IP和MAC地址改变后不久权限全部管用了吗?还是采用功能授权的好啊,兄弟
解决方案五:
是相应的MAC或IP给他相应的权限,并且还要结合其他判断的,现在的问题是得不到他的内网IP,急哈不过还是谢谢啦,你的建议我会考虑下的。
解决方案六:
为什么得不到内网IP了?如果你的网站是放在局域网内的机器,不通过公网登录的,得到的就是内网的IP吧?但,按你这种做法,IP地址变了怎办?
解决方案七:
我用这个方法去得,if(Request.ServerVariables["HTTP_VIA"]!=null){user_IP=Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();}else{user_IP=Request.ServerVariables["REMOTE_ADDR"].ToString();}Response.Write(user_IP);可是Request.ServerVariables["HTTP_X_FORWARDED_FOR"]得到的总是NULL而user_IP=Request.ServerVariables["REMOTE_ADDR"]得到的是代理服务器的IP地址
解决方案八:
?
解决方案九:
这些方法我试过了,得到Ip地址是可以的,但想得到MAC地址是比较难的