{"id":13821384,"url":"https://github.com/cavaliercoder/vpc-free","last_synced_at":"2025-05-16T12:33:16.758Z","repository":{"id":37514065,"uuid":"92820003","full_name":"cavaliercoder/vpc-free","owner":"cavaliercoder","description":"Find free IP address blocks in AWS EC2.","archived":false,"fork":false,"pushed_at":"2019-06-26T00:24:45.000Z","size":313,"stargazers_count":59,"open_issues_count":1,"forks_count":19,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-05T16:11:57.411Z","etag":null,"topics":["aws","vpc"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cavaliercoder.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-05-30T10:04:27.000Z","updated_at":"2025-02-12T06:52:25.000Z","dependencies_parsed_at":"2022-08-19T05:21:06.819Z","dependency_job_id":null,"html_url":"https://github.com/cavaliercoder/vpc-free","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cavaliercoder%2Fvpc-free","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cavaliercoder%2Fvpc-free/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cavaliercoder%2Fvpc-free/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cavaliercoder%2Fvpc-free/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cavaliercoder","download_url":"https://codeload.github.com/cavaliercoder/vpc-free/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254530648,"owners_count":22086652,"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","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":["aws","vpc"],"created_at":"2024-08-04T08:01:21.057Z","updated_at":"2025-05-16T12:33:15.496Z","avatar_url":"https://github.com/cavaliercoder.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"vpc-free\n========\n\nThis script searches for the largest available IP subnets within the unallocated\nspaces between your VPC subnets, or between VPCs for a given CIDR block.\n\n.. image:: assets/screen.png\n   :alt: free address blocks in a VPC\n\nInstallation\n------------\n\nInstall ``vpc-free`` to ``/usr/local/bin`` with:\n\n.. code-block:: shell\n\n    $ pip install vpc-free\n\nThe script uses the Amazon AWS SDK (``boto3``) to connect to AWS. The SDK must\nbe configured with credentials to connect to the AWS APIs. Please see the `Boto3\ndocumentation`_ for instruction.\n\n.. _Boto3 Documentation: http://boto3.readthedocs.io/en/latest/guide/quickstart.html#configuration\n\nUsage\n-----\n\n.. code-block:: shell\n\n    $ vpc-free -h\n    usage: vpc-free [-h] TARGET\n\n    Find free IP blocks in AWS EC2.\n\n    positional arguments:\n      TARGET      CIDR, VPC ID or VPC Name to search\n\n    optional arguments:\n      -h, --help  show this help message and exit\n\nExamples\n--------\n\n.. code-block:: shell\n\n    # search for unallocated blocks between VPCs in 10.0.0.0/8\n    $ vpc-free 10.0.0.0/8\n    MIN IP    MAX IP         MASK SIZE     BEST         LABEL\n    10.0.0.0  10.63.255.255  /10  4194304  10.0.0.0/10  FREE\n    10.64.0.0 10.64.255.255  /16  65536                 vpc-c4871ca0 (Demo)\n    10.65.0.0 10.255.255.255      12517376 10.128.0.0/9 FREE\n\n    # search for unallocated blocks between subnets in a VPC\n    $ vpc-free vpc-c4671caf\n    10.64.0.0  10.64.15.255  /20  4096                 subnet-74247002 (Subnet 1)\n    10.64.16.0 10.64.31.255  /20  4096                 subnet-d32421a5 (Subnet 2)\n    10.64.32.0 10.64.47.255  /20  4096  10.64.32.0/20  FREE\n    10.64.48.0 10.64.63.255  /20  4096                 subnet-0a257077 (Subnet 4)\n    10.64.64.0 10.64.255.255      49152 10.64.128.0/17 FREE\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcavaliercoder%2Fvpc-free","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcavaliercoder%2Fvpc-free","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcavaliercoder%2Fvpc-free/lists"}