tdulcet / ip-geolocation-dbs

πŸ“ IPv4 and IPv6 Geolocation databases that automatically update daily

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CI pipeline status

IP Geolocation Databases

IPv4 and IPv6 Geolocation databases that automatically update daily.

Copyright Β© 2021 Teal Dulcet

Preprocessed free IPv4 and IPv6 Geolocation databases in TSV format that are automatically updated daily. Includes both country only and full location (state/providence/region and city) databases. Based on the ip-location-db repository, whose update scripts were not open source. The scripts used by this repository are 100% open source.

All databases are provided uncompressed and in a consistent TSV format with no quoting. Localized versions are available. The databases are designed so that applications can directly download them, without developers needing to release an entire software update. This allows users to enjoy much more frequent updates and thus more accurate geolocation information.

Note

On January 1, 2024, the databases changed from CSV to TSV format and the IP addresses from decimal to hexadecimal format to reduce their size.

❀️ Please visit tealdulcet.com to support this project and my other software development.

The databases are hosted on GitLab because while it now has a 100 MiB file size limit for regular files, it has no maximum file size for Git Large File Storage (LFS) files, just a 10 GiB repository size limit. In contrast, GitHub has a 100 MiB file size limit and strict bandwidth limits on Git LFS files. Commits older than one day (previously one month) are automatically squashed to keep the repository size under that limit. Please see the CHANGELOG for the full history. The databases are now updated on GitHub as it has no limit for CI minutes for public repositories. In contrast, GitLab has a 400 CI minutes/month limit.

Database comparison

Click link to view the full table with all the files or scroll right Β»

