This repository provides unified and cleaned datasets for public cloud provider IP ranges, as CSV and Parquet files.
The following public cloud providers are covered by this repo:
The generated data can be found in the data directory.
You can query the data with SQL Workbench directly in the browser.
Also, you can attach the generated DuckDB database with
ATTACH 'https://raw.githubusercontent.com/tobilg/public-cloud-provider-ip-ranges/main/data/db/ip-ranges.duckdb' as ip (READ_ONLY);
and then query the data with
SELECT * FROM ip.ip_data;
- AWS: CSV / Parquet / JSON
- Azure: CSV / Parquet / JSON
- CloudFlare: CSV / Parquet / JSON
- DigitalOcean: CSV / Parquet / JSON
- Fastly: CSV / Parquet / JSON
- Google Cloud: CSV / Parquet / JSON
- Linode: CSV / Parquet / JSON
- Oracle Cloud: CSV / Parquet / JSON
There are three versions of each dataset, a CSV and a Parquet version in columnar style, and a JSON version.
The data format of both columnar versions looks like this:
Column name | Data type | Description |
---|---|---|
cloud_provider | VARCHAR | The public cloud provider name |
cidr_block | VARCHAR | The CIDR block, e.g. 10.0.0.0/32 |
ip_address | VARCHAR | The IP address, e.g. 10.0.0.0 |
ip_address_mask | INTEGER | The IP address mask, e.g. 32 |
ip_address_cnt | INTEGER | The number of IP addresses in this CIDR block |
region | VARCHAR | The pubilic cloud provider region information (if given) |
The JSON schema of the exported data is
{
"$schema": "https://json-schema.org/draft-07/schema",
"title": "Public Cloud Provider JSON export schema",
"type": "array",
"items": {
"title": "CIDR block record",
"type": "object",
"required": [
"cidr_block",
"ip_address",
"ip_address_mask",
"ip_address_cnt",
"region"
],
"properties": {
"cidr_block": {
"title": "The CIDR block",
"type": "string",
"examples": [
"129.146.0.0/21"
]
},
"ip_address": {
"title": "The IP address",
"type": "string",
"examples": [
"129.146.0.0"
]
},
"ip_address_mask": {
"title": "The IP address mask",
"type": "integer",
"examples": [
21
]
},
"ip_address_cnt": {
"title": "The number of IP addresses in this CIDR block",
"type": "integer",
"examples": [
2048
]
},
"region": {
"title": "The respective public cloud provider region",
"type": "string",
"examples": [
"us-phoenix-1"
]
}
},
"examples": [{
"cidr_block": "129.146.0.0/21",
"ip_address": "129.146.0.0",
"ip_address_mask": 21,
"ip_address_cnt": 2048,
"region": "us-phoenix-1"
}]
}
}
The CI pipeline will check for AWS IAM docs updates everyday at 4AM UTC, and automatically publish a new patch version if updates are detected.