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 31st of March 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-03-31 asn ipnetdb_asn_2025-03-31.mmdb
SHA256:8a22f89752db3ca8a5c62304db9fc22cad4c75b672d51d7861bf6b9809c3fac9
2025-03-31 prefix ipnetdb_prefix_2025-03-31.mmdb
SHA256:5e4120c217a928e2413608601cac3b30ce09bdc3aadbf857364cd11cdaf7fae5
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 asn ipnetdb_asn_2025-03-28.mmdb
SHA256:a44b271687fd3ecbbb2595eed8fbafc6105260aafa87d620e3fff0274e15c20b
2025-03-28 prefix ipnetdb_prefix_2025-03-28.mmdb
SHA256:e5f22f6a05f8df79d6d3aebd45d1488a6f87d5e26e1b19ff2132089573bf4933
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 prefix ipnetdb_prefix_2025-03-26.mmdb
SHA256:8d2729d7c60f6ff0a8b2bdd9a731b040bd3a212441f1137cc161a5bd59c9453c
2025-03-26 asn ipnetdb_asn_2025-03-26.mmdb
SHA256:6f5ecfd084ca9662ddcc9fdff7b65930ad495c9620352d99732dca26dbcf2d15
2025-03-25 asn ipnetdb_asn_2025-03-25.mmdb
SHA256:8631ab81a721910ce78140ca0af130b6daeb7783bc3e540aa0259e6576126cf2
2025-03-25 prefix ipnetdb_prefix_2025-03-25.mmdb
SHA256:520a6471197b8cca72ee27beaab54971132d66acc3ff4f6f50d38f83c75cbe7a
2025-03-24 prefix ipnetdb_prefix_2025-03-24.mmdb
SHA256:94a5fe88fad182a801450073b266c3050a35e02d7bf19b69b0678d30be77ff59
2025-03-24 asn ipnetdb_asn_2025-03-24.mmdb
SHA256:2fc183c3d80eb84c5dea67050d4cbcee9abdaefa16e44b6f899d7272103d884d
2025-03-23 prefix ipnetdb_prefix_2025-03-23.mmdb
SHA256:baaca23595c5aee9af26de23f186b8c2c3423e225b51a19dc7d34371f5ef46fd
2025-03-23 asn ipnetdb_asn_2025-03-23.mmdb
SHA256:64619d7a6aeb3ca5728825f35c01527049f08178e56860bb202f1efe64dfa832
2025-03-22 asn ipnetdb_asn_2025-03-22.mmdb
SHA256:77b845915bac2dc4fc1cbb873d240129d5b178044bebc3ebd9d1fde01019d5b6
2025-03-22 prefix ipnetdb_prefix_2025-03-22.mmdb
SHA256:c048dd5b621a8ebcff0abab6e1b6232409977d4847b0e9c42383ad175a30c879
2025-03-21 prefix ipnetdb_prefix_2025-03-21.mmdb
SHA256:8dba98a3eae4c1c06407c5c786979c0ce49e6cf4e16c7ec847f08aec9debb748
2025-03-21 asn ipnetdb_asn_2025-03-21.mmdb
SHA256:60b442e07965a8b6696207b772a94a077b4aa1a2bf80fc1be8ff771e37185628
2025-03-20 prefix ipnetdb_prefix_2025-03-20.mmdb
SHA256:395c6bdc7f8de5d2ba24f4f0efe4ec5053e2b1c2b4096010330efc62c659a952
2025-03-20 asn ipnetdb_asn_2025-03-20.mmdb
SHA256:1582410184f545ecca0f49c4ec17a8178db87b3d36a59c72669c164a9d5716e9
2025-03-19 prefix ipnetdb_prefix_2025-03-19.mmdb
SHA256:1bb6bea683ceaddfeb8e18de5534198099360c5d6057954323ecd2ed88cef92a
2025-03-19 asn ipnetdb_asn_2025-03-19.mmdb
SHA256:ff9aa72dfa81178d41a023ce3b762ede2bba004a803dfd78af117e6cc9334d6c
2025-03-18 prefix ipnetdb_prefix_2025-03-18.mmdb
SHA256:67711a047bcd27dbcb7f96b6a07b399858fce5b19da1c247c06767c2e9d5b12f
2025-03-18 asn ipnetdb_asn_2025-03-18.mmdb
SHA256:f548fd200f607078c5f00b38c15f77079aefc670e0ed84b718139cf2b991cda2
2025-03-17 prefix ipnetdb_prefix_2025-03-17.mmdb
SHA256:a63b0c08cc1236359e29b18ed7fd76bad1005b030012c3a6a3ff97762f71dcc9
2025-03-17 asn ipnetdb_asn_2025-03-17.mmdb
SHA256:5b912ae60a1cd222faf33a56485a57058f0b89e231ebc334930ffd79e003c950
2025-03-15 prefix ipnetdb_prefix_2025-03-15.mmdb
SHA256:c3f376d823be2d7c1b6451923332194797cd624a24c904ef654b695a46fbb269
2025-03-15 asn ipnetdb_asn_2025-03-15.mmdb
SHA256:254afb7b99a8c0e9f561dce03d2ef94149110a440552c968fbc3cc7969b76010
2025-03-14 asn ipnetdb_asn_2025-03-14.mmdb
SHA256:367549f153fe154eeb9526016fbd00f289f4f5cee82b34129b13132ad7259960
2025-03-14 prefix ipnetdb_prefix_2025-03-14.mmdb
SHA256:03b00806701d92df07bfe2a0ea3ec7b04f3793f50641480a3c6a32cbe95f1d6e
2025-03-13 prefix ipnetdb_prefix_2025-03-13.mmdb
SHA256:39d81b19e6005274cf9d6ac7937655601331365153d247e3a62590499c556c0b
2025-03-13 asn ipnetdb_asn_2025-03-13.mmdb
SHA256:ebc89da3bec219df6b8a5a96dea12394e64238b48279ba7ac241ab89bb129396
2025-03-12 prefix ipnetdb_prefix_2025-03-12.mmdb
SHA256:af7a8e4bb66e043413fc6e40e0397cf1097e152aa6465ee0bc3bbcdd3037931a
2025-03-12 asn ipnetdb_asn_2025-03-12.mmdb
SHA256:0760a9f50a2528549b369c444f6937827991a0d826468bbb2dcb256896c8d02d
2025-03-11 prefix ipnetdb_prefix_2025-03-11.mmdb
SHA256:e329fc30e42f25ea25d03543d2d1edbe1d890b658dfbac167f2eeee6dde497b3
2025-03-11 asn ipnetdb_asn_2025-03-11.mmdb
SHA256:d7ffb71a860990595903c7a9aead6aaeef95eac063b61c927a3001cb8ddd4761
2025-03-10 prefix ipnetdb_prefix_2025-03-10.mmdb
SHA256:ef10a8a8e2003fcc7be32db6b44de288282e9ead7ae13953160b8fb64fe13c32
2025-03-10 asn ipnetdb_asn_2025-03-10.mmdb
SHA256:e1a6ec9a2f638dc8d5bbc0a12feae0e2aff31d2537a5456771b7ea64a5985cdd
2025-03-09 prefix ipnetdb_prefix_2025-03-09.mmdb
SHA256:064212c298d873ce38736735077690c55b870045169245c6a39b386e438d3368
2025-03-09 asn ipnetdb_asn_2025-03-09.mmdb
SHA256:74296a17385fdbe292d77ddddcb1f7791d8185cec1350c94bc14d0e55caf089d
2025-03-08 prefix ipnetdb_prefix_2025-03-08.mmdb
SHA256:fb9defb9b6800ee9911afe9d0f2b798f4cb82a716bb56c6d2dbc16c897ef7729
2025-03-08 asn ipnetdb_asn_2025-03-08.mmdb
SHA256:17aa344ec4b422955d9d8f6278b524fa528a3e43aef69e843e95998116ded442
2025-03-07 asn ipnetdb_asn_2025-03-07.mmdb
SHA256:652f7e66613bd9167d73018214ede609f337043d7b4a71035e0eb45f69b55079
2025-03-07 prefix ipnetdb_prefix_2025-03-07.mmdb
SHA256:9dc8fcf20adcbcf42b36cf9a7cb911cfb2980ac4e1076663ccbbaa1527493102
2025-03-06 asn ipnetdb_asn_2025-03-06.mmdb
SHA256:630ba1dadf3dc02055379624b49ff027e0392c55133bb8c52bc5be52fd852337
2025-03-06 prefix ipnetdb_prefix_2025-03-06.mmdb
SHA256:a9816a6a985e8804fc835d06d7e11817f7025ccd1f3eeb0ce8750f2ce3b8532d
2025-03-05 prefix ipnetdb_prefix_2025-03-05.mmdb
SHA256:a93d9b19b6d8f77e78a197a2a84b73035fa8f52a5a9bf12ea5032053e2a49499
2025-03-05 asn ipnetdb_asn_2025-03-05.mmdb
SHA256:30512610dca51ba244a0d2339e0981cc68a6bd6abb5997c4c3004ab03b9ed757
2025-03-04 asn ipnetdb_asn_2025-03-04.mmdb
SHA256:e6195f4f732dcda8831b67f52e06d5bdfb29c78b81d642a6a2ac3ac6323d1d4a
2025-03-04 prefix ipnetdb_prefix_2025-03-04.mmdb
SHA256:84f07a6ccd05c59575a957154df95fc1d7d2ed64cf8557539207426f11fdd800
2025-03-03 prefix ipnetdb_prefix_2025-03-03.mmdb
SHA256:f55210945dd88977c5e48ecdc2c2fbaee9b98315d3cca286562ad62b51a54ad1
2025-03-03 asn ipnetdb_asn_2025-03-03.mmdb
SHA256:ab610c115804580de47740eb17dc5f895369029db9add40f7d876adf8b0a188b
2025-03-02 prefix ipnetdb_prefix_2025-03-02.mmdb
SHA256:09b816760fc9e80eb305daf8368639945bc903376696e6e3f69f2a738eca1fde
2025-03-02 asn ipnetdb_asn_2025-03-02.mmdb
SHA256:eb463be69cba47e4bcce90d14e62214817de991a0f0ac5e7fe98afeb827754b9

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.