Database License Type Updated Download IPv4 Download IPv6
GeoFeed + Whois + ASN πŸ…­πŸ„
CC0 1.0
Country Daily
IPv4: 2024-08-07
IPv6: 2024-08-07
⬇️ ipv4.tsv
4.761MiB (4.993MB) – 238,359 rows – 247 unique countries
Checksums (click to show)
MD5: dd8d8961327b721b5e2ff99047a70626
SHA1: 6395b744064457e4d23433be8ec0b482bab1fdfc
SHA256: b19916c15c6f5c308850eeebefe17bf80f7900ac780fbcccee62dc5fee068c90
⬇️ ipv6.tsv
5.771MiB (6.051MB) – 87,698 rows – 250 unique countries
Checksums (click to show)
MD5: 0d093fe04fd838bf64cf3bbc898ecbe0
SHA1: 6778fb508084d3f486a690585313a434b3310908
SHA256: cd83dad87f3d7d9d24bafbf9659ab5525ea3be55128d617b66397f86fb96feda
iptoasn.com πŸ„
PDDL v1.0
Country Daily
IPv4: 2024-08-07
IPv6: 2024-08-07
⬇️ ipv4.tsv
8.123MiB (8.518MB) – 406,803 rows – 240 unique countries
Checksums (click to show)
MD5: d4b0c45e01b6f57bc7beb11563c20bf2
SHA1: 13ef826f544a0f7451b6fe52e981601272fb3a72
SHA256: 014e51984df7feb451cc5e8154a43e051549923be029f8c44d19b3aa1221db49
⬇️ ipv6.tsv
6.591MiB (6.911MB) – 100,271 rows – 224 unique countries
Checksums (click to show)
MD5: ad4ce5aac2666dfe2d7fef229788a207
SHA1: 6f95c7c1f86d459e98e1da7541db22f57d0ce17b
SHA256: 46ae4ee8d3c7b0bbdd3c2fc4cc22bc6a5873688e3f21d47f65a81409488631db
IPinfo.io πŸ…­πŸ…―πŸ„Ž
CC BY-SA 4.0
Country Daily
2024-08-07
⬇️ ipv4.tsv
17.01MiB (17.84MB) – 851,121 rows – 246 unique countries
Checksums (click to show)
MD5: 68f3b609ffe7dbedf6cea570c0c5cc62
SHA1: 75e21ebd098a5b0b9458d905850a488d04ff9df1
SHA256: 76c2487890efbb3ede0ee274b4ca880c6b98acaec454ae7ac96dc044fbc09cd5
⬇️ ipv6.tsv
85.68MiB (89.85MB) – 1,302,104 rows – 246 unique countries
Checksums (click to show)
MD5: d9fb33e1871d9863c9645dc7417f3cb5
SHA1: 2d17bcb397401a55d51dca87a85f4ab3377e69c6
SHA256: 6cb13183363039455115d989b328253625049410ef6c68c6821ae2ab73497e4e
DB-IP Lite πŸ…­πŸ…―
CC BY 4.0
Country Monthly
2024-08-01
⬇️ ipv4.tsv
6.930MiB (7.266MB) – 348,283 rows – 242 unique countries
Checksums (click to show)
MD5: d0fbc41bc5bb2b90a8e0d5e5ce544a9e
SHA1: 1e8f1c989a09bda0597a4fd20bb1baf0e1ac7146
SHA256: 5ca608bc0834afa2ddcddbc57debfbc70f177637b74991fa1f5eac6b4004250c
⬇️ ipv6.tsv
17.13MiB (17.96MB) – 260,326 rows – 250 unique countries
Checksums (click to show)
MD5: 7d830eaf780889ad98001bab48d5aa45
SHA1: b197b3368dda5c090062b0f952b463dcc36089a0
SHA256: c9b5f78bc10fd064cbc6e77285c497db8377b1d955acc23e6e6498b158cf6e7a
Full Location Monthly
2024-08-01
⬇️ ipv4.tsv
186.4MiB (195.5MB) – 3,254,855 rows – 242 unique countries
Checksums (click to show)
MD5: 0a701f04a73cc8f80f1d62d7d31565c1
SHA1: c08290366ff76b789e82bc1d59e49f3a8b096083
SHA256: 05ad2982bf2f1253f055b5d985d376d16bb31cace83cb242d464f0595b931ab4
⬇️ ipv6.tsv
351.7MiB (368.8MB) – 3,417,387 rows – 250 unique countries
Checksums (click to show)
MD5: f8e978ebf3bde1f974ba0a4b6532bcd5
SHA1: ce0a2c31a0c136ca457da29799b4d9d902203525
SHA256: 04b7870a00431ac40aa31592ac986f30dc8fcd0035a95ab9beee69df67b812b1
IP2Location LITE πŸ…­πŸ…―πŸ„Ž
CC BY-SA 4.0
Country Bimonthly
IPv4: 2024-08-07
IPv6: 2024-08-07
⬇️ ipv4.tsv
4.752MiB (4.983MB) – 237,847 rows – 243 unique countries
Checksums (click to show)
MD5: 41a19f3b324b30f1b8e58614ced6c3eb
SHA1: 0ae869a9dcd1e992112ca1f19381c40b51f06f2b
SHA256: 16ded9b540a430569f72a4e9231fd255fdabd1dda07b4b19d35f69b1de8705a5
⬇️ ipv6.tsv
18.46MiB (19.36MB) – 280,554 rows – 249 unique countries
Checksums (click to show)
MD5: 48429e636d89243b95e58e224ddcab83
SHA1: 62476d74b99370f1cf7032a405e741d78678dfbd
SHA256: 0cf7afea40b0dab546ce14724386b222921daeee0d831eecb913854ed7bdc0f0
Full Location Bimonthly
IPv4: 2024-08-07
IPv6: 2024-08-07
⬇️ ipv4.tsv
172.1MiB (180.4MB) – 2,980,631 rows – 243 unique countries
Checksums (click to show)
MD5: 1b3e4b34496e91b79950bfd2ba90c64e
SHA1: 65cd184136a3ebc843b8b661eb3d7e435d8e169b
SHA256: 8fe209a185d5393cb91b8ddc3d044e30a9bbb3dfd9681ecce9b281cc7e030387
⬇️ ipv6.tsv
205.2MiB (215.2MB) – 1,986,964 rows – 249 unique countries
Checksums (click to show)
MD5: cbf91d149bffc17e272f874de287e1a0
SHA1: d7fda16f424fa431e16b71116da2588052e905e8
SHA256: 28d426aa8fadf9fdb6308784807383ed47871f07d6c9d66d67e14bc55327d0c1
GeoLite2 πŸ…―πŸ„Ž
GeoLite2 EULA
Country Weekly
IPv4: 2024-08-06
IPv6: 2024-08-06
⬇️ ipv4.tsv
9.880MiB (10.36MB) – 494,929 rows – 251 unique countries
Checksums (click to show)
MD5: 49b558d77c72732d8d17e54b993c0cfe
SHA1: 78c8696b2efea59abb99516d4471581850e18dae
SHA256: 36682eb79ff481a0259303dc42f2ccdffae5b2bfc39774c5a0df26a956bfa64d
⬇️ ipv6.tsv
25.63MiB (26.87MB) – 389,492 rows – 251 unique countries
Checksums (click to show)
MD5: e676fc0a2c3747b15b12f8ace0d2c6b6
SHA1: d3d45e561827a58c0cde1dc6dda159db85924a64
SHA256: e337087de06d5ca3b77aa8bf821be2bf5eb7444cb56e632b553533e0de3f87b2
Full Location Weekly
IPv4: 2024-08-06
IPv6: 2024-08-06
⬇️ ipv4-de.tsv
120.7MiB (126.6MB) – 2,417,808 rows – 251 unique countries
Checksums (click to show)
MD5: 0633a3e6f27da7d9e68584818b533c7a
SHA1: 3e93e0e64f3cbdeed658c753781422faf45588f2
SHA256: 379686845dcbd84f2ef87d8ebc2df9187375120cb3c14ad59290a8c3e1cc8783
⬇️ ipv4-en.tsv
129.7MiB (136.0MB) – 2,417,808 rows – 251 unique countries
Checksums (click to show)
MD5: 99a7ed42445a3cda611783669e19eb69
SHA1: 3b2083c35a8cb3ddad4ab52012e7554cdc2d37e7
SHA256: fa52f436d48d1ce7c779a96957773ed2fb4ab0ae9e9efc486f223e0cb3b5e2ee
⬇️ ipv4-es.tsv
120.5MiB (126.3MB) – 2,417,808 rows – 251 unique countries
Checksums (click to show)
MD5: 6b821cd5c8a1e41768ab66bcd7aad7e9
SHA1: a4a799af187f937655ab518bfd56fa66bb1db224
SHA256: d23f7189f3d48ed932dd2f865888f6f535892c720993f33588d4eff3aa030708
⬇️ ipv4-fr.tsv
122.9MiB (128.9MB) – 2,417,808 rows – 251 unique countries
Checksums (click to show)
MD5: b068076f93e19061af747c9728eac034
SHA1: bfa18ac80f8a5355408881e6b3aa421dc869a5df
SHA256: be60768bf79969b4e87aea976a76d58a70b6945095adf18cbd177f5c08682784
⬇️ ipv4-ja.tsv
150.5MiB (157.8MB) – 2,417,808 rows – 251 unique countries
Checksums (click to show)
MD5: 1d0a9d91547b0f4c0fb5eb81cf9ac280
SHA1: 026e2dcaee3a3a6eef3ae0ea0c34bd78f4aa2fe4
SHA256: a3ad978d8bebb72d4c9f2103133e293ee59f1e3cc1b471de0c7134a7f3e7ef1a
⬇️ ipv4-pt-BR.tsv
119.7MiB (125.5MB) – 2,417,808 rows – 251 unique countries
Checksums (click to show)
MD5: 5bd3d4ead6c215898e99ec1622ccfa1b
SHA1: 4f188c6a069f9293073e28d20525120283a49fd7
SHA256: 163c9c0421f13c4624a7c89afd767814212ffb9c496641e673514c82ea26a20c
⬇️ ipv4-ru.tsv
146.8MiB (153.9MB) – 2,417,808 rows – 251 unique countries
Checksums (click to show)
MD5: 95c6ae3200b093f4eb1736e901fe1707
SHA1: dee821d9e083f68902c1b32d20c30cb02ca0297e
SHA256: 6e953aa91004dae5814ee6dc4529bb00c61b8edc57bee2702af0af00d5ee378f
⬇️ ipv4-zh-CN.tsv
123.2MiB (129.1MB) – 2,417,808 rows – 251 unique countries
Checksums (click to show)
MD5: 34d7dfc35ef1198ccba46d0f7d26f789
SHA1: f431f3a35e6821be9462fe9c0f22acfcb8da16e0
SHA256: d289daaec0a3d0ae52ee9b7e4ce0efd57afa21823fdaff325c96e6bff2a792fe
⬇️ ipv6-de.tsv
125.9MiB (132.1MB) – 1,363,938 rows – 251 unique countries
Checksums (click to show)
MD5: 25d94c9cc672ed408b295e9dd04ee1ba
SHA1: 5482dc7ba792a2ef4676474fd6ba0bca2e8fb7f2
SHA256: e0a7c8fa22cae033bae05ef0b78adf82d52f9eaaf91ae7a26d17c280f33e8b8e
⬇️ ipv6-en.tsv
130.1MiB (136.5MB) – 1,363,938 rows – 251 unique countries
Checksums (click to show)
MD5: 2f53cb8ae8316c11705d4a05bf5396f1
SHA1: 1f5126e0a8221ca66af7806d59db154ded623ab2
SHA256: 43845076d760c239bf9094698108f6ab63b76e4f5a646bcb338575ef69f1227b
⬇️ ipv6-es.tsv
126.3MiB (132.4MB) – 1,363,938 rows – 251 unique countries
Checksums (click to show)
MD5: 36354110107685a140fd3d66dab1522c
SHA1: 2a2723b7c31ce36edb7d6af717f118c36c554778
SHA256: 6407000ff80759ee9196f66c83a0350c4ad9fb16f1f40bfc7fdb090aa31ecd69
⬇️ ipv6-fr.tsv
126.8MiB (132.9MB) – 1,363,938 rows – 251 unique countries
Checksums (click to show)
MD5: 79cfdc2ca00dffbd675c834a7abf925b
SHA1: 333e7d36d6ab1f6c36e2f2f0d684aa07d4943fc7
SHA256: 5daafdbd743f48169d8e1e44f657a2a9200ad90d75ca0db799ac86247bb0399f
⬇️ ipv6-ja.tsv
138.4MiB (145.1MB) – 1,363,938 rows – 251 unique countries
Checksums (click to show)
MD5: 45296888220f1e6e07f6f75eabbe71fa
SHA1: 849bfeeba86f936624a92778dabdfa25f46d84cf
SHA256: 7882d43b7d417f6e8d5f3c19e9731f6d4c3556d7279f783f2f96c5c23dc94f51
⬇️ ipv6-pt-BR.tsv
125.9MiB (132.0MB) – 1,363,938 rows – 251 unique countries
Checksums (click to show)
MD5: 02863d22fa221dbfd6f29d119b7de35f
SHA1: 62b9628cee38d2ea7742b51e8319569601bf9cd1
SHA256: 59346a450f9b3425d78fce178de94bc3f23d17d68d2f9c0fbb1d8b6026a7349e
⬇️ ipv6-ru.tsv
137.4MiB (144.1MB) – 1,363,938 rows – 251 unique countries
Checksums (click to show)
MD5: 908b29647cb27b150c0a0b0ac96b6d7a
SHA1: 576f58d4bece7bcaadef126640de6e92e3866eb0
SHA256: 64d066e077d152e5e00775513d78e96bc71757d6f23fae9cc3af8676b3cc3f8c
⬇️ ipv6-zh-CN.tsv
127.9MiB (134.1MB) – 1,363,938 rows – 251 unique countries
Checksums (click to show)
MD5: cacddc1361833b4475d557617b376511
SHA1: 3340d3ceaba2f4c370e772e103f055789451d919
SHA256: a9dee0f0dd83ed7bd7317273f9d83f002f707e4fc76d298d9ab69c0bc7eab269

