
Welcome to AWS Networking with Virtual Private Cloud for beginners. If you are new to computer networking and want to build solutions in AWS that involve networking, then this course is for you. You don’t need any prior knowledge in networking or AWS to follow this course. Let's get started.
In this lesson, we are going to look at the physical infrastructure of Amazon Web Services which is important to understand when building a solution on AWS using Virtual Private Cloud or for that matter any service in AWS. At a high level, Amazon Web Service is made up of large data centers that are located around the world. These data centers are clustered into groups which AWS calls regions. Each region has 2 or more Availability Zones. Availability Zones are connected with very fast connectivity and spread out such that natural disaster won't take out all of the AZ's in one region. This is a key concept to building a more resilient solution in AWS by spreading your workload into multiple availability zones.
In this lesson, we are going to launch an EC2 server on AWS and try to connect from our computer. It’s our first networking use case between our computer and a server on AWS. If you are somewhat new to AWS, this will be a good practice as we’ll reuse these steps many times in future lessons.
The primary purpose of a VPC is to allow you to build a network of computers that can talk to each other. This ability to build connections between computers is the heart of networking that we’ll cover in the rest of this course. VPC has many features to control which computers can and cannot talk to each other. You can create sub-groups of computers and much more. So in essence, VPC is a feature within AWS to build a network of resources.
In this lesson, we are going to discuss what is Internet Protocol Address and how to use a Classless Inter-domain Routing (CIDR) notation. These are key concepts of computer networking and it is used throughout AWS. We'll also cover rule for CIDR blocks when creating VPC.
IP address is used to uniquely identify a computer.
IP address is made up of four sets of 8 bits or octet which can range from 0 to 255
A Network is identified by a range of IP addresses it contains.
Classless Inter-domain Routing or CIDR notation is a shorthand way of specifying a range of IP addresses.
AWS VPC uses IPv4 CIDR block to identify a network
AWS VPC CIDR block can range from /28 to /16
AWS VPC CIDR block IP address cannot start with 0
In this lesson, we’ll explain what is a public and private IP address. Public IP address is allocated by governing body and is used for public internet routing. Private IP address is used for a private network and you can select them.
Following are the recommended private IPv4 ranges
10.0.0.0 to 10.255.255.255 10.0.0.0/8 - 16,777,216 combinations
172.16.0.0 to 172.31.255.255 - 172.16.0.0/12 - 1,048,576
192.168.0.0 to 192.168.255.255 - 192.168.0.0/16 - 65,536
Now that we understand what is a Virtual Private Cloud and the role of IP addresses, let’s get into a feature of VPC called subnets. If you think of VPC as a network of computers, then a subnet is a smaller group of computers organized within a VPC. Recall that a VPC is defined by a range of IP addresses specified in a CIDR notation. So it makes sense that a subnet within a VPC would be made up of a subset of IP addresses of the VPC. So, a subnet is defined as a sunset of ip addresses within a VPC.
In this lesson, we’ll discuss what is an Internet Gateway and why we need it in a virtual private cloud. We’ll also discuss a process known as network address translation or NAT.
In this lesson, we’ll look at what is an elastic IP Address. Simply, an Elastic IP address is just another word for the public IP address we’ve been talking about. So, an elastic IP address is one of the 4.3 billion public IP addresses used on the public internet. Recall in our previous lesson that there are governing bodies who allocate these IP addresses and one of their jobs is to make sure there is no duplicate allocation. So you might be asking, do we need to go to these folks everytime we need a public ip address? The answer is no. It turns out that AWS already got a large allocation of public IP addresses for each region.
In this lesson, we’ll discuss what is an Elastic Network Interface or ENI. If you ever took apart a computer, you may have seen a network card with a jack for network cable. In these types of computers, you can change the network card or take it out and put it on another computer. Well, an elastic network interface is kinda like these network cards except they are virtual components we can use to assemble our EC2 server. In AWS, one of the main functions of an elastic network interface is to associate private and public IP addresses
In this lesson, we’ll discuss what is a route table and what it’s used for. How does a router know where to direct the packets so it ends up where it needs to go? At a high level, a router has a kind of a look up table and in AWS, this is called a route table. Each entry in the route table is called a route. Whenever a router receives a packet, it looks at the packet’s destination IP address then compares a route table. Then when a matching destination is found, the router forwards the packet to the corresponding target.
In this lesson, we’ll discuss what is a security group and its purpose. If you’ve been following the lessons so far, we’ve already come across security groups several times already but we just selected the default option without understanding what it means. At a high level, a security group is a feature that allows us to control the inbound and outbound traffic at the EC2 instance level. This is sometimes referred to as a firewall.
In this lesson, we’ll discuss what is a “NAT Gateway” and one of its common use cases. We already saw a simple version of Network Address Translation in the Internet Gateway lesson where the internet gateway flipped the private and public IP address when traffic leaves the VPC to the public Internet. The NAT Gateway is a more scalable version of this idea.
In this lesson, we’ll discuss what is a VPC peering and look in depth at how VPC peering works. At a high level, the VPC peering is a way to connect 2 VPC’s such that resources in each VPC’s can connect to each other using their private IP address. This allows the traffic to stay within the AWS infrastructure and never traverse the public internet thus reducing potential threats from the outside. The VPC’s can be in the same account or different accounts. The VPC’s can even be in different regions.
Congratulations. You have successfully completed the AWS Networking with Virtual Private Cloud course. Before wrapping up, there are 4 recommended next steps.
VPC Limitation
VPC Pricing
Security
Automation
Thank you and I would appreciate if you leave a rating and comment to help me improve on future courses. Keep learning & keep building.
Welcome to AWS Networking with Virtual Private Cloud for beginners. If you are new to computer networking and want to build solutions in AWS that involve networking, then this course is for you. You don’t need any prior knowledge in networking or AWS to follow this course.
Computer networking is a way for computers to communicate with one another. While we may take this for granted, it’s important to understand the fundamentals of networking when you build your solutions. In AWS, the virtual private cloud is the primary service that provides networking capabilities. So in this course, we’ll learn about networking concepts and apply them using AWS virtual private cloud.
We’ll begin with AWS infrastructure to lay the foundation for the course. Then we’ll get into what exactly is a virtual private cloud. Along the way, we’ll cover many fundamentals topics such as public and private IP addresses, CIDR notation, protocols, ports and subnets.
There will be a lot of demonstrations to illustrate the core features of Virtual Private Cloud including internet gateway, elastic IP address, elastic network interface, route table, security group, NAT gateway and VPC peering. If these terms don’t mean anything to you right now, don’t worry. By the end of the course, you’ll have a firm understanding of what they mean and how to apply these features to your solution.
I encourage you to go through the lessons in sequence as they build upon each other. Also try the examples yourself as there’s no substitute for learning by doing when it comes to building your AWS skills. You can sign up for an AWS account with a free tier. I’ll provide several resources in the lectures to help you. Finally, don’t feel rushed to cover all of the materials quickly. Feel free to take a break to reflect on what you learned and explore any topics deeper if you want. Now, put yourself in a comfortable and relaxed state of mind and let’s get started!