DylanJ
그는 물었다 12년 전
58

How to get 따르면 전국 특정 IP?

간단한 방법은 특정 IP 주소를 나라로 읽어들입니다 아는 사람? 대부분 ISO_3166-1 의 형식?

AAT
그는 11년 전 댓글을 달았습니다
8

39, t don& 배치하십시오 의존도 너무 국가에 사용자 바로 IP 했었지. 난 계속 사용할 수 있기 때문에, 비록 내가 스칸디나비아 회사 광고 보고 스웨덴의 저희 사무실은 스코틀랜드에서.

Phluks
그는 8년 전 댓글을 달았습니다
0

정확히요 - 한국이기 때문이다. 나타날 수 있지만, 실제로 그렇게 할 수 있는 경우가 많기 곳에서 온 바라건대요! 그 아래로 모든 사실을 확인할 수 없는 정치적 또는 네트워크 토폴로지상의 지질학적 있다. 급지대 예: # 39 vpn&, s, 무선, 위성 및 드릴링됩니다.

답변 14 개

다음과 같은 두 가지 방식이 있습니다. 인터넷 서비스 및 사용 함정이거나 사용하여 로컬 목록 (아마도 랩된 받을시간은 library). 어떤 틀렸다니까 그리웠댔지 따라 달라질 수 있다.

서비스에 대한:

목록:

형식은 문서화했습니다 이 추가 정보

[2]: https://stackoverflow.com/questions/1033/ip-to-country # 1034년

[5]: https://stackoverflow.com/questions/1033/ip-to-country # 1056년

Community
tzot
그는 12년 전 댓글을 달았습니다
1

그 중 가장 유용한 답변 일반적으로 보유하고 있는 것으로 보고 있습니다. 감사합니다!

Jevado
그는 9년 전 댓글을 달았습니다
0

자세한 내용은 들어보겠소 아마 다운로드되었는지 리스 조피시 막스 린드 db 에서 사용할 수 있다, 또한 같은 오픈 데이터? I did not find it 볼 수 있지만,

(나 포함 회사) 막스 린드 조세프 많은 사람들이 사용하는 것으로 보인다.

그들은 무료 버전 [조리트] (http://dev.maxmind.com/geoip/geoip2/geolite2/) 가 아니라 정확한 것으로, 단순한 사안이 유료 버전 신앙이니라 you& # 39, re 직후, 충분히 있을 수 있습니다.

Orion Edwards
Parag
그는 6년 전 댓글을 달았습니다
2

이 때 나는 오늘 점검됩니다 404 조리트 위의 링크 결과.

Andrey E
그는 3년 전 댓글을 달았습니다
0

또한 우리 지역 위치 apiu 작동합니까 그냥 그랬다고. https://ip-api.io

39 의 here& 좋은 무료 서비스를 통해 공개 API:

&lt, http://www.hostip.info/use.html&gt.

이핀포드브 는 자유 데이터베이스 및 API 의 IP 국가, 그 반대의 경우도 마찬가지입니다. 그들이 사용하는 무료 데이터가 막스 린드. # 39 의 데이터를 얻을 수 있는 좋은 대안이 될 수 있고, 매달 업데이트되도록 it& 괜찮은 무료 정밀도에는.

Brad Koch
Jannie Theunissen
그는 10년 전 댓글을 달았습니다
0

보다 자신만의 데이터베이스를 유지 방법입니다. 그냥 테스트됨 it on 정말 잘 위 (우타이타니, 태국) 와 전송되었기 별색 생일날이야 멋지구리해요 찾기, 감사합니다!

내가 얼마나 정확히 알 수 있는 사이트 (hostip.info), t don& # 39 입니다. 난 그냥 내 나라가 참가하였습니다 해당 사이트 및 it 보고됨 캐나다라니. 미국 내 사무실 및 정보화전략계획 (isp), m i& # 39 만 사용하는 미국에서 운영하고 있다. # 39 의 it& 해결하십시오 않니다 수 있지만, 아마 이 서비스를 사용하는 경우 국가별 perezhilton. 추적할 수 있는 경우, ll # 39 의 객원 you& 무리라구 vmnet 데이터가 정확하다. 물론 I& # 39 m, 단 하나의 데이터 포인트. 난 그냥 조리트 다운로드했습니다 국가 데이터베이스, 이는 미국 내 IP 주소가 제대로 식별됨 .csv 파일이므로 있다.

또 다른 장점은 막스 린드 제품 라인 (유료, 무료) 는 데이터를 가지고 있는지, 어떤 전날에약혼자에게 don& # 39 는 성능 저하가 다른 웹 서비스 호출을 하는 시스템.

Mike
그는 9년 전 댓글을 달았습니다
0

이전에는 영국 및 it 모바일 (im), 브라질 리우데자네이루 기도하였나니 난 롬폭:)

내 서비스, http://ipinfo.io, 이를 위해 사용할 수 있습니다. Api 에 대한 자세한 내용은 전혀 다른 되돌려줍니다 대량의 IP 주소:

$ curl ipinfo.io/8.8.8.8
{
  "ip": "8.8.8.8",
  "hostname": "google-public-dns-a.google.com",
  "loc": "37.385999999999996,-122.0838",
  "org": "AS15169 Google Inc.",
  "city": "Mountain View",
  "region": "CA",
  "country": "US",
  "phone": 650
}

39, re 후에만 국가 코드를 추가해야 할 경우 you& 방금 번호/국가 URL:

$ curl ipinfo.io/8.8.8.8/country
US

39 의 here& 일반 PHP 기능을 사용할 수 있습니다.

