Bird
Raised Fist0
AWScloud~30 mins

Route tables configuration in AWS - Mini Project: Build & Apply

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Route tables configuration
📖 Scenario: You are setting up a simple network in AWS. You need to create a route table for a Virtual Private Cloud (VPC) and add routes to direct traffic properly.
🎯 Goal: Build an AWS route table configuration with a route to the internet gateway and associate it with a subnet.
📋 What You'll Learn
Create a route table resource named MyRouteTable in the VPC with ID vpc-123abc.
Add a route to 0.0.0.0/0 that points to the internet gateway with ID igw-456def.
Associate the route table with the subnet having ID subnet-789ghi.
💡 Why This Matters
🌍 Real World
Route tables control how network traffic flows inside a cloud network. Setting them up correctly is essential for internet access and secure communication.
💼 Career
Cloud engineers and architects regularly configure route tables to manage network traffic and ensure resources can communicate as intended.
Progress0 / 4 steps
1
Create the route table resource
Create a resource called MyRouteTable of type AWS::EC2::RouteTable with the property VpcId set to vpc-123abc.
AWS
Hint

Use the Resources section and specify Type and Properties correctly.

2
Add a route to the internet gateway
Add a resource called MyRoute of type AWS::EC2::Route with properties: RouteTableId set to !Ref MyRouteTable, DestinationCidrBlock set to 0.0.0.0/0, and GatewayId set to igw-456def.
AWS
Hint

Use !Ref MyRouteTable to link the route to the route table.

3
Associate the route table with a subnet
Add a resource called MySubnetRouteTableAssociation of type AWS::EC2::SubnetRouteTableAssociation with properties: SubnetId set to subnet-789ghi and RouteTableId set to !Ref MyRouteTable.
AWS
Hint

Use the association resource to link the subnet and route table.

4
Complete the CloudFormation template
Add the top-level AWSTemplateFormatVersion set to 2010-09-09 and Description with the text Simple route table setup at the beginning of the template.
AWS
Hint

These top-level fields help AWS understand your template version and purpose.

Practice

(1/5)
1. What is the main purpose of a route table in AWS networking?
easy
A. To manage user permissions
B. To store user data securely
C. To direct network traffic between subnets and gateways
D. To monitor server health

Solution

  1. Step 1: Understand the role of route tables

    Route tables control how network traffic moves inside a cloud network by defining paths.
  2. Step 2: Identify what route tables connect

    They connect subnets to gateways or other networks, enabling communication.
  3. Final Answer:

    To direct network traffic between subnets and gateways -> Option C
  4. Quick Check:

    Route tables = traffic direction [OK]
Hint: Route tables guide traffic flow inside the cloud [OK]
Common Mistakes:
  • Confusing route tables with security groups
  • Thinking route tables store data
  • Mixing route tables with monitoring tools
2. Which of the following is the correct way to associate a route table with a subnet in AWS CLI?
easy
A. aws ec2 create-route-table --subnet-id subnet-12345 --route-table-id rtb-67890
B. aws ec2 associate-route-table --subnet-id subnet-12345 --route-table-id rtb-67890
C. aws ec2 attach-route-table --subnet subnet-12345 --table rtb-67890
D. aws ec2 link-route-table --subnet subnet-12345 --route-table rtb-67890

Solution

  1. Step 1: Identify the correct AWS CLI command for association

    The command to associate a route table with a subnet is 'associate-route-table'.
  2. Step 2: Check the correct syntax and parameters

    The correct syntax uses '--subnet-id' and '--route-table-id' flags with IDs.
  3. Final Answer:

    aws ec2 associate-route-table --subnet-id subnet-12345 --route-table-id rtb-67890 -> Option B
  4. Quick Check:

    Associate route table = associate-route-table command [OK]
Hint: Use 'associate-route-table' with subnet and route table IDs [OK]
Common Mistakes:
  • Using 'create-route-table' instead of 'associate-route-table'
  • Wrong parameter names like '--subnet' instead of '--subnet-id'
  • Using non-existent commands like 'attach-route-table'
