📍 백엔드 로드맵의 네번째 이야기! Domain, DNS 그리고 호스팅에 대해서 알아보겠습니다!
01. 들어가면서
Domain, DNS 그리고 호스팅의 개념은 각각 다 다르지만 서로 연관되어 있어 브라우저의 동작원리를 설명하기 전에 3개의 개념을 관련지어 설명해보려고 합니다!
02. Domain
- 컴퓨터가 처리할 수 있는 숫자로 된 인터넷 주소 👉 IP 주소
- IP 주소를 사람이 기억하기 쉽게 문자로 바꾼 인터넷 주소 👉 Domain(도메인)
- 영어 소문자, 숫자, 하이픈의 조합으로만 표현되어야 하고 고유한 값이어야 합니다.
02-1. Domain 체계
위 이미지에서 Domain이 어떤 체계로 되어 있는지 자세히 살펴볼 수 있습니다!
FQDN(Fully Qualified Domain Name)
: 전체 도메인명 (ex. google.com
)
www.google.com
(X) -> www
는 호스트명
03. 호스팅
- 서버를 만든 후 네트워크에 띄워서 서비스하는 일련의 과정 (IP와 서버를 연결하는 작업)
- 서비스를 하려면 서버가 24시간 동안 돌아야 하는데 이를 로컬에서 하기 힘드니까 대신 해주는 업체가 호스팅 업체(ex. 가비아, 후이즈, 카페24)입니다.
04. DNS
- Domain Name Server의 약자
- 사람이 읽을 수 있는 도메인 이름을 컴퓨터가 읽을 수 있도록 IP 주소로 변환하는 시스템 혹은 서버 컴퓨터
- 이전에 사용자 PC에 저장하던 IP 주소들을 저장하여 사용자에게 제공함.
- 사용자는 IP 주소들을 저장하지 않고 도메인만으로도 다른 주소에 접속할 수 있게 됨.
- 마치 전화번호부와 같다.
- IP 주소: 나와 상대방의 전화번호
- 도메인: 서로의 전화번호에 저장된 별칭(ex. 엄마)
- DNS: 스마트폰의 전화번호부
05. 전체적인 과정 (feat. AWS)
- 사용자가 웹 브라우저에
www.example.com
을 입력하고 Enter키를 누른다.
www.example.com
에 대한 요청은 일반적으로 인터넷 서비스 제공업체(ISP)가 관리하는 DNS로 라우팅 된다.
- ISP의 DNS -> DNS root name server
- root name server -> .com TLD(Top Level Domain) DNS
- .com TLD DNS ->
example.com
도메인과 연결되어 있는 Amazon Route 53
- Amazon Route 53 서버는
example.com
호스팅 영역에서 IP 주소를 찾아 웹 서버의 IP 주소를 DNS로 반환
- ISP의 DNS -> 웹 브라우저로 반환
- 다음 사용자에게 IP 주소를 더 빠르게 반환하기 위해
example.com
의 IP 주소를 캐싱(저장)한다.
- 웹 브라우저는 해당 웹 서버의 IP 주소로 요청(request)을 전송
- 웹 서버는
www.example.com
의 웹 페이지를 웹 브라우저로 반환하여 웹 브라우저는 이 페이지를 랜더링한다.
06. 출처