🔧 Installation
⚙️ Usage
⚡ Add New IP Ranges
- Python 3.x
- intervaltree library (
pip install intervaltree) - tqdm library (
pip install tqdm)
git clone https://github.com/devanshbatham/ip2cloud
cd ip2cloud
chmod +x setup.sh
./setup.shNow, you can use ip2cloud from the command line to check IP addresses against known cloud provider IP address ranges.
cat input_ips.txt | ip2cloudThe script will process the provided IP addresses and display the corresponding cloud provider for each IP address. Optionally, you can use the -j or --json flag to print the output in JSON format.
Suppose you have a file named input_ips.txt with the following IP addresses:
59.82.33.201
63.32.40.140
63.33.205.240
64.4.8.90
64.4.8.67
Run the script as follows:
(~)>> cat input_ips.txt | ip2cloud
[aliyun] : 59.82.33.201
[aws] : 63.32.40.140
[aws] : 63.33.205.240
[azure] : 64.4.8.67
[azure] : 64.4.8.90 - with
--jsonor-jflag:
(~)>> cat input_ips.txt | ip2cloud -j
{
"aliyun": [
"59.82.33.201"
],
"aws": [
"63.32.40.140",
"63.33.205.240"
],
"azure": [
"64.4.8.90",
"64.4.8.67"
]
}If no cloud provider is found for an IP address, it won't appear in the JSON or standard output.
If you want to add new IP ranges for cloud providers, follow these steps:
- Create a new text file in the
datafolder (e.g.,somecloud.txt). - Add the IP address ranges in CIDR notation to the new text file. Each range should be on a separate line.
- Run the parse_data script:
python3 parse_data.pyThe new IP ranges will be updated in the cloud_data.json file, and ip2cloud will use the updated data for IP lookups.
- The script only supports IPv4 addresses.
- Make sure to keep the
cloud_data.jsonfile updated with the latest IP address ranges for the cloud providers you want to check. cloud_data.jsonshould be stored in~/.config/.cloud-rangesfolder after runningsetup.sh
The data folder contains IP address ranges for the following mentioned cloud providers, and you are welcome to add IP address ranges for any number of additional providers.
- Alibaba Cloud (Aliyun)
- Amazon Web Services (AWS)
- Microsoft Azure
- Cloudflare
- DigitalOcean
- Fastly
- Google Cloud
- IBM Cloud
- Linode
- Oracle Cloud
- Tencent Cloud
- UCloud
