본문 바로가기
WEB

검색창에 https://www.google.com 입력 후 일어나는 일 (URL, DNS 중심)

by 2__50 2022. 12. 25.

1. 사용자가 검색창에 https://www.google.com을 입력한다. 


https://hostimul.com/what-is-a-domain-name/

 


택배를 보내고 받으려면, 그것을 받을 집 주소, 그리고 물건을 보내는 곳의 주소지가 필요하다.
네트워크 상에서 google.com은 구글의 주소지 역할을 한다. 구글은 정보들을 이곳에 저장해놓았다가 사용자들의 요청이 오면 응답해준다.


사용자가 입력한 https://www.google.com을 우리는 URL이라 부른다.
평소 'URL 공유 좀'이라고 했을 때 우리는 URL을 해당 사이트의 주소지처럼 인식하지만, 사실은 주소지를 '포함'한 개념인데, 아래 사진처럼 URL은 각 자리마다 의미가 있다. 하나씩 살펴보자.

 

 

https://devjin-blog.com/what-happen-browser-search/


https://www.google.com

https는 통신 규약이다. 브라우저가 google.com과 데이터를 주고받을 때 어떤 규약을 따를지를 정의한 것이다.
웹서버의 경우 https, 파일서버는 ftp, 메일서버는 mailto를 쓴다.

 

mailto:someid@gmail.com

https://www.google.com

www는 서브도메인이다. 서브도메인은 도메인(google)의 역할을 확장한다.

  • 인터넷 초창기에 '이 주소는 웹서비스로 연결된다.'라는 의미로 www를 붙히기 시작했는데, 지금은 www를 붙히지 않아도 사람들이 웹서비스로 이동한다는 것을 알기 때문에 생략하는 경우도 많다.
  • 대신 mail.google.com, photos.google.com 처럼 서비스의 세부 분야를 나누거나 m.naver.com, ko.wikipedia.org 등 모바일, 국가별 사이트를 구분할 때도 사용한다.
  • dev.google.com 등으로 사이트의 개발버전을 만들 때 사용한다.

https://www.google.com

google은 도메인 이름이다. 이미 사용중인 이름이 아니라면, 내가 원하는 대로 설정해 사용할 수 있다.


https://www.google.com

com은 최상위 도메인이다.
.com, org, net은 일반, gov는 정부, edu는 교육 등 서비스가 어떤 정보를 제공하는지 알 수 있다. 

 


2. 브라우저가 DNS를 통해 구글의 IP주소를 파악한다.

 

네이버쇼핑의 배송지정보 입력란

 

각 건물에 주소지가 있듯이, 인터넷에 연결된 서버, 스마트폰, 스마트 냉장고 등의 기기 또한 IP 주소를 가지고 있다.

IP 주소는 다음 같이 터미널에 도메인 이름을 입력하면 확인할 수 있다.

 

 

nslookup google.com

 

 

 

현재 내가 접근 가능한 IP주소는 142.250.66.78다. 하나의 도메인에는 여러개의 IP 주소를 연결할 수가 있는데, 구글은 트래픽을 분산시키기 위해 5개의 IP주소를 가지고 있다.

 

그러나 숫자로 조합된 주소를 매번 기억해내는 것은 쉬운 일이 아니므로 www.google.com을 입력하면 142.250.66.78라는 구글의 IP주소로 연결해 주기로 약속한 것이다. 온라인 쇼핑 할 때 집 주소를 '집'으로 저장해 놓으면 매번 '서울시 xx구 aa동 oo타워 1513호'를 입력하지 않아도 되는 것과 비슷하다.
이렇게 사람이 기억하기 쉬운 도메인주소 www.google.com과 컴퓨터가 이해할 수 있는 IP주소를 연결지어주는 시스템이 DNS(Domain Name System)이다. 

 

사용자가 검색창에 www.google.com을 검색하면, 웹 브라우저는 이전에 같은 도메인을 조회한 내역이 있는지 캐시를 확인한다. 

 

캐시는 차례로 브라우저, OS, router의 로컬 네트워크, 인터넷 서비스 제공업체(ISP) 총 4단계에 걸쳐 확인 하는데, 이렇게 임시 데이터가 여러 계층에 거쳐 저장되어 있는 이유는 다음에 같은 내용을 요청했을 때 불필요한 통신을 방지하고 응답을 좀 더 빠르게 하기 위함이다.


