<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Steve Ayeni</title>
    <description>The latest articles on DEV Community by Steve Ayeni (@steve-dev).</description>
    <link>https://dev.to/steve-dev</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3348953%2Fe4c6af05-5704-4bf0-8ed5-82610280ef26.png</url>
      <title>DEV Community: Steve Ayeni</title>
      <link>https://dev.to/steve-dev</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/steve-dev"/>
    <language>en</language>
    <item>
      <title>Building AWS Network Architecture: A Guide to VPCs, Subnets, Route Tables, and Transit Gateways</title>
      <dc:creator>Steve Ayeni</dc:creator>
      <pubDate>Sun, 13 Jul 2025 23:27:05 +0000</pubDate>
      <link>https://dev.to/steve-dev/aws-transit-gateway-configuration-2g7m</link>
      <guid>https://dev.to/steve-dev/aws-transit-gateway-configuration-2g7m</guid>
      <description>&lt;h2&gt;
  
  
  TRANSIT GATEWAY
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;What is transit gateway&lt;/strong&gt;?  AWS Transit Gateway is like a virtual traffic controller for cloud networks. Imagine you have multiple offices (VPCs), remote workers (on-prem systems), and cloud services all needing to talk to each other — instead of setting up separate phone lines between every pair, you use a central hub where everyone connects. That’s what Transit Gateway does: it brings all your networks together in one place, making it easier to manage traffic, scale your setup, and keep everything running smoothly — without the headache of tangled connections.&lt;/p&gt;

&lt;p&gt;When managing complex cloud environments, simplifying network connectivity is a top priority. That’s where AWS Transit Gateway comes in—a fully managed, highly scalable service that acts as a central hub for connecting Amazon VPCs, on-premises data centers, and other AWS services. Instead of dealing with intricate VPC peering setups, Transit Gateway streamlines connectivity, making it easier to manage distributed and multi-region architectures while improving security and operational efficiency.&lt;/p&gt;

&lt;p&gt;While AWS Transit Gateway has many powerful features, here are the ones that stands out:&lt;/p&gt;

&lt;p&gt;A. Simplified Network Architecture: No more managing complex connections; Transit Gateway consolidates connectivity into a single hub.&lt;/p&gt;

&lt;p&gt;B. Cross-Region &amp;amp; Hybrid Support: Seamlessly connect VPCs across different AWS regions and on-premises networks.&lt;/p&gt;

&lt;p&gt;C. Centralized Security &amp;amp; Control: Apply consistent routing policies, access controls, and monitoring from a single point.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa0ul4dmp4ksl7qcshxy4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa0ul4dmp4ksl7qcshxy4.png" alt=" " width="800" height="462"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Steps taken to Connect 3 VPCs with Public Subnets, IGWs, Route Tables &amp;amp; Transit Gateway
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;1. Create 3 VPCs&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
   VPC 1&lt;br&gt;&lt;br&gt;
   VPC 2&lt;br&gt;&lt;br&gt;
   VPC 3  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Create 3 Public Subnets (one in each VPC)&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
    Subnet 1 in VPC 1&lt;br&gt;&lt;br&gt;
    Subnet 2 in VPC 2&lt;br&gt;&lt;br&gt;
    Subnet 3 in VPC 3  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Create 3 Internet Gateways (one per VPC)&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
   IGW 1 attached to VPC 1&lt;br&gt;&lt;br&gt;
   IGW 2 attached to VPC 2&lt;br&gt;&lt;br&gt;
   IGW 3 attached to VPC 3  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Create 3 Route Tables (one per VPC)&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
   Route Table 1 for VPC 1&lt;br&gt;&lt;br&gt;
   Route Table 2 for VPC 2&lt;br&gt;&lt;br&gt;
   Route Table 3 for VPC 3  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5. Associate Each Public Subnet with Its Route Table&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
    Associate Subnet 1 with Route Table 1&lt;br&gt;&lt;br&gt;
    Associate Subnet 2 with Route Table 2&lt;br&gt;&lt;br&gt;
    Associate Subnet 3 with Route Table 3  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;6. Add Default Routes to Internet Gateways in Each Route Table&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
    Route Table 1: &lt;code&gt;0.0.0.0/0 → IGW 1&lt;/code&gt;&lt;br&gt;&lt;br&gt;
    Route Table 2: &lt;code&gt;0.0.0.0/0 → IGW 2&lt;/code&gt;&lt;br&gt;&lt;br&gt;
    Route Table 3: &lt;code&gt;0.0.0.0/0 → IGW 3&lt;/code&gt;  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;7. Create a Transit Gateway (TGW)&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
    Deploy Transit Gateway  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;8. Attach Each VPC to the Transit Gateway&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
    TGW Attachment for VPC 1&lt;br&gt;&lt;br&gt;
    TGW Attachment for VPC 2&lt;br&gt;&lt;br&gt;
    TGW Attachment for VPC 3  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;9. Update Route Tables in Each VPC for TGW Routing&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
    &lt;strong&gt;Route Table 1:&lt;/strong&gt; Add routes for VPC 2 &amp;amp; VPC 3 CIDRs → TGW&lt;br&gt;&lt;br&gt;
    &lt;strong&gt;Route Table 2:&lt;/strong&gt; Add routes for VPC 1 &amp;amp; VPC 3 CIDRs → TGW&lt;br&gt;&lt;br&gt;
    &lt;strong&gt;Route Table 3:&lt;/strong&gt; Add routes for VPC 1 &amp;amp; VPC 2 CIDRs → TGW  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;10. (Optional) Enable DNS Resolution in TGW&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;11. Verify Connectivity&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
    Test inter-VPC traffic via TGW&lt;br&gt;&lt;br&gt;
    Test internet access via IGWs  &lt;/p&gt;