Databases

GeoFeed + WHOIS + ASN database

Uses the ip-location-db GeoFeed + Whois + ASN database. It is created by merging the five Regional Internet Registries (RIRs) (AFRINIC, APNIC, ARIN, LACNIC, RIPE NCC) IP-ASN, WHOIS and OpenGeoFeed databases. Licensed Public Domain (CC0 1.0).

TSV format

ip_range_start ip_range_end country_code

iptoasn.com database

Uses the iptoasn.com database. Licensed Public Domain Dedication (PDDL v1.0). If you need hourly updates, you can use the source databases which are in TSV format with gzip compression.

TSV format

ip_range_start ip_range_end country_code

IPinfo.io database

Uses the IPinfo.io database. Licensed Creative Commons Attribution-ShareAlike 4.0 International License (CC BY-SA 4.0), so users must attribute it to IPinfo:

<p>IP address data powered by <a href="https://ipinfo.io">IPinfo</a></p>
TSV format

ip_range_start ip_range_end country_code

DB-IP Lite databases

Uses the DB-IP Lite databases. Licensed Creative Commons Attribution 4.0 International License (CC BY 4.0), so users must attribute it to DB-IP:

<a href='https://db-ip.com/'>IP Geolocation by DB-IP</a>
Country TSV format

ip_range_start ip_range_end country_code

