Skip to main content

AWS Route 53 - A Complete Guide

AWS Route 53 - A Complete Guide

In this article, we will see what is AWS route 53 and how to use it for your application. AWS Route 53 - A Complete Guide.

Recent Articles,

A Complete Guide to AWS Elastic Load Balancer using Nodejs

How to Install Nodejs in AWS EC2 in a proper way

What is AWS Route 53

Basically, Route53 is a Managed DNS(Domain Name System). DNS is a collection of rules and records through which user can understand how to reach an application server through URLs.

Simple Example

In a simpler terms, every application is deployed onto the cloud which is a physical server machine. each server machine will have an ip address to access it.

you can access your application using the ip address. but we as user, it is very hard to remember the numbers.

so, each server ip address will be mapped with a Server name.

In AWS, there are four most common records. they are,

  • A : URL to IPv4
  • AAAA : URL to IPv6
  • CNAME : URL to URL
  • Alias : URL to AWS Resource

A Record : URL to IPv4

This record maps the URL to IPv4. URL is your registered DNS and IPv4 is your application IP Address.

Remember : There is a difference between IPv4 and IPv6. Ipv4 is a 32 bit ip address whereas IPv6 is a 128 bit ip address.

IPv4 Format : 12.244.233.165

AAAA Record : URL to IPv6

After, it is a AAAA record that maps the URL to IPv6. Like we said before, If you want to map the URL to IPv6 application ip address. you can use AAAA Record.

IPv6 Format : 2001:0db8:0000:0000:0000:ff00:0042:7879

CNAME : URL to URL

If you want to map an URL with another URL. go with CNAME record. it is a rare case to do in application development.

Alias : URL to AWS Resources

Alias comes in handy when you want to map an URL with AWS Resource. Mainly, it has lots of benefit if you have an AWS resources to directly map with Route53.

Route 53 - Diagram for A Record

route 53

Firstly, the web browser will request the DNS Url for application server ip address. Once the Route 53 sends the IP. browser will cache it.

After that, every time browser hits the application server IP with the DNS directly instead of requesting Route 53 every time.

This is a basic flow of A Record in Route 53.

That is to say, Route 53 has some advanced features such as.

  • Load balancing (through DNS, this is also called as client load balancing)
  • it can do health check to some extent
  • there are some routing policy : simple, failover,latency,weighted.

Implementation

Note : implementation of route53 requires you to register a domain. it will cost you some bucks to get a DNS.

Screenshot 2020 01 18 at 12 11 08 AM

click on the registered domains and get a domain in route 53. Or if you already have a domain, you can transfer it to route 53.

Screenshot 2020 01 18 at 12 14 12 AM

Once you get the domain. you need to create a record set to map the URL to IPv4/IPv6.

record create

Once you create A record. you can access your application using the DNS.

Summary

Route53 is a Domain Name System which is used to manage the domain name for a specific application server.

There are four common records in route53,

  • First, URL to IPv4
  • Then, URL to IPv6
  • URL to URL
  • URL to AWS Resources.

Comments

Popular posts from this blog

How to use Ngx-Charts in Angular ?

Charts helps us to visualize large amount of data in an easy to understand and interactive way. This helps businesses to grow more by taking important decisions from the data. For example, e-commerce can have charts or reports for product sales, with various categories like product type, year, etc. In angular, we have various charting libraries to create charts.  Ngx-charts  is one of them. Check out the list of  best angular chart libraries .  In this article, we will see data visualization with ngx-charts and how to use ngx-charts in angular application ? We will see, How to install ngx-charts in angular ? Create a vertical bar chart Create a pie chart, advanced pie chart and pie chart grid Introduction ngx-charts  is an open-source and declarative charting framework for angular2+. It is maintained by  Swimlane . It is using Angular to render and animate the SVG elements with all of its binding and speed goodness and uses d3 for the excellent math functio...

Understand Angular’s forRoot and forChild

  forRoot   /   forChild   is a pattern for singleton services that most of us know from routing. Routing is actually the main use case for it and as it is not commonly used outside of it, I wouldn’t be surprised if most Angular developers haven’t given it a second thought. However, as the official Angular documentation puts it: “Understanding how  forRoot()  works to make sure a service is a singleton will inform your development at a deeper level.” So let’s go. Providers & Injectors Angular comes with a dependency injection (DI) mechanism. When a component depends on a service, you don’t manually create an instance of the service. You  inject  the service and the dependency injection system takes care of providing an instance. import { Component, OnInit } from '@angular/core'; import { TestService } from 'src/app/services/test.service'; @Component({ selector: 'app-test', templateUrl: './test.component.html', styleUrls: ['./test.compon...

How to solve Puppeteer TimeoutError: Navigation timeout of 30000 ms exceeded

During the automation of multiple tasks on my job and personal projects, i decided to move on  Puppeteer  instead of the old school PhantomJS. One of the most usual problems with pages that contain a lot of content, because of the ads, images etc. is the load time, an exception is thrown (specifically the TimeoutError) after a page takes more than 30000ms (30 seconds) to load totally. To solve this problem, you will have 2 options, either to increase this timeout in the configuration or remove it at all. Personally, i prefer to remove the limit as i know that the pages that i work with will end up loading someday. In this article, i'll explain you briefly 2 ways to bypass this limitation. A. Globally on the tab The option that i prefer, as i browse multiple pages in the same tab, is to remove the timeout limit on the tab that i use to browse. For example, to remove the limit you should add: await page . setDefaultNavigationTimeout ( 0 ) ;  COPY SNIPPET The setDefaultNav...