이 프로젝트는 CSV 및 MMDB 형식의 위치 데이터베이스에 IP를 제공합니다.
이 저장소에는 country
, city
및 asn
파일의 3가지 유형의 IP 데이터베이스가 있습니다. 모두 고유한 표준 형식을 가지고 있습니다.
ip_range_start, ip_range_end, country_code
데이터 베이스 | 유형 | 특허 | 업데이트됨 | IPv4 | IPv6 | IPv4-번호 | IPv6 번호 |
---|---|---|---|---|---|---|---|
ASN | 국가 | CC0 | 일일 | CSV MMDB | CSV MMDB | CSV | CSV |
지오피드 + ASN | 국가 | CC0 | 일일 | CSV MMDB | CSV MMDB | CSV | CSV |
GeoFeed + Whois + ASN | 국가 | CC0 | 일일 | CSV MMDB | CSV MMDB | CSV | CSV |
IPtoASN | 국가 | IPtoASN의 PDDL | 일일 | CSV MMDB | CSV MMDB | CSV | CSV |
DB-IP 라이트 | 국가 | CC BY 4.0 DB-IP로 | 월간 간행물 | CSV MMDB | CSV MMDB | CSV | CSV |
DB-IP 라이트 + GeoFeed + Whois + ASN | 국가 | CC BY 4.0 DB-IP로 | 월간 간행물 | CSV MMDB | CSV MMDB | CSV | CSV |
GeoLite2 | 국가 | MaxMind의 GeoLite2 라이센스 | 주 2회 | CSV MMDB | CSV MMDB | CSV | CSV |
GeoLite2 + GeoFeed + Whois + ASN | 국가 | MaxMind의 GeoLite2 라이센스 | 일일 | CSV MMDB | CSV MMDB | CSV | CSV |
ip_range_start, ip_range_end, country_code, city, state1, state2, latitude, longitude, postcode, timezone
데이터 베이스 | 유형 | 특허 | 업데이트됨 | IPv4 | IPv6 | IPv4-번호 | IPv6 번호 |
---|---|---|---|---|---|---|---|
DB-IP 라이트 | 도시 | CC BY 4.0 DB-IP로 | 월간 간행물 | CSV.gz CSV.7z MMDB | CSV.gz CSV.7z MMDB | CSV.gz CSV.7z | CSV.gz CSV.7z |
GeoLite2 | 도시 | MaxMind의 GeoLite2 라이센스 | 주 2회 | CSV.gz CSV.7z MMDB | CSV.gz CSV.7z MMDB | CSV.gz CSV.7z | CSV.gz CSV.7z |
ip_range_start, ip_range_end, autonomous_system_number, autonomous_system_organization
데이터 베이스 | 유형 | 특허 | 업데이트됨 | IPv4 | IPv6 | IPv4-번호 | IPv6 번호 |
---|---|---|---|---|---|---|---|
RouteViews + ASN + DB-IP | ASN | RouteViews 및 DB-IP의 CC BY 4.0 | 일일 | CSV MMDB | CSV MMDB | CSV | CSV |
IPtoASN | ASN | IPtoASN의 PDDL | 일일 | CSV MMDB | CSV MMDB | CSV | CSV |
DB-IP 라이트 | ASN | CC BY 4.0 DB-IP로 | 월간 간행물 | CSV MMDB | CSV MMDB | CSV | CSV |
GeoLite2 | ASN | MaxMind의 GeoLite2 라이센스 | 주 2회 | CSV MMDB | CSV MMDB | CSV | CSV |
각 파일 형식에 대한 설명은 해당 디렉터리에 제공됩니다.
특정 유형의 모든 파일은 동일한 파일 형식을 공유합니다. 예를 들어 하나의 asn
파일을 다른 asn
파일로 바꿀 수 있습니다.
5개의 RIP(afrinic, apnic, arin, lacnic,rip ncc) IP-ASN-국가 데이터베이스를 병합하여 생성되었습니다. ASN(자율 시스템 번호)은 IANA가 자율 시스템(AS)에 할당한 고유 번호입니다.
WHOIS 데이터베이스에서 제공하는 5개의 RIP(afrinic, apnic, arin, lacnic,rip ncc)를 병합하여 생성되었습니다.
OpenGeoFeed의 GeoFeed 데이터베이스와 공급자 지오피드 컬렉션 등을 병합하여 생성됩니다.
우리는 이 데이터베이스를 사용하여 asn의 ipv4 주소에서 AS 번호를 얻습니다. 이는 CC BY 4.0에 따라 라이센스가 부여되므로 asn 데이터베이스를 사용하려면 RouteViews에 대한 속성을 생성해야 합니다 .
원본 사이트에서 매시간 업데이트되는 데이터베이스를 TSV 형식으로 다운로드할 수 있습니다. 이는 Public Domain Dedication and License v1.0에 따라 라이센스가 부여됩니다. 위의 ASN
데이터베이스와 몇 가지 차이점이 있습니다.
ip-to-asn-lite, ip-to-country-lite 또는 ip-to-city-lite에서 라이센스를 다운로드하고 읽을 수 있습니다. asn에 사용되는 AS 조직 이름의 대부분은 ip-to-asn-lite 데이터베이스를 사용합니다. 또한 ip-to-asn-lite를 사용하여 보충적으로 IP 주소에서 AS 번호를 가져옵니다.
이러한 데이터베이스는 CC BY 4.0에 따라 라이센스가 부여되므로 DB-IP 데이터베이스를 사용하려면 DB-IP.com에 대한 속성을 생성해야 합니다 .
웹 애플리케이션의 경우 데이터베이스의 결과를 표시하거나 사용하는 페이지에 DB-IP.com으로 돌아가는 링크를 포함해야 합니다. HTML 코드 스니펫 <a href='https://db-ip.com/'>IP Geolocation by DB-IP</a>
을 코드에 붙여넣으면 됩니다.
더 나은 정확성이 필요하거나 속성이 없거나 일일 업데이트가 필요하지 않은 경우 db-ip 상용 버전을 사용하세요.
GeoLite2는 MaxMind에 의해 만들어졌습니다. GeoLite2의 라이선스는 GEOLITE2_LICENSE에 작성되어 있으며 최종 사용자 라이센스 계약(EULA)은 GEOLITE2_EULA에 작성되어 있습니다. 이러한 데이터베이스를 사용하는 경우 GEOLITE2_LICENSE 및 GEOLITE2_EULA 파일을 주의 깊게 읽으십시오. 이 패키지에는 다음과 같은 특정 제한 사항과 의무가 포함되어 있습니다.
라이브러리가 데이터베이스를 업데이트하는 것을 막을 수는 없습니다.
GeoLite2 데이터를 사용할 수 없습니다:
FCRA 목적을 위해,
특정 가구나 개인을 식별하기 위해.
최신 버전의 GeoLite2 EULA를 읽을 수 있습니다. GeoLite2 데이터베이스는 MaxMind의 CC BY-SA 4.0에 따라 제공되므로 GeoLite2 데이터베이스를 사용하려면 MaxMind에 대한 속성을 생성해야 합니다 . 더 나은 정확도가 필요한 경우 상용 버전인 GeoIp2를 사용하세요.
사용 사례에 따라 다릅니다! 하지만 몇 가지 간단한 권장 사항이 있습니다.
우편번호나 시간대가 필요한 경우: geolite2-city
CC-BY 라이센스가 있는 도시 데이터가 필요한 경우: dbip-city
공개 도메인 라이선스가 있는 국가 데이터베이스가 필요한 경우: geo-whois-asn-country
높은 정확도와 넓은 IP 범위의 국가 데이터베이스가 필요한 경우: geolite2-country가 적용되는 IP 범위에 대한 geolite2-country
geolite2-country
다른 IP 범위에 대한 geo-whois-asn-country
와 동일한 geolite2-geo-whois-asn-country
-asn-country. (2024년 8월 geolite2-country
대비 IPv4는 0.10%, IPv6는 2.34% 더 넓어짐)
ASN 데이터베이스가 필요한 경우: asn
IP 주소와 country_code에 대한 확정적인 정보가 없기 때문에 Public Domain 데이터의 정확성을 질적으로 논하기는 어렵지만, GeoLite2와 DbIp Lite의 국가 정보와 비교하면 대략적인 정확성을 추정하는 것은 가능하다. 높은 정확도로 잘 알려진 GeoLite2의 데이터베이스와 다른 데이터베이스의 차이점을 비교해 보면 Public Domain의 정확성을 알 수 있습니다.
데이터 베이스 | 같은 | 차이점 | 비어 있는 | 추가의 |
---|---|---|---|---|
dbi-국가 | 96.15% | 3.85% | 0.00% | 0.42% |
ASN 국가 | 95.97% | 4.00% | 0.03% | 0.03% |
지역-국가-국가 | 97.26% | 2.71% | 0.03% | 0.06% |
지역-whois-asn-국가 | 96.98% | 2.99% | 0.03% | 0.12% |
IPTOASN-국가 | 76.80% | 4.99% | 18.21% | 1.26% |
측정은 2024년 10월 9일에 수행되었습니다. IPv6 범위가 너무 넓기 때문에 여기에서의 측정은 IPv4 결과로 제한됩니다. "Same" + "Diff" + "Empty"는 GeoLite2 IP 범위를 표시하며 GeoLite2 IP 범위 크기는 100%로 나열됩니다.
"동일"은 GeoLite2의 국가 코드와 동일한 데이터베이스의 국가 코드 비율을 나타냅니다.
"Diff"는 GeoLite2 country_code와 다른 데이터베이스의 country_code 비율을 나타냅니다.
"비어 있음"은 GeoLite2 country_code가 있지만 데이터베이스에 해당 country_code가 없는 IP의 비율을 표시합니다.
"추가"는 데이터베이스에 국가 코드가 나열되어 있지만 GeoLite2 국가 코드가 나열되지 않은 IP의 비율을 나타냅니다.
iptoasn-country를 제외한 모든 데이터에서 country_code는 96% 이상의 사례에서 GeoLite2 결과와 일치하는 것을 볼 수 있습니다. 업데이트 시기와 정보 우선순위의 차이로 인해 결과에 다소 차이가 있기는 하지만, Public Domain 데이터는 어느 정도의 정확성을 보여준다고 믿습니다.
MMDB 파일을 기존 프로젝트에 통합하려는 경우 도움이 될 수 있는 여러 라이브러리가 있습니다.
MMDB 파일을 사용할 때 라이브러리는 여러 언어로 존재합니다. .NET, C, Java, Node.js, Perl, PHP, Python 및 Ruby 등 많은 인기 언어에 대한 공식 Maxmind 개발 라이브러리와 Erlang, Go, Rust 등의 타사 리더가 있습니다.
CSV 파일에서 자신만의 MMDB 파일을 생성하려는 경우 (형식을 사용자 정의하기 위해) Go 및 Perl (현재 보관됨)이라는 두 가지 공식 라이브러리가 있습니다. Python 및 Rust와 같은 일부 타사 옵션도 있습니다.
도서관 | 언어 | 설명 | 유형 | 자동 업데이트 |
---|---|---|---|---|
IP 위치 API | Node.js | 메모리 내 데이터베이스(7MB RAM)를 사용하여 빠른 IP 국가 조회 | country city | ✓ |
국가 국가별 추가 | 브라우저 js | 브라우저에서 국가 조회에 대한 IP | country | ✓ |
지오코드 지오코드-추가 | 브라우저 js | 브라우저에서 지오코드 조회를 위한 IP | country latitude longitude | ✓ |
애플리케이션 | 언어 | 설명 | 유형 | 자동 업데이트 |
---|---|---|---|---|
IP_위치_서버 | 자바 | IP 주소를 위치에 매핑하는 인메모리 GRPC 및 HTTP 서버 (최소 1.5GB RAM 필요) | country asn city | ✓ |
IP 위치 API | 가다 | MMDB, PostgreSQL, MySQL/MariaDB 및 SQLite를 생성/지원하는 API 서버 | country asn city | ✓ |
IP-geo-API | 가다 | 인메모리 API 서버 | country | ✘ |
IP정보오프라인 | 윈도우 | IP 주소 (로컬 데이터) 에 대한 정보를 표시하는 데스크탑 도구 | country asn city | ✘ |
도구 | 설명 |
---|---|
IP 위치-mmdb | 이 데이터베이스의 CSV 파일을 MMDB 파일로 기본 변환합니다. |
mmdbmeld | 이 데이터베이스의 CSV 파일에서 MMDB 파일 생성 및 사용자 정의 |
필요한 라이센스는 사용하는 데이터베이스에 따라 다릅니다. 사용하기 전에 각 데이터베이스 라이센스를 주의 깊게 읽으십시오.
PDDL(ODC Public Domain Dedication and Licence) 또는 CC0(Creative Commons Zero) 라이선스가 부여된 데이터베이스를 어떤 목적으로도 저작자 표시 없이 사용할 수 있습니다.
sapics/ip-location-db에 다시 연결하고 다른 사람들이 찾을 수 있도록 이 프로젝트에 별표를 표시해 주시면 감사하겠습니다.