캐시에 지난 검색 내역이 있다면 해당 IP주소를 반환하고, 없다면 DNS에 해당 도메인의 IP주소를 새로 요청한다.

 

https://better-together.tistory.com/128

 

 

DNS 서버는 위 사진처럼 여러개로 분산되어 있다. 각 네임 서버는 DNS 서버가 도메인의 IP주소를 물어보면, 자신이 알고 있는 담당자를 알려준다. DNS 서버는 계속해서 소개받은 담당자를 찾아가 해당 도메인의 IP를 아는지 물어보고, 마지막 담당자를 만났을 때 마침내 해당 IP주소를 찾을 수 있다.

 

(오래 전 재미있게 봤던 KBS의 'TV는 사랑을 싣고'가 생각난다.
페이스북이 있기 전, 건너건너 그리운 옛 친구를 찾아주던 프로그램)

 

https://www.youtube.com/watch?v=-HEU2RzkXOE

 

3. 웹 브라우저가 서버와의 TCP 연결을 시작한다.


 

 

브라우저는 인터넷 프로토콜을 사용해서 서버와 연결되는데, HTTP 요청의 경우 TCP를 사용한다.
TCP 연결은 위와 같이 서로를 확인하는 3-way-handshake 과정을 통해 이루어지고, HTTPS의 경우 암호화 된 통신을 위해 TLS handshaking이 추가된다.


4. 웹 브라우저가 서버에게 HTTPS 통신으로 자료를 요청하고 응답받는다.


https://joshua1988.github.io/web-development/http-part1/

 

브라우저가 서버에게 GET 요청으로 www.google.com의 웹페이지를 요청하면, 서버는 응답을 생성해 브라우저에게 보낸다.

 

5.  사용자가 웹 사이트와 상호 작용할 수 있도록 페이지를 렌더링한다.


https://nohack.tistory.com/36

 

브라우저가 서버에서 응답한 HTML, CSS, Javascript 등을 해석해 화면에 그린다. 

 

 


참고

 

https://aws.amazon.com/ko/blogs/korea/what-happens-when-you-type-a-url-into-your-browser/

 

웹 브라우저에 URL을 입력하면 어떤 일이 생기나요? | Amazon Web Services

여러분은 매일 웹 브라우저를 열고 소셜 미디어, 뉴스, 전자 상거래 사이트 등 즐겨 찾는 웹 사이트를 탐색합니다. 주소창에 URL을 입력하거나 페이지 링크를 클릭하면 해당 페이지로 이동합니다

aws.amazon.com

https://velog.io/@khy226/브라우저에-url을-입력하면-어떤일이-벌어질까

 

브라우저에 url을 입력하면 어떤일이 벌어질까?

maps.google.com을 입력하면..?

velog.io

https://etloveguitar.tistory.com/m/112

 

DNS 기본 개념 뿌시기 - (FQDN, domain, sub-domain, A record, CNAME record 등)

DNS에 대해 공부하다보면, 나만 그렇게 느낄지 모르겠지만, 명확하게 정리된 내용을 잘 찾지 못했다. 필자는 DNS서버를 개발하려는 목적보다는, DNS가 어떻게 동작하는지, 그리고 어떻게 활용해볼

etloveguitar.tistory.com

https://joonius.tistory.com/19

 

도메인 주소에 www 가 있고 없고의 차이

웹개발을 하시는 분들은 다들 아시겠지만 웹쪽 일을 하지 않으시는 분은 www가 붙는것과 아닌것에 헷갈려 하시는 분들이 많더라구요 아래 글은 다른 커뮤니티에서 어떤분이 도메인을 구매했는

joonius.tistory.com

https://nohack.tistory.com/36

 

웹 브라우저의 렌더링 과정 알아보기

렌더링 과정을 아는 것이 중요한 이유 우리는 웹사이트에 접속할 때 단순히 주소창에 주소를 입력하거나, 링크가 걸린 텍스트를 누르기만 하면 됩니다. 하지만 반대로 웹 브라우저의 입장에서

nohack.tistory.com

https://deveric.tistory.com/97

 

브라우저에 URL을 입력했을 때 발생하는 일들

지금부터 제 인터넷 브라우저에 www.daum.net을 입력해보고 어떤 일이 일어나는지 과정을 알아보겠습니다. 웹 통신의 큰 흐름에 대해 간략하게 알아보겠습니다. 1. 브라우저의 URL 파싱 URL을 입력받

deveric.tistory.com

 

댓글