■ Web

[Web] RestFul Service에 대해서 알아보자 (3)

이번에는 웹브라우져 주소창에 http://m.naver.com 이라는 주소를 입력한 후 엔터를 쳤을 때의 절차를 설명해 보겠다.

이번포스팅은 짧고 굵을 것이다.

일단 http://m.naver.com을 입력하면 해당 도메인을 거꾸로 읽는다. 즉 .com을 먼저 읽어 해당 도메인은 com도메인이란 것을 안다. 이밖에도 .kr(한국),  .cn(중국) 등 국가별 도메인이 있을수 있다.

kr 도메인은   .  .  .

앞서 설명하길 도메인은 뒤에서부터 읽는다고 했다. 즉 젤뒤에 가장 큰 범주인 kr이란 국가를 식별할수 있는 도메인이 나오는 것이다.

 

이제 실질적으로 통신되는 절차를 일련의 path라고 하고, 이 path를 따라가보자.

도메인을 입력하고 엔터를 치는순간 Root DNS에 질의를 보낸다. 이때 A.ROOT-SERVERS.NET부터 M.ROOT-SERVERS.NET까지 총 13개의 루트DNS서버가 있다. 현재 엔터를 친 컴퓨터와 가장 가까운 ROOT서버로 질의를 보낸다. (ROOT서버도 그냥 일련의 서버컴퓨터이다.)

이후 오른쪽부터 .(마침표) 단위로 짤라서 (거꾸로 읽어서) 각각 net, com, co.kr등을 담당하는 DNS서버를 찾아간다. 그럼 해당 DNS서버엔m.naver.com에서 naver.com의 ip주소 혹은 또다른 도메인이 k-v형태로 저장되어있다.

naver.com이란 key에 해당하는 ip 혹은 도메인을 지칭하는 value를 통해 다시한번 질의한다.

 

복잡할것없다. 루트DNS에서 해당 도메인별 DNS를통해가고 그곳에 저장된 해당 도메인의 서버컴퓨터로 또한번 질의를 보내는 것이다. (이부분도 2가지 방식이 존재한다. 일단 자세한건 생략한다.)

해당 서버컴퓨터는 이제 해당 도메인의 실제ip를 알고있다. 그리고 최종적으로 이 ip주소로 브라우져가 페이지를 여는 것이다.

 

그렇다면 위에 DNS서버에 cafe24.com 도메인의 value인 ip혹은 도메인이 저장되어있다고 하는데 이것은 어떻게 저장된 것일까?

그것은 registrar라는 업체가 하는 역할이다. cafe24.com, hosting.kr 등등이 국내 레지스트라 업체이다. 이곳에선 NS레코드를 설정할수 있는데. 해당 NS레코드가 바로 우리가 위에서 말한 DNS서버의 k-v를 입력한 것이다.

 

최종적으로 ip를 반환한 서버컴퓨터는 해당 ip를 A레코드라는 것을 통해 저장한다. 즉 A-RECORD 설정을 한다는 의미는 최종 서버의 실제 ip를 호스팅하는 업체의 서버컴퓨터에 설장한다는 의미이다.

위에서 한가지 의문사항이 들었을 수도 있다.

 

그것은 m.naver.com 에서 naver.com의 도메인으로만 질의를 했다는 것이다. m은 과연 어디로 간것일까?

m은 서브도메인이라고 불리운다. 이것은 A레코드가 설정된 컴퓨터에서 A레코드와 함께 설정한다. (서버OS에 각각 설정할수 있도록 해놓았음.)

이말은 즉 A레코드를 서브도메인 별로 여러개 설정이 가능하단 의미이며, 서브도메인에 따라 다른 ip를 각각 가져올수 있다는 의미이다.

m.naver.com 이것은 naver.com의 서브도메인이며 naver.com(보통 서브도메인이 없을 경우 www 서브도메인과 같은 도메인으로 리다이렉트하거나  www없이 그냥 사용한다.) 과 m.naver.com는 서로다른 ip를 가진 도메인이다.

 

추가적으로 MX레코드는 메일서버를 의미, A레코드는 IPv4짜리 서버를 의미, AAA레코드는 IPv6짜리 서버를 의미한다. 이밖에도 다양한 레코드가 있다.

말이 어려울수도 있는데 차근차근 다시한번 읽어보면 이해될 것이다.

Standard

댓글 남기기