image
Fundamentals of IPv4
Fundamentals of IPv4
Difficulty
Intermediate
Duration
35m
Students
89
Ratings
5/5
Description

In this course, we will review some of the internet protocol version 4 features of Amazon VPCs. Then you will be presented with internet protocol version 6, its notation and how to enable it for use with Amazon Virtual Private Clouds and EC2 Instances.

Learning Objectives

Discuss IPv4, IPv6 and how to configure it to be supported by Amazon VPCs and EC2 Instances.

Intended Audience

This course is intended for architects and system operators looking to benefit by using IPv6 addressing with AWS resources. This course also covers some of the objectives for both the solutions architect professional and the AWS Networking Specialty certifications. 

Prerequisites

To get the most out of this course you will need to meet the requirements for any of the AWS associate level certifications or the equivalent experience.  

This course expects that you are familiar with the fundamentals of networking using AWS including Amazon Virtual Private Clouds, Public Subnets, Private Subnets, and IPv4 as used in EC2 Instances.  

Transcript

Fundamentals of IPv4. The main reason for the development of the Internet Protocol version six was to resolve the issues presented by the current and still most widely used Internet protocol version four, or IPv4 for short. Let's take a quick look at this IPv4 address space. IPv4 addresses are 32-bits long. The space provides a total of approximately 4.3 billion addresses and this is already less than one address per person on Earth. Consider how many devices you own with Internet connectivity and we can see how this amount of addresses is just not sufficient. 

A second important detail about IPv4 is that addresses are written with four octets separated by dots. For example, addresses can go from four zeros separated by dots like 0.0.0.0. all the way to four 255 number separated by dots as in 255.255.255.255. Now, Classless Inter-Domain Routing or CIDR represents an IP addressing scheme that replaces the older system based on classes A, B, and C. A single IP address can be used to represent a block of IP addresses using a CIDR. 

A CIDR ends with a slash followed by a number representing the IP network prefix. CIDR addresses reduce the size of routing tables by compressing the representation multiple IP addresses into a single expression. For example, 10.0.0.0/16 represents over 65,000 possible IPv4 addresses. Let's take a look at some of these CIDRs and how they are interpreted. Example number one, we just talked about which is 10.0.0.0/16. That gives you a total of over 65,000 total Hosts. Notice the total AWS Host is the same number minus five. We're going to talk about that a little later. The last IP 10.0.255.255. 

Example number two has a CIDR to IP address range 10.0.0.0/24. That gives us a total of 256 possible Hosts starting from 10.0.0.0 all the way allowing the very last digit to go from 0 to 255. Notice, once again the total AWS Hosts- 251. The CIDR to IP range of 172.31.0.0/16 gives us first IP of 172.31.0.0 and ending on 255.255. So, that 16-bit mask actually allows for the last two decimal digits to fluctuate from 0 to 255. Once again, a total of over 65,000 addresses. 

Example number four is 10.0.0.0/20 giving us a total of over 4000 addresses starting at 10.0.0.0. And then the last IP being 10.0.15.255. These boundaries are important as a way to design IP address spaces where you don't get overlapping IP addresses in particular as you're using private IP addressing schemes such as this one. The last sample is 10.0.0.0/28, which gives us a total of 16 total Hosts, and with AWS reserving five, a total of 11 AWS Hosts.

So, you get to see regarding IPv4 and VPCs, AWS reserves five IP addresses for every IPv4 CIDR defined. Two of these are required for basic networking, basically the first address on the very last address; The network address and the broadcast address. So, these two are required for basic network. The remaining three are reserved. Number one for internal communications. Number two for DNS resolution, and the third one for future use. 

Also, note how VPCs using IPv4, you can use a maximum CIDR of /16 with over 65,000 possible IP addresses and a minimum of /28. Of course, these are all private IPv4. So, AWS VPCs and IPv4 addresses can be private or publicly addressable. There is a significant distinction between the two. The default value assigned is a private IP address unless you specify an elastic IP address or enable a subnet to auto-assign public IP address the resources as they are created. 

For AWS VPCs it is common to CIDRs of the form 172.31.0.0/16 that's used for default VPCs. And it is not unusual to see examples of custom VPCs using the CIDR 10.0.0.0/16 assets starting site. So, basically public IP addresses are usable over the  Internet. And private addresses need to be translated to a public address using network address translation or not. This is how the issue of not having enough IP addresses is mitigated for now. NAT allows multiple devices with private IP addresses to share a single public IP address. It is important you have a robust and cohesive IP address strategy. This will help prevent issues with duplicate addresses as well as possible connectivity issues. 

There's a feature for Amazon VPCs that can help with your IP address management and architecture. The Amazon VPC IP address manager or IPAM helps you track and monitor IP addresses in your AWS implementation. It features automation to allocate CIDRs to VPCs using specific business rules, monitor IP address usage, view the history of IP address assignment, and enable cross region and cross account sharing of addresses, among other features. It is a good feature to centralize the catalog, usage and monitoring of your IP addresses.

 

About the Author
Avatar
Jorge Negrón
AWS Content Architect
Students
4658
Courses
19
Learning Paths
2

Experienced in architecture and delivery of cloud-based solutions, the development, and delivery of technical training, defining requirements, use cases, and validating architectures for results. Excellent leadership, communication, and presentation skills with attention to details. Hands-on administration/development experience with the ability to mentor and train current & emerging technologies, (Cloud, ML, IoT, Microservices, Big Data & Analytics).