로드맵 길만 걸어요 시리즈는 프론트엔드 로드맵 에 있는 모든 부분을 다룹니다.
기초가 부족하여 다시 훑어보려고 합니다.
위키백과나 MDN, 생활코딩에서 설명을 따와 제가 이해할 수 있는 방식으로 풀어서 설명합니다.
프론트엔드 로드맵 최상단에 있는인터넷
영역입니다.
DNS와 도메인 네임, 호스팅은 아주 기본적인 내용입니다. (학교 가니까 젤 먼저 배웠던 것..)
여기까지 하면 로드맵의 인터넷
영역은 끝입니다. (야호!)
velog.io
를 쳤다고 가정을 해 볼게요. velog의 포스팅처럼DB에 저장되있는 자원을 요청할 때나 글을 올렸을 때(로직 처리가 필요한 작업) velog.io의 진짜 저장소를 찾아가야해요. 진짜 저장소의 주소 IP라고 하는데요. IP를 찾으려면 Domain Name System Server 를 거쳐야 합니다. 전화번호부 같은 역할을 하는 DNS는 velog.io를 진짜 IP 주소로 변환하고 사용자가 진짜 주소에서 자원을 받아 사용할 수 있게 해 줍니다.2) Local DNS에 사용자가 찾는 URL의 IP 주소를 요청합니다. (Local DNS는 cmd 창에서 ipconfig
명령어를 통해 확인이 가능합니다.)
해당 명령어를 작성하면 위와 같이 DNS 서버
라고 되어있는 부분을 볼 수가 있는데 총 2개의 서버가 할당이 됩니다. (이유는 다른 서버가 동작하지 않을 때의 대비책이라고 합니다.)
3) Local DNS에 찾는 URL이 없다면 Root DNS에 요청을 합니다.
Local DNS
는 다른 DNS 서버들과 통신을 합니다. 먼저 Root DNS 서버에 해당 URL 에 대한 정보가 있는지 확인합니다. Root DNS
는 전세계에 구축 된 DNS 서버입니다. Root DNS는 URL의 도메인을 인식하고 '거기서 한번 찾아봐.' 라며 .io
의 도메인을 관리하는 서버를 알려주는 역할을 합니다. (.io
는 예시입니다. 도메인에 따라 요청 서버가 다릅니다.)
4) .io
의 DNS에 URL의 진짜 주소를 요청합니다. .io
DNS는 velog
도메인을 관리하고 있는 네임서버의 정보를 전달해줍니다.
5) velog.io
의 네임서버에게 www.velog.io
도메인의 진짜 집주소, IP를 반환하고 Local DNS가 사용자의 브라우저에 주소를 전달합니다. 접속 완료!
(이미지 출처: 도메인 네임의 레이블 계층, 위키백과 - 도메인 네임)
1) 웹 호스팅
웹 애플리케이션 운영을 위한 모든 것을 제공합니다.
웹서버(Apache, NGINX) +
미들웨어(PHP, Java, Python, Ruby) +
데이터베이스(MySQL, ORACLE, SQL Server) +
그리고 서버와 함께 제공됩니다.
2) 서버 호스팅
서버 컴퓨터를 제공합니다. 오로지 컴퓨터 한대만요.
나머지는 직접 설치하여 서버에 올려야 하고 이후에 운영도 직접 해야합니다.
etc) 클라우드 컴퓨팅이 있지만 그것은 이후에 다루는것이 좋을것 같아 여기까지 씁니다.
이로써 프론트엔드 로드맵 인터넷 영역이 모두 끝났습니다. 내일부터는 HTML 영역을 다루어 봅시다!