IPNetDB

The downloadable, embeddable internet network information database

IPNetDB is a downloadable database containing information on IP addresses and the internet in the mmdb format. The database is split into two files, one database of prefix information that can be queried by IP address and the other to look up networks by autonomous systems number.
IPNetDB databases are small enough to be deployed inside applications to provide advanced routing information to applications, such as identifying traffic from a particular network and providing additional information on client IP addresses.
The databases are updated daily and were last generated on the 23rd of April 2025.
By downloading or using IPNetDB databases you agree to our licence. You can automate deployments by downloading the databases every Monday using the JSON-encoded latest file list. The data contained in IPNetDB databases is as correct as we can make it but some information may not be perfectly accurate. Use in your application is at your own risk.

What's in the database?

The IPNetDB prefix database contains the following information. The database is queried by IP address.
Field Example Description
allocation 8.0.0.0/9 CIDR allocated by the registry that contains the IP address
allocation_cc US Two letter country code recorded at the registry for the allocation
allocation_registry arin Registry that has allocated the allocation
allocation_status allocated Allocation status at the registry
as 15169 ASN of the IP address, if multiple origins one is selected
as_cc US Two letter country code recorded at the registry for the ASN
as_entity Google LLC Name of the entity recorded as owning the ASN at the registry
as_name GOOGLE ASN name recorded at the registry
as_private False True if the ASN is not in a registry allocation and is a private ASN
as_registry arin Registry that has allocated the ASN
prefix 8.8.8.0/24 CIDR advertised the public routing table that contains the IP address
prefix_asset [] An array or list of ASNs if the prefix is advertised in an AS set
prefix_assignment allocation Prefix assignment status at the registry
prefix_bogon False True if the prefix is not in a registry allocation and is a bogon
prefix_cc NL Two letter country code recorded at the registry for the prefix
prefix_entity Google LLC Name of the entity recorded as owning the prefix at the registry
prefix_name LVLT-GOGL-8-8-8 Prefix name recorded at the registry
prefix_origins [15169] An array or list of all ASNs that have advertised the prefix
prefix_registry arin Registry that has allocated the prefix
rpki_status valid RPKI status of the advertisment, one of "unsigned", "valid" or "invalid"
ix {'organisation': 'Equinix, Inc.', 'exchange': 'Equinix Bogota', 'name': 'Amazon IVS / Twitch', 'speed': 10000} Internet exchange information known for this IP, including the exchange, peering name and port speed
The IPNetDB ASN database contains the following information. The database is queried by autonomous systems number.
Field Example Description
as 58682 AS number
cc BD Two letter country code recorded at the registry for the ASN
entity Level3 Carrier Ltd. Name of the entity recorded as owning the ASN at the registry
in_use True True if the ASN advertises routes or has peers
ipv4_prefixes ['103.15.40.0/24', '103.15.41.0/24'] Array or list of IPv4 prefixes the ASN advertises
ipv6_prefixes ['2404:c900:4::/48', '2404:c900:5::/48'] Array or list of IPv6 prefixes the ASN advertises
name LEVEL3-BD ASN name recorded at the registry
peers [6939, 137409, 2914] Array or list of ASNs this ASN has peering with
private False True if the ASN is not in a registry allocation and is a private ASN
registry arin Registry that has allocated the ASN
status allocated Allocation status at the registry
ix [{'exchange': 'Equinix London','ipv4': '103.15.40.2', 'ipv6': '', 'name': 'LEVEL3', 'speed': 10000},] Internet exchange locations known for this ASN including IPs and port speed in megabits

Usage

The mmdb file format, short for MaxMind Data Base, used by IPNetDB is compatible with all existing libraries that can read mmdb files. Any language or server that is uses libmaxminddb can read IPNetDB databases. Usage examples:

Python IP lookup for 208.115.128.62

$ pip install maxminddb
$ python
Python 3.9.5
Type "help", "copyright", "credits" or "license" for more information.
>>> import maxminddb, pprint
>>> reader = maxminddb.open_database('ipnetdb_prefix_latest.mmdb')
>>> data = reader.get('208.115.128.62')
>>> pprint.pprint(data)
{'allocation': '208.115.128.0/20',
'allocation_cc': 'US',
'allocation_registry': 'arin',
'allocation_status': 'allocated',
'as': 264668,
'as_cc': 'EC',
'as_entity': 'NEGOCIOS Y TELEFONIA NEDETEL S.A.',
'as_name': '',
'as_private': False,
'as_registry': 'arin',
'ix': {'exchange': 'Equinix Bogota',
       'organisation': 'Equinix, Inc.',
       'name': 'Amazon IVS / Twitch',
       'speed': 10000},
'prefix': '208.115.128.0/24',
'prefix_asset': [],
'prefix_assignment': 'assignment',
'prefix_bogon': False,
'prefix_cc': 'EC',
'prefix_entity': 'NSI Hosting',
'prefix_name': 'EQUINIX-IX-BG',
'prefix_origins': [264668],
'prefix_registry': 'arin',
'rpki_status': 'unsigned'}