&lt;p&gt;What is a VPC (Virtual Private Cloud)?&lt;/p&gt;

&lt;p&gt;A Virtual Private Cloud (VPC) is a private, isolated section of the AWS Cloud where you can launch resources (like EC2 instances, databases, and load balancers) in a logically defined virtual network. Think of it as your personal "cloud data center" with complete control over:&lt;/p&gt;

&lt;p&gt;A. Network configuration (IP addressing, subnets, routing).&lt;br&gt;
B. Security (firewall rules via security groups and network ACLs).&lt;br&gt;
C. Connectivity (to the internet, other VPCs, or on-premises networks via VPN or Direct Connect).&lt;/p&gt;

&lt;h2&gt;
  
  
  Key components of a VPC:
&lt;/h2&gt;

&lt;p&gt;A. Subnets – Segments of your VPC’s IP range (public/private).&lt;br&gt;
B. Route Tables – Define traffic rules between subnets and external networks.&lt;br&gt;
C. internet Gateway (IGW) – Allows public subnet resources to access the internet.&lt;br&gt;
D. NAT Gateway – Enables private subnets to access the internet securely.&lt;br&gt;
Security Groups &amp;amp; NACLs – Act as firewalls for instance-level and subnet-level traffic.&lt;br&gt;
E. VPC Peering &amp;amp; Transit Gateway – Connects VPCs to each other or to on-premises networks&lt;/p&gt;

&lt;h2&gt;
  
  
  The VPC shots
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkfeukmzovfv2bniiovmq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkfeukmzovfv2bniiovmq.png" alt="Vpc-1" width="800" height="268"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsgclgozoxhiftomdbee8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsgclgozoxhiftomdbee8.png" alt="Vpc-2" width="800" height="279"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmz8t9felwb3z10y1b0n6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmz8t9felwb3z10y1b0n6.png" alt="Vpc-3" width="800" height="264"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Inside My VPCs: There are three public Subnets Waiting for Transit Gateway’s Magic
&lt;/h2&gt;

&lt;p&gt;Subnets act like secure rooms in the VPC house - keeping different workloads separated yet connected in controlled ways. Public subnets face the internet.&lt;/p&gt;

&lt;h2&gt;
  
  
  Public-Subnet shots
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F35qoaodrgwjbkixnvd1q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F35qoaodrgwjbkixnvd1q.png" alt="Public-subnet-1" width="800" height="379"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhwbv6etvymr4l1wvxxsy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhwbv6etvymr4l1wvxxsy.png" alt="Public-subnet-2" width="800" height="260"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgh9jpzrupphjj1bzk0kl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgh9jpzrupphjj1bzk0kl.png" alt="Public-subnet-3" width="800" height="277"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Deploying Internet Gateways for All three public Subnets"
&lt;/h2&gt;

&lt;p&gt;An Internet Gateway (IGW) lets the subnets communicate to the internet. Transit Gateway connects VPCs, but IGW handles outside access&lt;/p&gt;

