I have been creating AWS VPCs and I am wondering if there is a recommended CIDR value when creating VPCs. What are the factors that I must consider when choosing a CIDR and does the CIDR value affect the performance of the network?
I have been creating AWS VPCs and I am wondering if there is a recommended CIDR value when creating VPCs. What are the factors that I must consider when choosing a CIDR and does the CIDR value affect the performance of the network?
I would recommend the following considerations:
If you creating an IPSEC connection between your corporate LAN and your VPC, use a CIDR that is different than that on your corporate LAN. This will prevent routing overlaps and create an identity distinction for reference.
For very large networks, use at least different 16-bit masks in different regions eg
For smaller networks, use a 24-bit mask in different regions eg
Consider making a distinction between private and public subnets, eg
Don't over-allocate address space to subnets, eg
Don't under-allocate either. If you use a load of Elastic Load Balancers, remember that they will also consume available ip addresses on your subnets. This is a particularly true if you use ElasticBeanstalk.
Some things I considered the last time I created a new VPC:
172.31.0.0/16
inus-west
eu-ireland
, for example. It will make VPN between those two regions a problem requiring double-NAT to solve. No thanks.x.x.x.x/24
will accommodate 254 different addresses. There are probably hundreds of CIDR calculators out there to help you figure this out.Amazon doesn't appear to recommend any particular network size for your VPC (see the VPC network administrator's guide and note the use of /16s), but in general there are two reasons to consider the performance effects of CIDR:
Consider the initial number of nodes in your VPC and projected growth for the anticipated project lifetime and you should have a good starting point for prefix size. Remember that there is no harm in starting with a small prefix such as /16 because you can always create subnets.
Another consideration is whether you will need to use AWS ClassicLink to allow access to the VPC from EC2 instances outside of the VPC. From the AWS documentation:
from http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html#classiclink-routing
In case someone may find this question and would be interested in setting a CIDR-based specification of just a single ip address (such as if you are setting the RDP IP allowed in a new AWS stack), you would do that with the ip address and then /32 (which means "one ip address), so if your address were 66.12.34.567 you'd specify:
66.12.34.567/32
The recommended CIDR for VPC depends on requirement. The largest block size for VPC Ipv4 CIDR is a
/16
netmask with65,536
IP addresses and Smallest is a/28
netmask with16
IP addresses.