Full location TSV format

ip_range_start ip_range_end country_code state/providence city latitude longitude

Note that state/providence and city are blank for some rows.

GeoLite2 databases

Uses the MaxMind GeoLite2 databases. Licensed under the GeoLite2 end-user license agreement (EULA), similar to the Creative Commons Attribution-ShareAlike 4.0 International License (CC BY-SA 4.0), so users must attribute it to MaxMind:

This product includes GeoLite2 data created by MaxMind, available from
<a href="https://www.maxmind.com">https://www.maxmind.com</a>.

Localized versions of the Full location databases are available. See the filenames in the table above for the supported locales.

Country TSV format

ip_range_start ip_range_end country_code

Full location TSV format

ip_range_start ip_range_end country_code state/providence_2 state/providence_1 city latitude longitude

Note that country_code, state/providence_2, state/providence_1 and city are blank for some rows.

IP2Location LITE databases

Uses the IP2Location LITE databases. Licensed Creative Commons Attribution-ShareAlike 4.0 International License (CC BY-SA 4.0), so users must attribute it to IP2Location:

This site or product includes IP2Location LITE data available from <a href="https://lite.ip2location.com">https://lite.ip2location.com</a>.
Country TSV format

ip_range_start ip_range_end country_code

Full location TSV format

ip_range_start ip_range_end country_code state/providence city latitude longitude