&lt;p&gt;Set Up for three Internet Gateways (One for Each Subnet)&lt;br&gt;
Since each subnet needs internet access, I created three Internet Gateways (IGW)—one for each of my three subnets. Here’s how it works:&lt;/p&gt;

&lt;p&gt;Created 3 Subnets&lt;/p&gt;

&lt;p&gt;Subnet 1 (Public)&lt;/p&gt;

&lt;p&gt;Subnet 2 (Public)&lt;/p&gt;

&lt;p&gt;Subnet 3 (Public)&lt;/p&gt;

&lt;p&gt;Attached an Internet Gateway to Each&lt;/p&gt;

&lt;p&gt;IGW-1 → Subnet 1&lt;/p&gt;

&lt;p&gt;IGW-2 → Subnet 2&lt;/p&gt;

&lt;p&gt;IGW-3 → Subnet 3&lt;/p&gt;

&lt;p&gt;Why Separate IGWs?&lt;/p&gt;

&lt;p&gt;Ensures independent internet access for each subnet.&lt;/p&gt;

&lt;p&gt;Avoids bottlenecks (though AWS IGWs scale, this design keeps traffic isolated).&lt;/p&gt;

&lt;h2&gt;
  
  
  The Internet gateway shots
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F383hq9jvua0cbo7z59b6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F383hq9jvua0cbo7z59b6.png" alt="IGW-1" width="800" height="255"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2if3omtfb1if4qo5r03x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2if3omtfb1if4qo5r03x.png" alt="IGW-2" width="800" height="239"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6glf7dwdhqa9teuqenjf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6glf7dwdhqa9teuqenjf.png" alt="IGW-3" width="800" height="245"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Subnet Association
&lt;/h2&gt;

&lt;p&gt;Subnet association links a subnet to a route table, defining how traffic enters/exits that subnet. Key Functions of Subnet Association are&lt;br&gt;
Traffic Routing, it determines if the subnet is public (routes to an Internet Gateway) or private (routes to a NAT Gateway/TGW).&lt;/p&gt;

&lt;p&gt;The Subnet-associations shots&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftfkc9vhhpenxbv3i5fud.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftfkc9vhhpenxbv3i5fud.png" alt="Subnet association-1" width="800" height="130"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F53y67491upnzn545v7f1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F53y67491upnzn545v7f1.png" alt="Subnet association-2" width="800" height="116"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3fdvgwjued2vcfy7gga8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3fdvgwjued2vcfy7gga8.png" alt="Subnet association-3" width="800" height="117"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Deploying route-table for the Vpcs and the subnets
&lt;/h2&gt;

&lt;p&gt;A route table is a set of rules (routes) that determines how network traffic is directed within VPC and subnets. Think of it as a "traffic signboard" for your cloud network—it tells data packets where to go.&lt;/p&gt;

&lt;p&gt;To enable internet access and Transit Gateway connectivity for of my three VPCs (10.2.0.0/16, 192.168.37.0/24, 172.25.6.0/24), your route tables should include:&lt;/p&gt;

&lt;p&gt;Internet Access:&lt;/p&gt;

&lt;p&gt;Route: 0.0.0.0/0 → Internet Gateway (IGW)&lt;br&gt;
(Allows public subnets to reach the internet)&lt;/p&gt;

&lt;p&gt;Transit Gateway (TGW) for Cross-VPC Traffic:&lt;/p&gt;

&lt;p&gt;Route: 10.2.0.0/16 → TGW (VPC1 to others)&lt;/p&gt;

&lt;p&gt;Route: 192.168.37.0/24 → TGW (VPC2 to others)&lt;/p&gt;

&lt;p&gt;Route: 172.25.6.0/24 → TGW (VPC3 to others)&lt;/p&gt;

&lt;p&gt;Local VPC Traffic:&lt;/p&gt;

&lt;p&gt;Route: [VPC_CIDR] → local &lt;/p&gt;

&lt;h2&gt;
  
  
  The route-table shots
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3hzpal4zjv1m4ws9uynb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3hzpal4zjv1m4ws9uynb.png" alt="RTB-1" width="800" height="416"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4rvffqweegryvb0brxnm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4rvffqweegryvb0brxnm.png" alt="RTB-2" width="800" height="408"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0jrjjri88xfibxvf9q0v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0jrjjri88xfibxvf9q0v.png" alt="RTB-3" width="800" height="419"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Transit-Gateway
&lt;/h2&gt;