function ip_details($ip) {
    $json = file_get_contents("http://ipinfo.io/{$ip}");
    $details = json_decode($json);
    return $details;
}

$details = ip_details("8.8.8.8");

echo $details->city;     // => Mountain View
echo $details->country;  // => US
echo $details->org;      // => AS15169 Google Inc.
echo $details->hostname; // => google-public-dns-a.google.com

이 예에서, ve i& # 39 를 사용하는 IP 8.8.8.8 신앙이니라 운영까지도 user& # 39 의 IP 에 대한 자세한 정보, 그냥 지나칠 '$ _SERVER [& # 39, REMOTE_ADDR& # 39,]' 를 사용할 수 있습니다. Http://ipw2200.sourceforge. 더 자세한 내용은 http://ipinfo.io/developers

이 시도하시겠습니까 php 코드

  <?php  $ip = $_SERVER['REMOTE_ADDR'];
    $json = file_get_contents("http://api.easyjquery.com/ips/?ip=".$ip."&full=true");
    $json = json_decode($json,true);
    $timezone = $json[localTimeZone];?>

이 질문 솔루션 제공 사용할 수 있습니다.

하지만 되돌려줍니다 2gb/s 자리 국가 코드.

google& # 39 의 클라이언트로카션 되돌려줍니다 (내 예)

latlng = new google.maps.LatLng(google.loader.ClientLocation.latitude, google.loader.ClientLocation.longitude);
location = "IP location: " + getFormattedLocation();
document.getElementById("location").innerHTML = location;

디지털 요소를 가장 정확한 것은 공짜 네타쿠티오노 너희는너희가 확보하십시오 이슬람세를 기간 중 대부분을. 디지털 요소점

s # 39 이 일을 할 수 있는 다음과 같은 웹 서비스 API& 사용할 수 있습니다.

see example of service: http://ip-api.com and usage: http://whatmyip.info

함수를 사용하여 이프트로카운트리 ($ ip) 에서 http://www.mmtutorialvault.com/php-ip-to-country-function/

IP2Location LITE 데이터베이스 풀려났거든 사용해 볼 수 있습니다

Mysql 에서 테이블을 생성하는 데

CREATE DATABASE ip2location;
USE ip2location;
CREATE TABLE `ip2location_db1`(
    `ip_from` INT(10) UNSIGNED,
    `ip_to` INT(10) UNSIGNED,
    `country_code` CHAR(2),
    `country_name` VARCHAR(64),
    INDEX `idx_ip_to` (`ip_to`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

데이터 가져오기할

LOAD DATA LOCAL
    INFILE 'IP2LOCATION-LITE-DB1.CSV'
INTO TABLE
    `ip2location_db1`
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
IGNORE 0 LINES;

Mysql 쿼리하려면 php 코드

<?php
// Replace this MYSQL server variables with actual configuration
$mysql_server = "mysql_server.com";
$mysql_user_name = "UserName";
$mysql_user_pass = "Password";

// Retrieve visitor IP address from server variable REMOTE_ADDR
$ipaddress = $_SERVER["REMOTE_ADDR"];

// Convert IP address to IP number for querying database
$ipno = Dot2LongIP($ipaddress);

// Connect to the database server
$link = mysql_connect($mysql_server, $mysql_user_name, $mysql_user_pass) or die("Could not connect to MySQL database");

// Connect to the IP2Location database
mysql_select_db("ip2location") or die("Could not select database");

// SQL query string to match the recordset that the IP number fall between the valid range
$query = "SELECT * FROM ip2location_db1 WHERE $ipno <= ip_to LIMIT 1";

// Execute SQL query
$result = mysql_query($query) or die("IP2Location Query Failed");

// Retrieve the recordset (only one)
$row = mysql_fetch_object($result);

// Keep the country information into two different variables
$country_code = $row->country_code;
$country_name = $row->country_name;

echo "Country_code: " . $country_code . "<br/>";
echo "Country_name: " . $country_name . "<br />";

// Free recordset and close database connection
mysql_free_result($result);
mysql_close($link);

// Function to convert IP address (xxx.xxx.xxx.xxx) to IP number (0 to 256^4-1)
function Dot2LongIP ($IPaddr) {
 if ($IPaddr == "")
 {
   return 0;
 } else {
   $ips = explode(".", $IPaddr);
   return ($ips[3] + $ips[2] * 256 + $ips[1] * 256 * 256 + $ips[0] * 256 * 256 * 256);
 }
}
?>

참조 ipdata.co 여러 데이터 포인트를 얻을 수 있는 ip 주소를.

Api 는 상당히 빠른 800M 세계 10 대 엔드포인트에 처리할 수 있으며, 각 페이징됩니다 &gt, 매일.

한 예로, s 컬 here& # 39.

curl https://api.ipdata.co/78.8.53.5
{
    "ip": "78.8.53.5",
    "city": "G\u0142og\u00f3w",
    "region": "Lower Silesia",
    "region_code": "DS",
    "country_name": "Poland",
    "country_code": "PL",
    "continent_name": "Europe",
    "continent_code": "EU",
    "latitude": 51.6461,
    "longitude": 16.1678,
    "asn": "AS12741",
    "organisation": "Netia SA",
    "postal": "67-200",
    "currency": "PLN",
    "currency_symbol": "z\u0142",
    "calling_code": "48",
    "flag": "https://ipdata.co/flags/pl.png",
    "emoji_flag": "\ud83c\uddf5\ud83c\uddf1",
    "time_zone": "Europe/Warsaw",
    "is_eu": true,
    "suspicious_factors": {
        "is_tor": false
    }
}⏎