2010-04-08 273 views
4

在.NET Compact Framework中,设备可以有多个IP地址,我想要找到一个不是来自蜂窝连接的IP地址。目标是用于WiFi或以太网连接。确定IP地址是否为蜂窝IP地址

有没有办法做到这一点?

像州和通知经纪人似乎有办法做到这一点,但没有看到办法。

回答

5

不,你必须手动完成。

很显然,你不知道哪些IP属于小区或者不是。最简单的方法是从maxmind.com获取“ISP”IP数据库 - http://www.maxmind.com/app/isp - 这将为您提供任何IP地址(以及大多数IP地址)的ISP名称。然后,您只需设置一个匹配“sprint”,“verizon wireless”,“cellular”等关键字的正则表达式来确定它是否是手机IP。

不是最聪明的解决方案,但我不知道有更好的方法。

0

每个运营商都有一组IP地址。如果您知道运营商的网络地址,则可以将访问者的IP与运营商的地址进行比较。

因此,举例来说,如果你知道移动运营商拥有开始与212.235.*.*

你比较访问者的地址的第16位有了它,例如如果访问者的地址是212.235.190.215,你知道一组IP地址它来自移动网络。

你可以用简单的字符串操作来检查这个条件 - 比较访客的IP地址的前x个字符和操作员ip地址开头的x个已知字符。