&lt;p&gt;To simplify and streamline connectivity between the three VPCs (10.2.0.0/16, 192.168.37.0/24, and 172.25.6.0/24), Implementation of AWS Transit Gateway (TGW) is required. Here’s why:&lt;/p&gt;

&lt;p&gt;A. Seamless Communication Without Complexity: No more messy peering, instead of managing multiple VPC peering connections (which become complex as more VPCs are added), Transit Gateway acts as a central hub that all VPCs connect to.&lt;br&gt;
., One Connection Point: Each VPC attaches once to the TGW—no need for separate links between every pair.&lt;/p&gt;

&lt;p&gt;B. Simplified Routing&lt;br&gt;
Single Route Table Control: Traffic between VPCs flows through the Transit Gateway, eliminating the need to update route tables in every VPC manually.&lt;/p&gt;

&lt;p&gt;Easy Scaling: Adding future VPCs? Just attach them to the TGW—no reconfiguring existing connections.&lt;/p&gt;

&lt;p&gt;C. Secure &amp;amp; Efficient&lt;br&gt;
Centralized Security Policies: Apply consistent routing and security rules across all connected VPCs.&lt;/p&gt;

&lt;p&gt;Reduced Overhead: No more managing individual peering requests or route updates. &lt;/p&gt;

&lt;h2&gt;
  
  
  The transit gateway/transit gateway attachment shots
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F80danrigkij7xaith9ru.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F80danrigkij7xaith9ru.png" alt="TGW" width="800" height="316"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqlaqabxlcimm36yntgb7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqlaqabxlcimm36yntgb7.png" alt="TGW-Attachment-1" width="800" height="284"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs6ue1h9rv0maiqos8alb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs6ue1h9rv0maiqos8alb.png" alt="TGW-Attachment-2" width="800" height="315"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyq70aj5sass6f4odq1xh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyq70aj5sass6f4odq1xh.png" alt="TGW-Attachment-3" width="800" height="315"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Testing Connectivity: Using an EC2 Instance to Verify Communication among Servers
&lt;/h2&gt;

&lt;p&gt;To confirm that my three VPCs (10.2.0.0/16, 192.168.37.0/24, and 172.25.6.0/24) are properly connected via Transit Gateway, create an EC2 instance in each of the VPC and cross ping among servers to verify connectivity.&lt;/p&gt;

&lt;p&gt;Step 1: Launch an EC2 Instance (Ping Tester)&lt;br&gt;
VPC: 10.2.0.0/16 (Main VPC)&lt;/p&gt;

&lt;p&gt;Subnet: Public (to allow SSH access)&lt;/p&gt;

&lt;p&gt;Security Group:&lt;/p&gt;

&lt;p&gt;Allow SSH (Port 22) from my IP.&lt;/p&gt;

&lt;p&gt;Allow ICMP (Ping) from the other VPCs’ private IP ranges.&lt;/p&gt;

&lt;p&gt;Step 2: Prepare the Target Servers&lt;br&gt;
Ensure the servers in the other VPCs (192.168.37.0/24 and 172.25.6.0/24) have ICMP (Ping) enabled in their security groups. &lt;/p&gt;

&lt;p&gt;The below screenshots demonstrate the above illustrations&lt;/p&gt;

&lt;p&gt;The eC2-Instance shots &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj6fjylqchkilc58n3j81.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj6fjylqchkilc58n3j81.png" alt="EC2-Instances" width="800" height="204"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fywzzo0vq8imsak8f0b51.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fywzzo0vq8imsak8f0b51.png" alt="EC2-1" width="800" height="352"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F50jueft1y156ch264amw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F50jueft1y156ch264amw.png" alt="EC2-2" width="800" height="334"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0cgzybk18lvugxpdtwqr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0cgzybk18lvugxpdtwqr.png" alt="EC2-3" width="800" height="349"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Testing Private Server Connectivity via cross Ping!&lt;/p&gt;

&lt;h2&gt;
  
  
  The Webservers testing shots
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzy68l17epxt6fxy5p2kf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzy68l17epxt6fxy5p2kf.png" alt=" " width="800" height="298"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxnxnb56wwd9xth7s1kol.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxnxnb56wwd9xth7s1kol.png" alt=" " width="800" height="268"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5bu72n21oxuzxq5pvxdo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5bu72n21oxuzxq5pvxdo.png" alt=" " width="800" height="239"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>cloudcomputing</category>
      <category>devops</category>
      <category>aws</category>
    </item>
  </channel>
</rss>
