๐ช๐ต๐ฎ๐ ๐ต๐ฎ๐ฝ๐ฝ๐ฒ๐ป๐ ๐๐ต๐ฒ๐ป ๐๐ผ๐ ๐๐๐ฝ๐ฒ ๐ฎ ๐จ๐ฅ๐ ๐ถ๐ป๐๐ผ ๐๐ผ๐๐ฟ ๐ฏ๐ฟ๐ผ๐๐๐ฒ๐ฟ?
aka How DNS works
The process involves fundamental components like the browser, your computerโs operating system, your internet service provider (ISP), the server where you host the site and the services running on that server.
๐ญ. ๐ฌ๐ผ๐ ๐๐๐ฝ๐ฒ ๐ด๐ผ๐ผ๐ด๐น๐ฒ.๐ฐ๐ผ๐บ ๐ถ๐ป๐๐ผ ๐ฎ ๐๐ฒ๐ฏ ๐ฏ๐ฟ๐ผ๐๐๐ฒ๐ฟ, ๐๐ต๐ฒ ๐พ๐๐ฒ๐ฟ๐ ๐๐ฟ๐ฎ๐๐ฒ๐น๐ ๐๐ผ ๐๐ต๐ฒ ๐ถ๐ป๐๐ฒ๐ฟ๐ป๐ฒ๐ ๐ฎ๐ป๐ฑ ๐ถ๐ ๐ฟ๐ฒ๐ฐ๐ถ๐ฒ๐๐ฒ๐ฑ ๐ฏ๐ ๐ฎ ๐๐ก๐ฆ ๐ฟ๐ฒ๐๐ผ๐น๐๐ฒ๐ฟ
When you type a domain name into a web browser, the browser needs to resolve the domain name to an IP address. The IP address is what is used to identify a specific server on the internet.
๐ฎ. ๐ง๐ต๐ฒ ๐๐ก๐ฆ ๐ฟ๐ฒ๐๐ผ๐น๐๐ฒ๐ฟ ๐ฟ๐ฒ๐ฐ๐๐ฟ๐๐ถ๐๐ฒ๐น๐ ๐พ๐๐ฒ๐ฟ๐ถ๐ฒ๐ ๐ฎ ๐๐ก๐ฆ ๐ฟ๐ผ๐ผ๐ ๐ป๐ฎ๐บ๐ฒ๐๐ฒ๐ฟ๐๐ฒ๐ฟ.
The DNS resolver is responsible for resolving domain names to IP addresses. It takes the request from your browser and sends a query to a DNS root name server. The root name server is the top of the hierarchy in the domain name system and is responsible for pointing the resolver in the right direction.
๐ฏ. ๐ง๐ต๐ฒ ๐ฟ๐ผ๐ผ๐ ๐๐ฒ๐ฟ๐๐ฒ๐ฟ ๐ฟ๐ฒ๐๐ฝ๐ผ๐ป๐ฑ๐ ๐๐ผ ๐๐ต๐ฒ ๐ฟ๐ฒ๐๐ผ๐น๐๐ฒ๐ฟ ๐๐ถ๐๐ต ๐๐ต๐ฒ ๐ฎ๐ฑ๐ฑ๐ฟ๐ฒ๐๐ ๐ผ๐ณ ๐ฎ ๐๐ผ๐ฝ-๐น๐ฒ๐๐ฒ๐น ๐ฑ๐ผ๐บ๐ฎ๐ถ๐ป ๐ฎ๐ธ๐ฎ ๐ง๐๐
The root name server responds to the resolver with the address of the top-level domain (TLD) name server, which is responsible for the .com TLD in this case. The TLD name server is responsible for managing the domains that are part of that TLD.
๐ฐ. ๐ง๐ต๐ฒ ๐๐ก๐ฆ ๐ฟ๐ฒ๐๐ผ๐น๐๐ฒ๐ฟ ๐บ๐ฎ๐ธ๐ฒ๐ ๐ฎ ๐ฟ๐ฒ๐พ๐๐ฒ๐๐ ๐๐ผ ๐๐ต๐ฒ .๐ฐ๐ผ๐บ ๐ง๐๐
The resolver then sends a request to the .com TLD name server for the IP address of the domain you requested, google.com
๐ฑ. ๐ง๐ต๐ฒ ๐ง๐๐ ๐ป๐ฎ๐บ๐ฒ ๐๐ฒ๐ฟ๐๐ฒ๐ฟ ๐ฟ๐ฒ๐๐ฝ๐ผ๐ป๐ฑ๐ ๐๐ถ๐๐ต ๐๐ต๐ฒ ๐๐ฃ ๐ฎ๐ฑ๐ฑ๐ฟ๐ฒ๐๐ ๐ผ๐ณ ๐๐ต๐ฒ ๐ฑ๐ผ๐บ๐ฎ๐ถ๐ป๐ ๐ป๐ฎ๐บ๐ฒ๐๐ฒ๐ฟ๐๐ฒ๐ฟ, ๐ถ๐ป ๐๐ต๐ถ๐ ๐ฐ๐ฎ๐๐ฒ ๐ด๐ผ๐ผ๐ด๐น๐ฒ.๐ฐ๐ผ๐บ
๐ฒ. ๐ง๐ต๐ฒ ๐ฟ๐ฒ๐๐ผ๐น๐๐ฒ๐ฟ ๐๐ฒ๐ป๐ฑ๐ ๐ฎ ๐พ๐๐ฒ๐ฟ๐ ๐๐ผ ๐๐ต๐ฒ ๐ฑ๐ผ๐บ๐ฎ๐ถ๐ป๐ ๐ป๐ฎ๐บ๐ฒ๐๐ฒ๐ฟ๐๐ฒ๐ฟ
๐ณ. ๐ง๐ต๐ฒ ๐๐ฃ ๐ฎ๐ฑ๐ฑ๐ฟ๐ฒ๐๐ ๐ผ๐ณ ๐ด๐ผ๐ผ๐ด๐น๐ฒ.๐ฐ๐ผ๐บ ๐ถ๐ ๐ฟ๐ฒ๐๐๐ฟ๐ป๐ฒ๐ฑ ๐๐ผ ๐๐ต๐ฒ ๐ฟ๐ฒ๐๐ผ๐น๐๐ฒ๐ฟ ๐ณ๐ฟ๐ผ๐บ ๐๐ต๐ฒ ๐ป๐ฎ๐บ๐ฒ๐๐ฒ๐ฟ๐๐ฒ๐ฟ
๐ด. ๐ง๐ต๐ฒ ๐๐ก๐ฆ ๐ฟ๐ฒ๐๐ผ๐น๐๐ฒ๐ฟ ๐ฟ๐ฒ๐ฝ๐๐ผ๐ป๐ฑ๐ ๐๐ผ ๐๐ต๐ฒ ๐ฏ๐ฟ๐ผ๐๐๐ฒ๐ฟ ๐๐ถ๐๐ต ๐๐ต๐ฒ ๐๐ฃ ๐ฎ๐ฑ๐ฑ๐ฟ๐ฒ๐๐ ๐ผ๐ณ ๐๐ต๐ฒ ๐ฑ๐ผ๐บ๐ฎ๐ถ๐ป ๐ฟ๐ฒ๐พ๐๐ฒ๐๐๐ฒ๐ฑ, ๐ด๐ผ๐ผ๐ด๐น๐ฒ.๐ฐ๐ผ๐บ ๐ถ๐ป ๐๐ต๐ถ๐ ๐ฐ๐ฎ๐๐ฒ.
The browser receives the IP address from the resolver and uses it to establish a connection to the server hosting the website. The server then sends the HTML, CSS, and JavaScript that make up the website to the browser, which renders the website for you to view.
-----
Follow for more daily updates about software engineering, systems design, networking and DevOps content.