Network Data — MMDB
On this page
BGP routing and RIR registry data covering the whole IPv4 and IPv6 address space, as two binary databases you query by IP address with any standard MMDB reader: one for BGP routing (origin ASN, reachability, bogon flag, registry status) and one for RIR registry details (organisation, country, registry). Each file answers both IPv4 and IPv6. The ASN list in the same ZIP turns an Asn into an AS name and statistics. No geolocation.
- Format MMDB
- Archive
bigdatacloud-network-mmdb.zip - 5 files
- IPv4 + IPv6 in each file
- Updated daily
At a glance
- A lookup returns
bigdatacloud-network-bgp.mmdb:Asn,IsReachable,IsBogon,RegistryStatusandRegistryfor the BGP prefix containing the IP.bigdatacloud-network-rir.mmdb:Organisation,Country,RegistryandRegistryLastModifiedfor the registry range containing the IP.Asns-Basic.csvis in the same ZIP, so you can turn anAsninto an AS name without any other download.
- What it's for
Origin ASN, reachability and registrant for any IP inside your internal systems, with no API call per lookup.
- Not in it
Geolocation (see Compact MMDB or Complete MMDB); ASN operational areas and proxy, Tor and VPN lists (see Complete MMDB).
- Scale
Millions of BGP prefixes and registry ranges.
Manifest.csvhas the exact counts for each release.- Licence
Flat Data Standard Licence: internal use by your company and its employees only.
Files in the archive
| File | What it holds | Key / join column |
|---|---|---|
bigdatacloud-network-bgp.mmdb | One record per BGP prefix, for IPv4 and IPv6 | Lookup by IP; record key Asn |
bigdatacloud-network-rir.mmdb | One record per RIR registry range, for IPv4 and IPv6 | Lookup by IP |
Asns-Basic.csv | ASN identity and address and prefix statistics | Asn |
README.txt | Package overview and links | — |
Manifest.csv | Build time, data timestamps and row totals, then one row per other file in that ZIP with its byte count | — |
Keys
Both databases map each prefix or range to its record, so a lookup returns the keys below directly; there are no prefix or range keys.
bigdatacloud-network-bgp.mmdb
Network
| Key | Type | Example | Description |
|---|---|---|---|
Asn | integer | 1221 | Origin ASN. Key into Asns-Basic.csv in this ZIP. Present when the prefix is announced in BGP. |
IsReachable | boolean | true | true if the prefix is announced in BGP and globally reachable. false if the prefix isn't announced in BGP or is a bogon. |
IsBogon | boolean | false | true if the prefix is announced in BGP but sits in space that shouldn't be announced (reserved, available or unassigned). Private and reserved space that isn't announced, such as 10.0.0.0/8, is false; its RegistryStatus shows it as reserved. |
RegistryStatus | string | Assigned | Registry status: Assigned, Available, Reserved, or Undefined where the registry gives none. |
Registry | string | Apnic | Registry for the prefix: Afrinic, Apnic, Arin, Iana, Lacnic, Ripe, or Undefined where the registry gives none. |
bigdatacloud-network-rir.mmdb
Network
| Key | Type | Example | Description |
|---|---|---|---|
Organisation | string | Telstra Limited | Organisation that holds the range, from registry data. Very long names are shortened and end in ... A few names contain line breaks. |
Country | string | AU | Country for the range as the registry publishes it: usually a two-letter code, sometimes several codes separated by spaces, or free text. |
Registry | string | Apnic | Registry the record comes from: Afrinic, Apnic, Arin, Jpnic, Krnic, Lacnic, Radb, Ripe or Twnic. |
RegistryLastModified | string | 2024-05-10T00:50:24.0000000Z | When the registry last changed the record: ISO 8601 date and time in UTC, stored as text. |
Lookup files
Network
Asns-Basic.csv and Manifest.csv are defined in the Lookup files reference: Asns-Basic · Manifest.
How the files join
- bigdatacloud-network-bgp.mmdb: Asn → Asns-Basic.csv Asn (optional; present when announced)
| From | Key | To (in this ZIP) | Notes |
|---|---|---|---|
bigdatacloud-network-bgp.mmdb record | Asn | Asns-Basic.csv Asn | Present when the prefix is announced in BGP. |
Not joined: look up bigdatacloud-network-rir.mmdb by IP address, and Manifest.csv describes the release.
BGP prefixes and registry ranges are separate views of the same address space: they don't share a key, and their boundaries don't line up. Look the IP up in each database on its own.
Sample data
Sample records from the 1 October 2026 release. Values change with each daily update.
bigdatacloud-network-bgp.mmdb
139.130.4.5 {"Asn": 1221, "IsReachable": true, "IsBogon": false, "RegistryStatus": "Assigned", "Registry": "Apnic"}
1.37.82.10 {"Asn": 132199, "IsReachable": true, "IsBogon": false, "RegistryStatus": "Assigned", "Registry": "Apnic"}
2001:8000::1 {"Asn": 1221, "IsReachable": true, "IsBogon": false, "RegistryStatus": "Assigned", "Registry": "Apnic"}
1.0.8.10 {"IsReachable": false, "IsBogon": false, "RegistryStatus": "Assigned", "Registry": "Apnic"}
205.209.150.1 {"Asn": 23338, "IsReachable": false, "IsBogon": true, "RegistryStatus": "Reserved", "Registry": "Arin"}
192.168.1.1 {"IsReachable": false, "IsBogon": false, "RegistryStatus": "Reserved", "Registry": "Iana"}bigdatacloud-network-rir.mmdb
139.130.4.5 {"Organisation": "Telstra Limited", "Country": "AU", "Registry": "Apnic", "RegistryLastModified": "2024-05-10T00:50:24.0000000Z"}
1.37.82.10 {"Organisation": "Globe Telecoms", "Country": "PH", "Registry": "Apnic", "RegistryLastModified": "2021-02-17T07:28:15.0000000Z"}
2001:8000::1 {"Organisation": "Telstra Limited", "Country": "AU", "Registry": "Apnic", "RegistryLastModified": "2024-05-10T00:50:24.0000000Z"}
1.0.8.10 {"Organisation": "CHINANET Guangdong province network Data Communi..", "Country": "CN", "Registry": "Apnic", "RegistryLastModified": "2021-06-15T08:05:48.0000000Z"}Each record carries only the keys that hold a value. Asn is supplied where the prefix is announced in BGP, as for 139.130.4.5, 1.37.82.10, 2001:8000::1 and 205.209.150.1. 205.209.150.1 is a bogon. 192.168.1.1 is private space, so BGP shows it as reserved.
Behaviour and edge cases
- Supplied keys
Each record carries the keys that apply to it, and each key description says when it is supplied. Check that a key is present before you use it.
Asnis supplied where the prefix is announced in BGP. RIR records carryOrganisation,Country,RegistryandRegistryLastModified. InAsns-Basic.csv,Organisationis supplied for every ASN (Private Use ASfor an ASN with no registration record).AsnName,RegistryandRegisteredCountryare supplied where the registry publishes them.- Private and reserved addresses
Addresses such as
10.0.0.0/8,127.0.0.0/8,100.64.0.0/10,169.254.0.0/16,192.168.0.0/16,::1andfc00::/7return a BGP record withRegistryStatusReserved,RegistryIanaandIsReachablefalse. The RIR database returns whatever the registries publish for that range.- Unannounced prefixes and bogons
An unannounced prefix returns a BGP record with
IsReachablefalse.Asnis supplied where the prefix is announced in BGP. ItsRegistryStatusstill tells you whether the space is assigned, available or reserved. A few prefixes have anAsnbutIsReachablefalse: these are bogons, withIsBogontrue.- IPv4 and IPv6
Each file answers both. IPv4 lives at
::/96, so::a.b.c.dand IPv4-mapped::ffff:a.b.c.daddresses answer from the IPv4 data (::ffff:139.130.4.5returns the same record as139.130.4.5).- No overlaps
BGP prefixes don't overlap, and registry ranges don't overlap, so an address matches at most one record in each database.
- File conventions
The lookup files in this ZIP are UTF-8 with CRLF line endings,
Manifest.csvincluded.Asns-Basic.csvstarts with a byte-order mark (BOM), so use a BOM-aware reader. MMDB metadata:database_typeisBigDataCloud-BgpPrefixesandBigDataCloud-RirInetnums, andbuild_epochis the same moment asBuild CompleteinManifest.csv. Full lists: lookup file conventions and MMDB conventions.
Download
Download from your BigDataCloud account, or automate it with your API key:
curl -fL -o bigdatacloud-network-mmdb.zip "https://www.bigdatacloud.com/download?package=network&format=mmdb&key=YOUR_API_KEY"Prefer not to put the key in URLs?
Send the key in the x-bdc-key header and download in two steps: read the link from the Location header, then fetch it without your key.
URL=$(curl -s -D - -o /dev/null -H 'x-bdc-key: YOUR_API_KEY' \
"https://www.bigdatacloud.com/download?package=network&format=mmdb" \
| awk 'tolower($1)=="location:" { sub(/\r$/, "", $2); print $2 }')
curl -fo bigdatacloud-network-mmdb.zip "${URL:?no download link: check the key and package}"Don't add -L to this command: curl would send your key on with the download.
This saves bigdatacloud-network-mmdb.zip (files). Scheduling, checksums and parameters: Downloads & automation.
Updates and integrity
- Updated daily. Download on any schedule that suits you; updates are included in your subscription.
Manifest.csvrecords the build time (Build Complete), the data timestamps and the row totals, then one row per other file in that ZIP with its byte count, so you can check a complete download and load. To check the ZIP itself, see Check a download.
Code samples
Origin ASN, AS name and registrant for an IP (Python). Install a reader with pip install maxminddb.
import csv
import maxminddb
# utf-8-sig skips the byte-order mark the file starts with
with open("Asns-Basic.csv", newline="", encoding="utf-8-sig") as f:
asns = {row["Asn"]: row for row in csv.DictReader(f)}
with maxminddb.open_database("bigdatacloud-network-bgp.mmdb") as bgp, \
maxminddb.open_database("bigdatacloud-network-rir.mmdb") as rir:
for ip in ["139.130.4.5", "2001:8000::1", "1.0.8.10"]:
route = bgp.get(ip) or {}
reg = rir.get(ip) or {}
asn = route.get("Asn") # supplied where the prefix is announced in BGP
name = asns.get(str(asn), {}).get("AsnName")
print(ip, asn, name, route.get("IsReachable"), reg.get("Organisation"), reg.get("Country"))
# 139.130.4.5 1221 ASN-TELSTRA True Telstra Limited AU
# 2001:8000::1 1221 ASN-TELSTRA True Telstra Limited AU
# 1.0.8.10 None None False CHINANET Guangdong province network Data Communi.. CNMMDB reader libraries are available for most languages, and they all work the same way: open the file, look up the IP, read the keys.