熟悉VPC

默认VPC

首先我们先了解默认VPC配置
CIDR=172.31.0.0/16
划分了三个子网

172.31.0.0/20
172.31.32.0/20
172.31.16.0/20

可用IP数量 4091

VPC网络架构图 vpc网段划分_AWS

VPC网络架构图 vpc网段划分_vpc_02

通过上面信息,我们可以推算得出172.31.0.0/16整个子网段的信息;如下

VPC网络架构图 vpc网段划分_subnet_03

VPC网络架构图 vpc网段划分_子网_04

根据计算子网得出,每个子网原有4096个可用IP 如上图
因为下面AWSVPC 针对 IPv4 的 VPC 和子网大小调整
https://docs.aws.amazon.com/zh_cn/vpc/latest/userguide/VPC_Subnets.html#VPC_Sizing 根据AWS规定,每个子网 CIDR 块中的前四个 IP 地址和最后一个 IP 地址无法供您使用,而且无法分配到一个实例。
故,
172.31.0.0/20中的子网段中以下IP不可使用

172.31.0.0
172.31.0.1
172.31.0.2
172.31.0.3
172.31.0.255

举个栗子

在具有 CIDR 块 10.0.0.0/24 的子网中,以下五个 IP 地址是保留的:
10.0.0.0:网络地址。
10.0.0.1:由 AWS 保留,用于 VPC 路由器。
10.0.0.2:由 AWS 保留。DNS 服务器的 IP 地址是 VPC 网络范围的基址 + 2。对于包含多个 CIDR 块的 VPC,
DNS 服务器的 IP 地址位于主要 CIDR 中。我们还为 VPC 中的所有 CIDR 块预留了每个子网范围加二的基址。
10.0.0.3:由 AWS 保留,供将来使用。
10.0.0.255:网络广播地址。我们在 VPC 中不支持广播,因此我们会保留此地址。
 
根据上面信息得出每个子网的 可用IP=实际数量-个保留IP

网络扩展

上图中得知,我们一共划分出来了16个子网,实际只使用了3个子网;剩余的13个可以作为后期业务扩展的子网段使用
对于每个子网的IP数,根据计算可用IP=实际数量-个保留IP4096-5=4091
我们可以在每个子网里面创建4091台实例;每台实例可以设置所在子网段的固定IP地址。
注意注意的问题:
AWS服务资源运行的时候都会占用我们VPC中的IP地址数量,如果在创建服务资源时,需要选择所在VPC它就占用IP地址,你可以通过EC2控制台中网络接口选项控制台查看。

简单三层VPC设计

三层业务场景

VPC网络架构图 vpc网段划分_VPC网络架构图_05

VPC网络架构图 vpc网段划分_subnet_06

根据AWS 子网划分规定得出每个子网的 可用IP=512 – 5 = 507
得出每个子网可以创建507台机器

根据划分的IP段进行子网设置
VPC CIDR = 172.16.0.0/20

web服务有两个子网段做高可用
app服务有两个子网段做高可用
MySQL服务有两个子网段做高可用

预留两个子网段为后期业务扩张进行使用