취업/면접

도메인, DNS

jaewon_sss 2022. 1. 30. 21:11
반응형

도메인

DNS(Domain Name System)

  • DNS 란 이러한 도메인을 변환하기 위해 브라우저가 인터넷 resource를 로드할 수 있도록 도메인 이름을 IP주소로 변환시켜 주는 것입니다.                                     ex) 영문/한글 주소 -> IP 네트워크에서 찾아갈 수 있는 IP주소
  • 이러한 DNS를 운영하는 서버를 DNS서버, 다른 말로는 Name Server 라고 합니다.
    • 규모가 있는 사이트의 경우 Name Server 를 자체 운영하는 경우가 많다고 합니다.
  • 앞서 언급한 도메인 정보와 관련된 개별 정보 항목('이름'과 '값'으로 바인딩) 들이 Name Server 내에서 분산 네임 DB를 형성합니다. 
  • 결국, DNS는 분산된 DNS 네임서버 내 Resource Record의 집합입니다. 정보를 기록하는 Resource Record 은 Forward Zone(도메인 이름 -> IP) 와 Reverse Zone(IP -> 도메인 이름) 을 갖습니다.
    • Forward Zone : 도메인을 구성하는 호스트에 대한 정보를 기록
    • Reverse Zone : DNS 서버 자기 자신에 대한 정보를 기록
  • DNS 서버에 질의하면 돌아오는 응답은 Authoritative answer와 Non-authoritative answer로 나뉜다.
    • Authoritative answer : Forward Zone, Reverse Zone 모두 가지고 있을 때 하는 응답으로 도메인의 네임서버에 호스트의 주소를 직접 요청할 때 받는 응답 (Name Server를 자체 운영하는 경우)
    • Non-Authoritative answer : Forward Zone, Reverse Zone 둘 중 하나만 갖고 있을 때 하는 응답으로 가정집에서 DNS 서버에 요청할 때 받는 응답........ 왜? 가정집은 ISP 이용하니까 ISP 통해서 요청해야합니다.

 

DNS round robin 방식

  • 여러개의 IP를 순서를 정해서 제공하는 방식입니다.
  • 이 방식의 문제점은 특정 웹 서버에 문제가 생겨 서비스가 불가능한 상태라도 DNS는 이 상태를 알지 못한다는 것입니다. 개선 방법으로는 처음 선택한 IP가 접속이 안되면 그 다음 IP를 접속하도록 로직을 추가하는 방법이 있습니다.

ex)

 

DNS 동작 로직

  • 사용자 컴퓨터의 운영체제가 hosts에 해당 Domain의 IP주소가 저장되었는지 확인합니다.
  • hosts에 없으면 가장 가까운 로컬 DNS서버에 묻습니다.
  • 로컬 DNS서버에도 없으면 ROOT서버에 묻습니다. ROOT서버는 .com의 주소를 알고 있는 TopLevel의 서버주소를 알려줍니다.
  • TopLevel 서버는 naver.com 의 주소를 알고 있는 SecondLevel 서버주소를 알려줍니다.
  • SecondLevel 서버는 www.naver.com 의 주소를 알고 있는 SUB서버의 주소를 알려줍니다.
  • SUB 서버는 사용자에게 최종적으로 www.naver.com의 IP주소를 알려줍니다.
반응형