diff --git a/.github/workflows/update.yml b/.github/workflows/update.yml index 29f89fc6..72427d11 100644 --- a/.github/workflows/update.yml +++ b/.github/workflows/update.yml @@ -11,8 +11,10 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Download Google IPs - run: bash google/downloader.sh + - name: Download IPs + run: | + bash google/downloader.sh + bash amazon/downloader.sh - name: Set up Python 3.7 uses: actions/setup-python@v2 @@ -36,6 +38,7 @@ jobs: run: | set -euo pipefail python utils/merge.py --source=google/ipv4.txt | sort -h > google/ipv4_merged.txt + python utils/merge.py --source=amazon/ipv4.txt | sort -h > amazon/ipv4_merged.txt - name: Commit files env: diff --git a/amazon/downloader.sh b/amazon/downloader.sh new file mode 100755 index 00000000..6bd1cf01 --- /dev/null +++ b/amazon/downloader.sh @@ -0,0 +1,22 @@ +#!/bin/bash + +# https://docs.aws.amazon.com/general/latest/gr/aws-ip-ranges.html + +set -euo pipefail +set -x + + +# get from public ranges +curl -s https://ip-ranges.amazonaws.com/ip-ranges.json > /tmp/amazon.json + + +# save ipv4 +jq '.prefixes[] | [.ip_prefix][] | select(. != null)' -r /tmp/amazon.json > /tmp/amazon-ipv4.txt + +# save ipv6 +jq '.ipv6_prefixes[] | [.ipv6_prefix][] | select(. != null)' -r /tmp/amazon.json > /tmp/amazon-ipv6.txt + + +# sort & uniq +sort -hu /tmp/amazon-ipv4.txt > amazon/ipv4.txt +sort -hu /tmp/amazon-ipv6.txt > amazon/ipv6.txt