Спланируйте структуру своей облачной сети для AWS, Azure или GCP. Определите подсети, получите данные о количестве доступных хостов с учетом особенностей провайдера и сгенерируйте готовые к использованию команды CLI и код Terraform HCL.
| Name | Prefix | AZ | Type | IPv4 CIDR | Total IPs | AWS Usable | Range | |
|---|---|---|---|---|---|---|---|---|
| 10.0.0.0/24 | 256 | 251 | 10.0.0.4 - 10.0.0.254 | |||||
| 10.0.1.0/24 | 256 | 251 | 10.0.1.4 - 10.0.1.254 | |||||
| 10.0.4.0/22 | 1,024 | 1,019 | 10.0.4.4 - 10.0.7.254 | |||||
| 10.0.8.0/22 | 1,024 | 1,019 | 10.0.8.4 - 10.0.11.254 | |||||
| 10.0.12.0/24 | 256 | 251 | 10.0.12.4 - 10.0.12.254 | |||||
| 10.0.13.0/24 | 256 | 251 | 10.0.13.4 - 10.0.13.254 |
AWS reserves 5 IPs per subnet (.0 network, .1 router, .2 DNS, .3 reserved, .255 broadcast)
Free range: 10.0.14.0 – 10.0.255.255
# AWS VPC & Subnet creation -eu-west-1
# Generated by VLANlab (vlanlab.com/cloud/vpc-planner)
aws ec2 create-vpc \
--cidr-block 10.0.0.0/16 \
--region eu-west-1 \
--tag-specifications 'ResourceType=vpc,Tags=[{Key=Name,Value=main-vpc}]'
# Store the VPC ID
VPC_ID=$(aws ec2 describe-vpcs --filters Name=cidr,Values=10.0.0.0/16 --query 'Vpcs[0].VpcId' --output text)
aws ec2 create-subnet \
--vpc-id $VPC_ID \
--cidr-block 10.0.0.0/24 \
--availability-zone eu-west-1a \
--tag-specifications 'ResourceType=subnet,Tags=[{Key=Name,Value=public-a}]'
aws ec2 create-subnet \
--vpc-id $VPC_ID \
--cidr-block 10.0.1.0/24 \
--availability-zone eu-west-1b \
--tag-specifications 'ResourceType=subnet,Tags=[{Key=Name,Value=public-b}]'
aws ec2 create-subnet \
--vpc-id $VPC_ID \
--cidr-block 10.0.4.0/22 \
--availability-zone eu-west-1a \
--tag-specifications 'ResourceType=subnet,Tags=[{Key=Name,Value=private-a}]'
aws ec2 create-subnet \
--vpc-id $VPC_ID \
--cidr-block 10.0.8.0/22 \
--availability-zone eu-west-1b \
--tag-specifications 'ResourceType=subnet,Tags=[{Key=Name,Value=private-b}]'
aws ec2 create-subnet \
--vpc-id $VPC_ID \
--cidr-block 10.0.12.0/24 \
--availability-zone eu-west-1a \
--tag-specifications 'ResourceType=subnet,Tags=[{Key=Name,Value=db-a}]'
aws ec2 create-subnet \
--vpc-id $VPC_ID \
--cidr-block 10.0.13.0/24 \
--availability-zone eu-west-1b \
--tag-specifications 'ResourceType=subnet,Tags=[{Key=Name,Value=db-b}]'
# Internet Gateway (for public subnets)
# aws ec2 create-internet-gateway
# aws ec2 attach-internet-gateway --vpc-id $VPC_ID --internet-gateway-id $IGW_ID
# NAT Gateway (for private subnets outbound traffic)
# aws ec2 create-nat-gateway --subnet-id $PUBLIC_SUBNET_ID --allocation-id $EIP_IDCloud VPC Planner помогает сетевым инженерам разрабатывать схемы подсетей для AWS VPC, виртуальных сетей Azure и Google Cloud VPC ещё до того, как приступить к работе с консолью облачной платформы. Введите своё адресное пространство, определите подсети в разных зонах доступности и получите готовые команды CLI или код Terraform HCL, которые можно сразу запустить. Каждый провайдер резервирует разное количество IP-адресов на одну подсеть (AWS и Azure резервируют по 5, GCP - 4), поэтому количество доступных хостов рассчитывается автоматически для каждого провайдера.
Для AWS и Azure заранее загружена стандартная трехуровневая схема (публичные, частные и подсети баз данных, распределенные по двум зонам доступности), соответствующая типичным производственным архитектурам. В случае GCP подсети имеют региональный, а не зональный характер, поэтому столбец «Зона доступности» отсутствует. Вывод данных включает AWS CLI, Azure CLI, Bicep, gcloud CLI и Terraform HCL, что позволяет использовать любой инструмент IaC, который уже применяется в вашей команде.