Python ASN lookup for AS58682

Some maxxminddb libraries, like the Python bindings, require the query to be in the format of an IP address. You can convert your ASN from a 32bit integer into a dotted quad format first if this is required as in the example below.

$ pip install maxminddb
$ python
Python 3.9.5
Type "help", "copyright", "credits" or "license" for more information.
>>> import maxminddb, pprint, ipaddress
>>> reader = maxminddb.open_database('ipnetdb_asn_latest.mmdb')
>>> asn_in_ip_format = ipaddress.ip_address(58682)
>>> data = reader.get(asn_in_ip_format)
>>> pprint.pprint(data)
{'as': 58682,
'cc': 'BD',
'entity': 'Level3 Carrier Ltd.',
'in_use': True,
'ipv4_prefixes': ['103.15.40.0/24',
                  '103.15.41.0/24',
                  '103.15.42.0/24',
                  '103.15.43.0/24',
                  '103.124.226.0/24',
                  '103.124.225.0/24',
                  '103.124.227.0/24',
                  '43.228.208.0/24',
                  '43.228.209.0/24'],
'ipv6_prefixes': ['2404:c900:4::/48',
                  '2404:c900:5::/48',
                  '2404:c900:a::/48',
                  '2404:c900:1::/48',
                  '2404:c900:3::/48',
                  '2404:c900:6::/48',
                  '2404:c900:8::/48',
                  '2404:c900:9::/48',
                  '2404:c900:b::/48'],
'name': 'LEVEL3-BD',
'peers': [6939,
          137409,
          2914,
          1828,
          199524,
          58952,
          9498,
          58682,
          174,
          6453,
          18106,
          133210,
          14907],
'private': False,
'registry': 'apnic',
'status': 'allocated',
'ix': [{'exchange': 'Equinix Singapore',
        'ipv4': '27.111.228.13',
        'ipv6': '2001:de8:4::5:8682:1',
        'organisation': 'Eqinix Inc',
        'speed': 100000},
       {'exchange': 'SGIX',
        'ipv4': '103.16.102.228',
        'ipv6': '2001:de8:12:100::228',
        'organisation': 'Singapore Internet Exchange Limited',
        'speed': 100000},
       {'exchange': 'DE-CIX Mumbai',
        'ipv4': '103.27.171.184',
        'ipv6': '2401:7500:fff6::12d',
        'organisation': 'DE-CIX Interwire Internet Services Pvt Ltd',
        'speed': 100000}]
Note that IPNetDB is not a IP to geolocation tool. The country codes returned are from the IANA allocation information and are not accurate for use in geolocation. Country codes are accurate to determine the country that an IP address or ASN was originally allocated to, but not a specific location.
The format stored in IPNetDB databases is different to that stored by other mmdb databases so remember you will need to use the libmaxminddb based libraries directly and not any GeoIP libraries.
Language Package
Python maxminddb
PHP maxmind-db/reader
Ruby maxmind-db
Java com.maxmind.db:maxmind-db
Node maxmind
The above table is not exhaustive, native libmaxminddb implementations exist for many additional languages. The mmdb format as well as all of the maxmind libraries are developed by MaxMind. MaxMind and GeoIP are registered trademarks of MaxMind, Inc. IPNetDB does not use any existing MaxMind data and the databases are generated using the open source MaxMind database creation libraries.

Licencing

Free non-commercial use with attribution

You are free to use IPNetDB databases in your non-commercial applications providing you include attribution under the Creative Commons BY-NC-ND 4.0 licence.
  • Any method, view, page, results or similar output of displaying IPNetDB data must include the following HTML attribution where HTML is used:
    <a href="https://ipnetdb.com">Internet information provided by IPNetDB</a>
  • Or the following text attribution if HTML is unavailable:
    Internet information provided by IPNetDB.com
For all commercial applications a commercial licence for IPNetDB is required.

Paid for commercial use

You must pay for IPNetDB databases in:
  • Commercial applications
  • Internal applications for commercial entities
  • applications where IPNetDB increases the monetary value of the project

A commercial IPNetDB licence is available for a flat fee of $25 USD per month, payable in advance as a $300 USD payment per year. Please contact us at [email protected] for a licence. You do not require a paid licence for commercial software in active development. You do require a licence for use by commercial entities once your application is in production use. An attribution to IPNetDB is appreciated but not a requirement.

[email protected]
Please note that you are not permitted to redistribute the mmdb files without including the attribution link to https://ipnetdb.com/.

Historical releases

Up to 30 days of past releases are available on our CDN. These are:
Date Release File
2025-04-23 prefix ipnetdb_prefix_2025-04-23.mmdb
SHA256:bd9a89dcf83cf53203f597b91dbe18ba6c8444ba9253ab22075a74676681b60d
2025-04-23 asn ipnetdb_asn_2025-04-23.mmdb
SHA256:39f008c6749c5c49b6b240cb45e437e7477f2ae01666e2f4926b7beac466a73c
2025-04-22 prefix ipnetdb_prefix_2025-04-22.mmdb
SHA256:a0989e8e9f316a4f3e3e8d4f46a7498e90dec994c00fadb9fac0e035165168f4
2025-04-22 asn ipnetdb_asn_2025-04-22.mmdb
SHA256:9027b29ebd5850d7a8faa1dcfe5c2d6445e45dbc8c93436767eb132b2256b292
2025-04-21 asn ipnetdb_asn_2025-04-21.mmdb
SHA256:dca763415628883da10f6c84ead276f57b070bf257a9604860c3d0b71cdd92ae
2025-04-21 prefix ipnetdb_prefix_2025-04-21.mmdb
SHA256:00895f453bcf49ff1e03bf65a9f6fb250868651ab4e9ead72cf0fb65e0872c23
2025-04-19 prefix ipnetdb_prefix_2025-04-19.mmdb
SHA256:b561e9d1d18c7ce33deec5160ace23172fc8793eaf67a997416543ce7a3f072e
2025-04-19 asn ipnetdb_asn_2025-04-19.mmdb
SHA256:f14ad1003a994aa64a5ab0c20418347af7cbb7a6a1b7411ebf1c76be4657c537
2025-04-18 asn ipnetdb_asn_2025-04-18.mmdb
SHA256:61fb23a5324aa02d727869d0c2c5980673d50d47b358c0379a8e29ccf1c0a035
2025-04-18 prefix ipnetdb_prefix_2025-04-18.mmdb
SHA256:1928d7352cb120c7eab29295be73c4e2e8fd4428fd3a81e476e8eb9fe293ae6d
2025-04-17 asn ipnetdb_asn_2025-04-17.mmdb
SHA256:a2055e0e09089141504b1ce98fa5bd687fd15ec9ad1cf83790f0c3edf1f03481
2025-04-17 prefix ipnetdb_prefix_2025-04-17.mmdb
SHA256:55c5034ea0f4de2c82a6f54d2b8854dc482fd2147155fe8becfe33e2dbf0e0af
2025-04-16 prefix ipnetdb_prefix_2025-04-16.mmdb
SHA256:4ca42204e828a20c05d336b34f4fa7d85bd55ce8ef83813c2cf8c7a2a7f0c2ae
2025-04-16 asn ipnetdb_asn_2025-04-16.mmdb
SHA256:f93bd6457646643c65b3b1545832c065b3f4209edebb185a1fcfa92feed9008c
2025-04-15 prefix ipnetdb_prefix_2025-04-15.mmdb
SHA256:a4ae6b615f375f33a1b2bcba7d74e9b39460939d8925e09072fd5bc90e4af41d
2025-04-15 asn ipnetdb_asn_2025-04-15.mmdb
SHA256:1cd89a02b34cb894e02d8bd2cf391a63fc59a4fb5267fe5cecd0a6e9862019e2
2025-04-14 prefix ipnetdb_prefix_2025-04-14.mmdb
SHA256:69f9e698849b383a4c9c1560398807ba9b60eb159d1150c3a4300ad1dc0090ba
2025-04-14 asn ipnetdb_asn_2025-04-14.mmdb
SHA256:62ed0fc8497511432075a5482bfa666f9aaff7def11294cf942d64b9e2e8a170
2025-04-13 asn ipnetdb_asn_2025-04-13.mmdb
SHA256:c00eb9a93f2b73f8d16eec70c83ae9bab0b6c22b64082d2f47005780da6c1ba5
2025-04-13 prefix ipnetdb_prefix_2025-04-13.mmdb
SHA256:1810daecffb3a11166d373ad2e5b5d4adc1b5816edf98bd2df8542e146443779
2025-04-12 prefix ipnetdb_prefix_2025-04-12.mmdb
SHA256:162d2004a934f0900ec7a85d4091dbdf5135432304c2ea7915b33bc3790a28b7
2025-04-12 asn ipnetdb_asn_2025-04-12.mmdb
SHA256:be6f8a015226c05e1db524be70135ffa6d415be37501f31c0c18e50710b3bf0a
2025-04-11 prefix ipnetdb_prefix_2025-04-11.mmdb
SHA256:9c46decbb4726a823b02cdfcbfd5c96db23e00415a68578f2043eee36846f6a0
2025-04-11 asn ipnetdb_asn_2025-04-11.mmdb
SHA256:d4ab9ad721fb6276390d47260f2568365907beca8b694043e3fc02c3cf947c16
2025-04-10 prefix ipnetdb_prefix_2025-04-10.mmdb
SHA256:f81107770b7b55e4174500c3df7193c967185ac67e5c6cf25c478cfa4a7482f8
2025-04-10 asn ipnetdb_asn_2025-04-10.mmdb
SHA256:79c42d502028cd02c2a06415f010ebe4ab5bbf55a47d524b71d359ee39531e21
2025-04-09 asn ipnetdb_asn_2025-04-09.mmdb
SHA256:b6eebc10126b1ad588b2274842efdc287480612918ea8bebadc202cbe38fa147
2025-04-09 prefix ipnetdb_prefix_2025-04-09.mmdb
SHA256:e8e72abb63b918a3e383d80707b31b59f8a24f17e649eec23eae620ea076d693
2025-04-08 asn ipnetdb_asn_2025-04-08.mmdb
SHA256:591a65dde7c8d65e694f8648ed9ac6e19023aa2117c2f6c8f88af904ab23d493
2025-04-08 prefix ipnetdb_prefix_2025-04-08.mmdb
SHA256:99252e0d04459a4309b1c6826e4cef7c38de0448325b0d8881cabec46ead5c5a
2025-04-07 asn ipnetdb_asn_2025-04-07.mmdb
SHA256:f708e07126ba8c81bae066db9172dfa3df085088a65be9bbb73f399c9db5c8e5
2025-04-07 prefix ipnetdb_prefix_2025-04-07.mmdb
SHA256:bca49f82d9f813ef91e67fc546300302aeda432496893fa1bbe56cd0b53c6a27
2025-04-06 asn ipnetdb_asn_2025-04-06.mmdb
SHA256:e9172f4a73342d3f8c20e66e22157001268a6943cd1913e1e2fa0466671d59c0
2025-04-06 prefix ipnetdb_prefix_2025-04-06.mmdb
SHA256:8502c4688a9c9ae704cf97a1c6a816c32d005f70989acc273472750e41862cba
2025-04-05 asn ipnetdb_asn_2025-04-05.mmdb
SHA256:d470f4a59f4260cc5fddcee7a2b75482404e35a739e52b27d5c8b4080a9b60da
2025-04-05 prefix ipnetdb_prefix_2025-04-05.mmdb
SHA256:c7eae5f3f0304fcb1bb3d485356b73c2fea1e0fb7062345ac8625794167c4aa8
2025-04-04 prefix ipnetdb_prefix_2025-04-04.mmdb
SHA256:fb3768dea2966f6a4f257c999afc706da084f99de19b421fb7ef4c43cbcc8f21
2025-04-04 asn ipnetdb_asn_2025-04-04.mmdb
SHA256:afb862c8ae679391b8eeecf144c7291aaa4cd1629caadf7f6ef9f07a872cea92
2025-04-03 prefix ipnetdb_prefix_2025-04-03.mmdb
SHA256:f6cf4c8136b3b9623ff4f59b383732e48752886474d16f18601fc62f6139fb7b
2025-04-03 asn ipnetdb_asn_2025-04-03.mmdb
SHA256:c6df9fe7e4e360af0cbd92fb7b51e6f143676b547176066a8cf561a322b9a413
2025-04-02 prefix ipnetdb_prefix_2025-04-02.mmdb
SHA256:558511f3c3b2653e1658ba7228626d98afcc070020e858203da8002a17147ce2
2025-04-02 asn ipnetdb_asn_2025-04-02.mmdb
SHA256:cf9cbc5b597eec8def64002d7005778edd2133722f5e314ef95cfc784f8c4a3e
2025-03-31 prefix ipnetdb_prefix_2025-03-31.mmdb
SHA256:5e4120c217a928e2413608601cac3b30ce09bdc3aadbf857364cd11cdaf7fae5
2025-03-31 asn ipnetdb_asn_2025-03-31.mmdb
SHA256:8a22f89752db3ca8a5c62304db9fc22cad4c75b672d51d7861bf6b9809c3fac9
2025-03-30 prefix ipnetdb_prefix_2025-03-30.mmdb
SHA256:9e077813cf6ce2a65af2881f5b946bc7f93937c3c4d5cab3e2dfeb6095c6a9a4
2025-03-30 asn ipnetdb_asn_2025-03-30.mmdb
SHA256:f239f034bfe81bfb82e5ae0a8e049d71965e6764ff319455bb66f060dab1f68d
2025-03-29 asn ipnetdb_asn_2025-03-29.mmdb
SHA256:5801a10b155f86891ca81ad129a3f565daae30652e7e2046ce88915df136355b
2025-03-29 prefix ipnetdb_prefix_2025-03-29.mmdb
SHA256:8575394ee5f6d23df66af7ed8a0f3908f26411b0b3048963885bc8bb2bb7a6d3
2025-03-28 prefix ipnetdb_prefix_2025-03-28.mmdb
SHA256:e5f22f6a05f8df79d6d3aebd45d1488a6f87d5e26e1b19ff2132089573bf4933
2025-03-28 asn ipnetdb_asn_2025-03-28.mmdb
SHA256:a44b271687fd3ecbbb2595eed8fbafc6105260aafa87d620e3fff0274e15c20b
2025-03-27 asn ipnetdb_asn_2025-03-27.mmdb
SHA256:72a56a276805f300ba381bb39d7bb00ddd01f2fcb21c864ca1a9ff8a91ab61a6
2025-03-27 prefix ipnetdb_prefix_2025-03-27.mmdb
SHA256:9fc108204dad3fb19e38fc469481e98e0c29c8a97fffc37bb321d15be70f6beb
2025-03-26 asn ipnetdb_asn_2025-03-26.mmdb
SHA256:6f5ecfd084ca9662ddcc9fdff7b65930ad495c9620352d99732dca26dbcf2d15
2025-03-26 prefix ipnetdb_prefix_2025-03-26.mmdb
SHA256:8d2729d7c60f6ff0a8b2bdd9a731b040bd3a212441f1137cc161a5bd59c9453c
2025-03-25 prefix ipnetdb_prefix_2025-03-25.mmdb
SHA256:520a6471197b8cca72ee27beaab54971132d66acc3ff4f6f50d38f83c75cbe7a
2025-03-25 asn ipnetdb_asn_2025-03-25.mmdb
SHA256:8631ab81a721910ce78140ca0af130b6daeb7783bc3e540aa0259e6576126cf2

Common questions

Where does the data in IPNetDB come from?

Allocation data for IP addresses and ASNs are obtained from the IANA. Internet routing information is obtained from live route views from multiple globally diverse sources. Entity and extended information is obtained from WHOIS or RDAP sources for each regional registry. This information is combined into a single, large tree and then flattened into the generated IPNetDB databases. All information used to generate the IPNetDB databases is from public sources.

How accurate is the data?

The IANA allocation information as well as the prefix and ASN information is accurate as of when database was last generated. As the databases are generated daily these files may be slightly out of date. The entity and extended information take several weeks to fully update so some entries may be out of date if there have been any changes to the ownership of prefixes or ASNs. The data can be used for most applications but do not use IPNetDB data for mission-critical or in systems that require absolute accuracy. Use of IPNetDB databases and data is entirely at your own risk.

How frequently are the databases updated?

The allocation and routing information is updated daily. The entity information is updated slowly, but constantly. The generated database exports are published daily.

Can update the databases automatically?

Yes, you can download the latest version of the databases each day. You can automate deployments by downloading the databases every Monday using the JSON-encoded latest file list.

Can I use IPNetDB with [language or framework]?

Almost certainly, but that is out of the scope of what we would assist with. You can search for "MaxMind database" support in any language, framework or server of your choice.

Can I query a prefix and not an IP?

You can just query the first IP in the prefix which will accomplish the same lookup. For example for 8.8.8.0/24 you can just query 8.8.8.0 in the prefix database.

What does a commercial licence pay for?

The data contained in the IPNetDB databases is freely available in various formats to anyone. Your commercial licence to IPNetDB pays for the significant data processing required (hundreds of millions of routes, for example), compression of the data and then hosting and ongoing maintenance. Your licence is for the service that processes the data and construction of the reliable database, not to the data itself.

Who makes IPNetDB?

IPNetDB is operated and run by Kovalent Systems, an Australian based software development and advisory company.