mirror of
https://github.com/lord-alfred/ipranges.git
synced 2026-07-04 19:21:55 +00:00
add microsoft parsing
This commit is contained in:
@@ -14,6 +14,7 @@ jobs:
|
||||
run: |
|
||||
bash google/downloader.sh
|
||||
bash amazon/downloader.sh
|
||||
bash microsoft/downloader.sh
|
||||
|
||||
- name: Set up Python 3.7
|
||||
uses: actions/setup-python@v2
|
||||
@@ -39,9 +40,11 @@ jobs:
|
||||
# ipv4
|
||||
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
|
||||
python utils/merge.py --source=microsoft/ipv4.txt | sort -h > microsoft/ipv4_merged.txt
|
||||
# ipv6
|
||||
python utils/merge.py --source=google/ipv6.txt | sort -h > google/ipv6_merged.txt
|
||||
python utils/merge.py --source=amazon/ipv6.txt | sort -h > amazon/ipv6_merged.txt
|
||||
python utils/merge.py --source=microsoft/ipv6.txt | sort -h > microsoft/ipv6_merged.txt
|
||||
|
||||
- name: Commit files
|
||||
env:
|
||||
|
||||
Executable
+36
@@ -0,0 +1,36 @@
|
||||
#!/bin/bash
|
||||
|
||||
# https://azure.microsoft.com/en-us/updates/service-tag-discovery-api-in-preview/
|
||||
# https://docs.microsoft.com/en-us/microsoft-365/enterprise/urls-and-ip-address-ranges?view=o365-worldwide
|
||||
# From: https://github.com/jensihnow/AzurePublicIPAddressRanges/blob/main/.github/workflows/main.yml
|
||||
|
||||
set -euo pipefail
|
||||
set -x
|
||||
|
||||
|
||||
# get from public ranges
|
||||
download_and_parse() {
|
||||
URL="$(curl -s https://www.microsoft.com/en-us/download/confirmation.aspx?id=${1} | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | grep ServiceTags_ | head -1 | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//')"
|
||||
curl --connect-timeout 60 --retry 3 --retry-delay 15 -s "${URL}" > /tmp/microsoft.json
|
||||
jq '.values[] | [.properties] | .[].addressPrefixes[] | select(. != null)' -r /tmp/microsoft.json > /tmp/microsoft-all.txt
|
||||
|
||||
# save ipv4
|
||||
grep -v ':' /tmp/microsoft-all.txt >> /tmp/microsoft-ipv4.txt
|
||||
|
||||
# save ipv6
|
||||
grep ':' /tmp/microsoft-all.txt >> /tmp/microsoft-ipv6.txt
|
||||
}
|
||||
|
||||
# Public cloud
|
||||
download_and_parse "56519"
|
||||
# US Gov
|
||||
download_and_parse "57063"
|
||||
# Germany
|
||||
download_and_parse "57064"
|
||||
# China
|
||||
download_and_parse "57062"
|
||||
|
||||
|
||||
# sort & uniq
|
||||
sort -h /tmp/microsoft-ipv4.txt | uniq > microsoft/ipv4.txt
|
||||
sort -h /tmp/microsoft-ipv6.txt | uniq > microsoft/ipv6.txt
|
||||
Reference in New Issue
Block a user