How To: Create a Custom VPC in AWS – Part 1

I am going to take you on my journey on certifying for AWS Solutions Architect by put together some straightforward guides for you learn and putting into practice the study materials you are following.

From what I have understood (and encountered), creation of a custom VPC is somewhat difficult for a beginner – so let’s get our head around it then! This is what we want to achieve:

  1. Go to a region which you haven’t used before that has at least 2 availability zones

  2.  Find VPC from the Services pane (1), select  Your VPCs (2) and finally click Create VPC (3)

  3. Enter a name and desired subnet and click Yes, Create 

  4. If you take a look under Route Tables (1) you should see a newly created routing table for the VPC (2)

  5. We’ll now create a subnet for each availability zone, paying particular attention to selecting the recently created VPC (2) and selecting the desired availability zone (3). Should you wish do this for all availability zones in that region.

  6. Once all the subnets have been created they should look something like this:

  7. Now that the subnets have been created verify that they all share the same routing table by clicking on the desired subnet (1) then selecting Routing Table (2) and finally observing the Route Table ID from the previously created VPC (3)

    As all the subnets share the same routing table – it means that they can all communicate with each other

  8. Next we’ll create an Internet Gateway which will allow internet access to our EC2 instances (more specifically to the subnet mapped to the IGW)

  9. With the Internet Gateway created we just need to select it (1) then Attach to VPC (2), selecting the new VPC (3) and Attaching it (4)

  10. We now need to create a route table so that the IGW can communicate to the EC2 instances

  11. Now that we have create the new route table (nokitel-DMZ) and attached it to our VPC we need to create a new route by making sure the desired route table is selected (1) then selecting Routes (2) tab followed by the Edit (3) button
  12. In the Routes edit options we Add another route (1) entering (2) and selecting (by default the one and only) previously created Internet Gateway (3) – then save!

  13. (Nearly there) Now we just have to associate a subnet to our routing table by going to the recently create routing table (1), select the Subnet Associations (2) tab and clicking the Edit (3) button

  14. From the subnet lists we select the desired subnet (1) which will basically be a DMZ and Save (2)


  • Create a custom VPC
  • Confirm under “Routing Tables” that a new routing table has been created for the new VPC
  • Create new subnets under the newly created VPC
    • Subnets are always mapped to a single availability zone
  • Create an Internet Gateway and attach it to the VPC
  • Create new route table so that the Internet Gateway can eventually communicate to the EC2 instances
  • Create a “route-out” for the newly created route table so that external traffic is allowed in by associating the route table to the IGW specifying as the destination address (in AWS this CIDR means allow external traffic)
  • Associate the created routing table to the desired subnet
  • Done!

Leave a Comment

Your email address will not be published. Required fields are marked *