Note that state/providence and city are blank for some rows.

TSV format

See above for the specific format of each database.

IP address ranges

ip_range_start and ip_range_end is an IP address range.

  • IPv4: 1000000 10000FF AU means that the IP addresses between 1.0.0.0 and 1.0.0.255 inclusive are in Australia πŸ‡¦πŸ‡Ί (AU country code). 1000000 is the hexadecimal format of the IP address 1.0.0.0. The numbers are 32-bit unsigned integers.
  • IPv6: 20010200000000000000000000000000 20010200FFFFFFFFFFFFFFFFFFFFFFFF JP means that the IP addresses between 2001:200:: and 2001:200:ffff:ffff:ffff:ffff:ffff:ffff inclusive are in Japan πŸ‡―πŸ‡΅ (JP country code). 20010200000000000000000000000000 is the hexadecimal format of the IP address 2001:200::. The numbers are 128-bit unsigned integers.

Country code

country_code is the two-letter code defined in ISO 3166-1 alpha-2.

Contributing

Merge requests welcome! Ideas for contributions:

  • Improve the performance of the update scripts.
  • Reduce the size of the databases.
  • Provide localized versions of the IP2Location databases using their separate Region Multilingual and City Multilingual Databases.
  • Add more databases.

About

πŸ“ IPv4 and IPv6 Geolocation databases that automatically update daily

License:GNU General Public License v3.0