3. Given a route table with the following routes:
Destination: 0.0.0.0/0, Target: igw-12345
Destination: 10.0.1.0/24, Target: local
What happens when an instance in subnet 10.0.1.0/24 tries to reach 8.8.8.8?
medium
A. Traffic is sent to the internet gateway (igw-12345)
B. Traffic is blocked because no route exists
C. Traffic is sent to the local subnet only
D. Traffic is sent to a NAT gateway automatically

Solution

  1. Step 1: Analyze the route for 0.0.0.0/0

    This route sends all traffic not matching other routes to the internet gateway (igw-12345).
  2. Step 2: Determine route for 8.8.8.8

    Since 8.8.8.8 is outside the local subnet, it matches the 0.0.0.0/0 route and goes to the internet gateway.
  3. Final Answer:

    Traffic is sent to the internet gateway (igw-12345) -> Option A
  4. Quick Check:

    Default route sends traffic to internet gateway [OK]
Hint: Default 0.0.0.0/0 route sends traffic outside subnet [OK]
Common Mistakes:
  • Assuming traffic is blocked without explicit deny
  • Confusing local route with internet access
  • Thinking NAT gateway is used without configuration
4. You created a route table and associated it with a subnet, but instances in that subnet cannot access the internet. What is the most likely mistake?
medium
A. The route table lacks a route to an internet gateway
B. The subnet is not associated with any route table
C. The route table has a route to a NAT gateway instead of an internet gateway
D. The instances have no security group attached

Solution

  1. Step 1: Check route table routes for internet access

    Internet access requires a route to an internet gateway (igw) for 0.0.0.0/0.
  2. Step 2: Identify missing or incorrect routes

    If the route to the internet gateway is missing, instances cannot reach the internet despite association.
  3. Final Answer:

    The route table lacks a route to an internet gateway -> Option A
  4. Quick Check:

    Internet needs 0.0.0.0/0 route to igw [OK]
Hint: Check for 0.0.0.0/0 route to internet gateway [OK]
Common Mistakes:
  • Assuming subnet association alone grants internet access
  • Confusing NAT gateway with internet gateway routes
  • Ignoring security group rules as cause
5. You have two subnets: Subnet A (10.0.1.0/24) and Subnet B (10.0.2.0/24). You want instances in Subnet A to access the internet via a NAT gateway in Subnet B, but Subnet B should not have direct internet access. How should you configure the route tables?
hard
A. Associate Subnet A's route table with 0.0.0.0/0 to the NAT gateway; Subnet B's route table with no route to internet gateway
B. Associate Subnet A's route table with 0.0.0.0/0 to the internet gateway; Subnet B's route table with 0.0.0.0/0 to the NAT gateway
C. Associate both subnets' route tables with 0.0.0.0/0 to the internet gateway
D. Associate Subnet A's route table with a route 0.0.0.0/0 to the NAT gateway; Subnet B's route table with 0.0.0.0/0 to the internet gateway

Solution

  1. Step 1: Understand NAT gateway purpose

    NAT gateway allows instances in private subnet (Subnet A) to access internet outbound.
  2. Step 2: Configure Subnet B's route table (NAT subnet)

    Subnet B must have 0.0.0.0/0 to internet gateway so NAT can reach internet. Direct access for instances in B can be restricted via security groups.
  3. Step 3: Configure Subnet A's route table

    Subnet A has 0.0.0.0/0 to NAT gateway.
  4. Final Answer:

    Associate Subnet A's route table with a route 0.0.0.0/0 to the NAT gateway; Subnet B's route table with 0.0.0.0/0 to the internet gateway -> Option D
  5. Quick Check:

    Private to NAT; NAT subnet to igw [OK]
Hint: Private subnet (A) routes to NAT; NAT subnet (B) routes to igw [OK]
Common Mistakes:
  • Omitting igw route in NAT subnet (B), breaking NAT functionality
  • Routing private subnet (A) directly to igw
  • Confusing NAT gateway and internet gateway roles