首页 新闻 搜索 专区 学院

获取IP地址的问题

0
悬赏园豆:5 [已解决问题] 解决于 2012-05-02 15:54

我的程序想获得访客的IP 地址,我在本地进行测试,我的机器连接到路由器

 

使用方法 string ip = System.Web.HttpContext.Current.Request.UserHostAddress;

数据库内IP地址的字段类型是NVARCHAR(50), 但是不知道为什么得到的IP 地址都是:::1 ,奇怪的很。

figofeng的主页 figofeng | 初学一级 | 园豆:5
提问于:2012-04-27 09:03
< >
分享
最佳答案
1

:::1是IPv6的本机地址,如果IPv4就是127.0.0.1

本机访问得到的是:::1正常的。

System.Web.HttpContext.Current.Request.UserHostAddress; 这样获取IP是没问题的。

收获园豆:5
dudu | 高人七级 |园豆:37803 | 2012-04-27 10:32

感谢了

figofeng | 园豆:5 (初学一级) | 2012-04-27 10:33
其他回答(2)
0

用这个就可以了:Request.ServerVariables.Get("Remote_Addr").ToString();

KivenRo | 园豆:1722 (小虾三级) | 2012-04-27 09:11

不行,我跟踪了一下,用这个获得的IP 就是:::1 这样的字符串。

难道和我环境有关系?

支持(0) 反对(0) figofeng | 园豆:5 (初学一级) | 2012-04-27 09:15

那你再试试这个:Request.ServerVariables["HTTP_X_FORWARDED_FOR"];

如果还有行的话,就看看你的本地连接的属性设置是不是有什么问题

支持(0) 反对(0) KivenRo | 园豆:1722 (小虾三级) | 2012-04-27 09:18
0

是不是 機器上有很多網卡。

無限遐想 | 园豆:3740 (老鸟四级) | 2012-04-27 09:21

几个虚拟机网卡,无线网卡,VPN连接网卡

支持(0) 反对(0) figofeng | 园豆:5 (初学一级) | 2012-04-27 09:23

@figofeng: 那 就對。你讀取到的這個ip,可能是其中之一。因此 需要換一 方法。可以讀出集合,看看,哪個是你需要的。

支持(0) 反对(0) 無限遐想 | 园豆:3740 (老鸟四级) | 2012-04-27 09:32
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册