mirror of
https://github.com/dcarrillo/digaws.git
synced 2024-12-23 01:38:00 +00:00
132 lines
2.9 KiB
Markdown
132 lines
2.9 KiB
Markdown
# digaws
|
|
|
|
The digaws lookup tool displays information for a given IP address (both v4 and v6) or a CIDR, sourced from the AWS official IP ranges.
|
|
In order to save bandwidth and time this tool requests the [AWS IP ranges](https://ip-ranges.amazonaws.com/ip-ranges.json) and keeps
|
|
a cached version until a new version is published.
|
|
|
|
[![PyPI version](https://badge.fury.io/py/digaws.svg)](https://pypi.org/project/digaws/)
|
|
[![CI](https://github.com/dcarrillo/digaws/workflows/CI/badge.svg)](https://github.com/dcarrillo/digaws/actions)
|
|
|
|
## Requirements
|
|
|
|
Python >= 3.8
|
|
|
|
Tests are verified on Linux, macos and Windows.
|
|
|
|
## Install
|
|
|
|
### Using [pipx](https://pypa.github.io/pipx/#install-pipx) (this is the preferred way)
|
|
|
|
```bash
|
|
pipx install digaws
|
|
```
|
|
|
|
### Using pip
|
|
|
|
```bash
|
|
pip install digaws --user
|
|
```
|
|
|
|
## Usage
|
|
|
|
```text
|
|
usage: digaws [-h] [--output <plain|json>] [--output-fields [{prefix,region,service,network_border_group} ...]] [--debug] [--version] <ip address|cidr> [<ip address|cidr> ...]
|
|
|
|
Look up canonical information for AWS IP addresses and networks
|
|
|
|
positional arguments:
|
|
<ip address|cidr> CIDR or IP (v4 or v6) to look up
|
|
|
|
optional arguments:
|
|
-h, --help show this help message and exit
|
|
--output <plain|json>
|
|
Formatting style for command output, by default plain
|
|
--output-fields [{prefix,region,service,network_border_group} ...]
|
|
Print only the given fields
|
|
--debug Enable debug
|
|
--version show program's version number and exit
|
|
```
|
|
|
|
## Examples
|
|
|
|
- look up an IPv4 address
|
|
|
|
```text
|
|
~ » digaws 52.218.97.130
|
|
|
|
Prefix: 52.218.0.0/17
|
|
Region: eu-west-1
|
|
Service: AMAZON
|
|
Network border group: eu-west-1
|
|
|
|
Prefix: 52.218.0.0/17
|
|
Region: eu-west-1
|
|
Service: S3
|
|
Network border group: eu-west-1
|
|
```
|
|
|
|
- look up an IPv6 address
|
|
|
|
```text
|
|
~ » digaws 2600:1f1e:fff:f810:a29b:cb50:2812:e2dc
|
|
|
|
IPv6 Prefix: 2600:1f1e::/36
|
|
Region: sa-east-1
|
|
Service: AMAZON
|
|
Network border group: sa-east-1
|
|
|
|
IPv6 Prefix: 2600:1f1e:fff:f800::/53
|
|
Region: sa-east-1
|
|
Service: ROUTE53_HEALTHCHECKS
|
|
Network border group: sa-east-1
|
|
|
|
IPv6 Prefix: 2600:1f1e::/36
|
|
Region: sa-east-1
|
|
Service: EC2
|
|
Network border group: sa-east-1
|
|
```
|
|
|
|
- look up several addresses and print output as json
|
|
|
|
```text
|
|
~ » digaws 2600:1f14::/36 13.224.119.88 --output json
|
|
|
|
[
|
|
{
|
|
"ipv6_prefix": "2600:1f14::/35",
|
|
"region": "us-west-2",
|
|
"service": "AMAZON",
|
|
"network_border_group": "us-west-2"
|
|
},
|
|
{
|
|
"ipv6_prefix": "2600:1f14::/35",
|
|
"region": "us-west-2",
|
|
"service": "EC2",
|
|
"network_border_group": "us-west-2"
|
|
},
|
|
{
|
|
"ip_prefix": "13.224.0.0/14",
|
|
"region": "GLOBAL",
|
|
"service": "AMAZON",
|
|
"network_border_group": "GLOBAL"
|
|
},
|
|
{
|
|
"ip_prefix": "13.224.0.0/14",
|
|
"region": "GLOBAL",
|
|
"service": "CLOUDFRONT",
|
|
"network_border_group": "GLOBAL"
|
|
}
|
|
]
|
|
```
|
|
|
|
- Choose output fields
|
|
|
|
```text
|
|
~ » digaws 34.255.166.63 --output-fields service
|
|
|
|
Service: AMAZON
|
|
|
|
Service: EC2
|
|
|
|
```
|