{"id":34852256,"url":"https://github.com/groovy-sky/azure-ip-ranges","last_synced_at":"2025-12-25T19:27:01.524Z","repository":{"id":50723251,"uuid":"457089131","full_name":"groovy-sky/azure-ip-ranges","owner":"groovy-sky","description":"Stores Azure DC IP addresses","archived":false,"fork":false,"pushed_at":"2024-03-22T03:06:53.000Z","size":8498,"stargazers_count":11,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-03-22T04:24:38.838Z","etag":null,"topics":["automation","azure","cloud","github-actions","ip","microsoft","microsoft-azure","network","public-data"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/groovy-sky.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2022-02-08T20:15:43.000Z","updated_at":"2024-04-15T05:43:10.947Z","dependencies_parsed_at":"2023-01-30T05:31:28.172Z","dependency_job_id":"5bde05d8-6773-4c8d-a7cc-b75d968051ae","html_url":"https://github.com/groovy-sky/azure-ip-ranges","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/groovy-sky/azure-ip-ranges","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/groovy-sky%2Fazure-ip-ranges","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/groovy-sky%2Fazure-ip-ranges/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/groovy-sky%2Fazure-ip-ranges/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/groovy-sky%2Fazure-ip-ranges/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/groovy-sky","download_url":"https://codeload.github.com/groovy-sky/azure-ip-ranges/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/groovy-sky%2Fazure-ip-ranges/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28035495,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-12-25T02:00:05.988Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","azure","cloud","github-actions","ip","microsoft","microsoft-azure","network","public-data"],"created_at":"2025-12-25T19:26:59.433Z","updated_at":"2025-12-25T19:27:01.512Z","avatar_url":"https://github.com/groovy-sky.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"#  Azure IP Ranges and Service Tags – Public Cloud\n\nThis repository obtains and stores (using Action) the current Azure's Datacenters public IP addresses. Results you can check [here](/ip).\n\n![](/img/logo.png)\n\n## Why?\n\nBy default, Microsoft doesn't provide a posibility to obtain Azure DC IP anonymously. Instead, it suggest to use [Azure CLI/Powershell/REST](https://docs.microsoft.com/en-us/azure/virtual-network/service-tags-overview#service-tags-on-premises) to query Azure using an authorized account. **The main aim of this repository is** to show how with a minimum effort you can obtain and store all necessary configs/data in one place.\n\n## How?\n\nThere is only [one workflow](/.github/workflows/main.yml) which do a few things:\n1. Converts and stores SPN_KEY_BASE64 secret as a certificate (which is used for authentication).\n2. Using the certificate logins to Azure CLI.\n3. Executes [script.sh](/ip/script.sh), which get IPs and stores them in separate files locally.\n4. Pushes changes to this repository.\n\n## What?\n\nThe result of the workflow is a bunch of files with IP addresses. For easier search I also wrote a small Python script which can be used to search for a specific IP in all of these files. The script is located [here](/search.py). You can install it using the following command(you'll need to have Python and Linux OS/WSL installed):\n\n```\ncurl -s https://raw.githubusercontent.com/groovy-sky/azure-ip-ranges/main/requirements.txt | xargs -n 1 pip install --user\nalias azsearch='curl -s https://raw.githubusercontent.com/groovy-sky/azure-ip-ranges/main/search.py | python -'  # Add this to your .bashrc or .zshrc\n```\n\nAfter that you can use it like this:\n\n```\nazsearch [IP_ADDRESS]\n```\n\nAs a result you will get a list of files where the IP is located (or none if it's not found). Also works in Azure CLI:\n![](/img/ipsearch_example.png)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgroovy-sky%2Fazure-ip-ranges","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgroovy-sky%2Fazure-ip-ranges","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgroovy-sky%2Fazure-ip-ranges/lists"}