怎样根据IP地址查询所在地

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样根据IP地址查询所在地相关的知识,希望对你有一定的参考价值。

能具体到乡镇吗?根据它的数字查它的物理地址

每个IP段都对应着一个地区或者城市,如果知道这个IP地址,那就可以查询到这个IP所在的城市。


在百度搜索引擎里搜索IP,就可以查询到本机的IP地址,如果输入一个IP地址,也可以查询到对应这个IP地址的所在城市

参考技术A 在线查IP 地址 手机号码归属地

www.ip138.com

本地机器查 可下载纯真IP数据库 可以IP -- 地址 互相转换查询
IP数据库Build 0130 纯真版http://www.skycn.com/soft/14344.html
参考技术B 网页版信息查询工具两套:Whois查询小程序和域名、IP地理位置查询。可在自己的站点上构造信息查询系统。

《黑客防线》:http://www.hacker.com.cn
参考技术C 先要下载个IP地址查询器 .给你个下载网站吧!
http://210.51.0.33/guest/ip/ip2.htm
http://www.ipsprite.com/
参考技术D http://www.ikaka.com/ip/index.asp
瑞星的输入IP就可以了

PHP 根据IP地址获取所在城市

<?php  
header(‘Content-Type:text/html;Charset=utf-8‘);  


function GetIp(){  
    $realip = ‘‘;  
    $unknown = ‘unknown‘;  
    if (isset($_SERVER)){  
        if(isset($_SERVER[‘HTTP_X_FORWARDED_FOR‘]) && !empty($_SERVER[‘HTTP_X_FORWARDED_FOR‘]) && strcasecmp($_SERVER[‘HTTP_X_FORWARDED_FOR‘], $unknown)){  
            $arr = explode(‘,‘, $_SERVER[‘HTTP_X_FORWARDED_FOR‘]);  
            foreach($arr as $ip){  
                $ip = trim($ip);  
                if ($ip != ‘unknown‘){  
                    $realip = $ip;  
                    break;  
                }  
            }  
        }else if(isset($_SERVER[‘HTTP_CLIENT_IP‘]) && !empty($_SERVER[‘HTTP_CLIENT_IP‘]) && strcasecmp($_SERVER[‘HTTP_CLIENT_IP‘], $unknown)){  
            $realip = $_SERVER[‘HTTP_CLIENT_IP‘];  
        }else if(isset($_SERVER[‘REMOTE_ADDR‘]) && !empty($_SERVER[‘REMOTE_ADDR‘]) && strcasecmp($_SERVER[‘REMOTE_ADDR‘], $unknown)){  
            $realip = $_SERVER[‘REMOTE_ADDR‘];  
        }else{  
            $realip = $unknown;  
        }  
    }else{  
        if(getenv(‘HTTP_X_FORWARDED_FOR‘) && strcasecmp(getenv(‘HTTP_X_FORWARDED_FOR‘), $unknown)){  
            $realip = getenv("HTTP_X_FORWARDED_FOR");  
        }else if(getenv(‘HTTP_CLIENT_IP‘) && strcasecmp(getenv(‘HTTP_CLIENT_IP‘), $unknown)){  
            $realip = getenv("HTTP_CLIENT_IP");  
        }else if(getenv(‘REMOTE_ADDR‘) && strcasecmp(getenv(‘REMOTE_ADDR‘), $unknown)){  
            $realip = getenv("REMOTE_ADDR");  
        }else{  
            $realip = $unknown;  
        }  
    }  
    $realip = preg_match("/[\d\.]{7,15}/", $realip, $matches) ? $matches[0] : $unknown;  
    return $realip;  
}  
  
function GetIpLookup($ip = ‘‘){  
    if(empty($ip)){  
        $ip = GetIp();  
    }  
    $res = @file_get_contents(‘http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=‘ . $ip);  
    if(empty($res)){ return false; }  
    $jsonMatches = array();  
    preg_match(‘#\{.+?\}#‘, $res, $jsonMatches);  
    if(!isset($jsonMatches[0])){ return false; }  
    $json = json_decode($jsonMatches[0], true);  
    if(isset($json[‘ret‘]) && $json[‘ret‘] == 1){  
        $json[‘ip‘] = $ip;  
        unset($json[‘ret‘]);  
    }else{  
        return false;  
    }  
    return $json;  
}  
$ip = GetIp();

 

$ipInfos = GetIpLookup($ip); //baidu.com IP地址  
 

  

以上是关于怎样根据IP地址查询所在地的主要内容,如果未能解决你的问题,请参考以下文章

仅凭邮箱地址,怎样查询所在邮件服务器ip

java根据ip地址获取相应的所在地,精确到街道和门牌号,要怎么实现?

根据用户ip查询用户所在城市

ASp.NET 如何根据IP查询所在城市

怎样查看代理服务器的IP地址

根据ip地址获取用户所在地