domain, nameserver, and DNS

When you visit a website, there’s a lot going on behind your computer until you actually view the website.
In this post, you will learn the process of DNS resolution in detail and will also get a grasp on networking-related protocols/terms such as domain, nameserver, DNS, IP address, and so forth.


Let’s check some of the technical definitions and then see how they work together with an example.

domain, nameserver, and DNS
domain, nameserver, and DNS


Say, you type e.g., https://something.com in a browser.
The DNS resolver (a DNS server) takes the query something.com and points it to the root nameserver. The root nameserver responds to the DNS resolver by returning the IP address of a TLD nameserver containing the information of .com.
With that IP address, the DNS resolver queries to the TLD nameserver where returns the IP address of an authoritative nameserver containing the information of something to the DNS resolver.

domain-structure


The DNS resolver then queries to the authoritative nameserver’s IP address, and it returns a complete IP address e.g., 192.168.1.7, that is, in general, the IP address of a web server hosting the requested website, to the DNS resolver.
Finally, the DNS resolver forwards the IP address 192.168.1.7 to the client (your computer) and the client’s browser gets connected to a web server with the IP where returns and displays the webpage at https://something.com/

In the step 9 of the picture above, the IP address is cached (saved in temporary) in case it can be reused on the same request from a client without having to query to nameservers over and over again.
In turn, each nameserver only takes one query at a time and tells the DNS resolver the next nameserver it can query to.


HTTPS

You have probably a lot seen https:// in front of any domain and let’s brefly go through what it is.
HTTPs, short for Hypertext Transfer Protocol Secure, is the HTTP (Hypertext Transfer Protocol) over SSL (Secure Socket Layer)/TLS (Transport Layer Security) protocol.

HTTPs encrypts data communication on the Internet more securely than HTTP does, and you will seldom see insecure websites with HTTP these days.
Say, you visit a website with HTTP in a web browser like Chrome and the browser will show a warning flag displaying Not Secure in front of the domain; e.g., Not secure http://example.com/.
Because any HTTP websites are vulnerable to many different cyber attacks such as Sensitive Data Exposure, Cross-Site Scripting, Broken Authentication, MITM (Man in the Middle) attack, and more; see OWASP Top Ten.

Thus, using HTTPs for website is the essential, not just a recommendation!

dedicated assistance to your jekyll website, blog, portfolio, or project (fiverr gig @whatthehekkist) dedicated assistance to your jekyll website, blog, portfolio, or project (fiverr gig @whatthehekkist)



What The Hekk is HTML/CSS/JS? a complete guide to creating a web app in 5 min from scratch!

Kindle Edition

What The Hekk is HTML/CSS/JS? a complete guide to creating a web app in 5 min from scratch!

PDF






You May Also Enjoy

  • Network

    [Packet Tracer] Configuring a DHCPv4 Server and a Relay Agent

    2022-07-14

    [Cisco Network Academy](https://www.netacad.com/) provides plenty of learning resources in networking. I will cover how to configure basic DHCPv4 on a router and a DHCPv4 Server, and a DHCP relay agent using [Packet Tracer](https://www.netacad.com/courses/packet-tracer) where you can simulate network topologies and...

  • Web Dev

    what is switch statement?

    2023-05-26

    what is switch statement? switch statement is a conditional statement in JS (and in most programming languages) to execute a certain action over multiple inner blocks called case. switch takes an expression (input condition) that looks for a match...

  • Web Hack

    Insert screenshot into Markdown doc in a second

    2022-07-11

    What is Markdown? Markdown is a free open-source web-focused markup language that gives you hassle-free writing experiences (indeed, once you get familiar with it). As you can so easily find many of how-to-posts on syntax, structure, and so...

  • Programming

    Image crawling with Python on Chrome browser

    2022-07-09

    Step by step insturction ## 1. Install selenium and beautiful soup on terminal ```python pip install bs4 pip install pip install selenium ``` ##...

  • Web Dev

    Bootstrap Nav, Browser inspection, and Browser rendering process

    2023-04-23

    Bootstrap navigation Bootstrap navigation is one of the most widely used navigation templates and there are a lot of practical points that help get familiar with frontend. In this post, we are going to have a close look at...

  • Web Dev

    Live CSS trainer v1.0

    2023-06-22

    <h1>validate your css codes LIVE</h1> <h1>without auto-completion</h1> <p>    ✔️ write css code manually!    ✔️ example #1: type   * {color: blue;}    ✔️ example #2: type  ...

  • Web Dev

    Nelify에 Jekyll 웹사이트 배포하기

    2022-07-10

    정적 웹사이트나 블로그에 관심이 많다면 [Jekyll](http://Jekyllthemes.org/)에 대해 들어 봤을 것이다. 간단한 구글링만으로도 Jekyll을 사용하여 어떻게 웹사이트나 블로그를 만드는지 쉽게 알 수 있다. 이 블로그 또한 Jekyll 기반이고, [Better Jeong](https://betterjeong.github.io/blog/21042701/)님과 [Jihye Leee](https://www.jihyeleee.com/blog/third-designer-can-make-Jekyll-blog/)님의 블로그 포스트를 참고하여 커스터마이징하였다. # Nelify에 배포하기 Jekyll기반 블로그를...