Notice
Recent Posts
Recent Comments
Link
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

Finn의 개발블로그

1-3. 전 세계의 DNS서버가 연대한다 본문

Network

1-3. 전 세계의 DNS서버가 연대한다

BeginnerFinn 2019. 4. 16. 22:17

1. DNS 서버의 기본 동작

  • 조회 메시지에는 다음의 세 가지 정보가 포함되어 있습니다.
    • 이름 : 서버나 메일 배송 목적지(메일 주소에서 @ 뒷부분의 이름) 같은 이릅입니다
    • 클래스 : 인터넷을 나타내는 'IN' 이라는 값
    • 타입 : 이름에 어떤 타입(종류)의 정보가 지원되는지 나타냅니다. A 타입은 IP, MX이면 이름에 메일 배송 목적지가 지원됩니다.
  • 이름 = www.lab.cyber.co.kr, 클래스 = IN, 타입 = A
    • DNS 서버는 세 가지 항목이 일치하면 여기에 등록되어 있는 ip 주소를 회답합니다
  • 이름 = cyber.co.kr, 클래스 = IN, 타입 = MX
    • DNS 서버는 10과 mail.cyber.co.kr이라는 두 개의 항목에 회답합니다.
    • MX의 경우에는 mail.cyber.co.kr 메일 서버의 IP 주소도 함계 회답합니다.
  • 타입종류
    • PTR : IP 주소에서 이름을 조사할 때 사용
    • CNAME : 이름에 닉네임을 붙이기 위한 CNAME
    • DNS : 서버의 IP 주소를 등록하는 NS
    • SOA : 도메인 자체의 속성 정보를 등록
  • 이름, 타입, 클래스, 회답하는 정보를 포함하는 한 줄을 리소스 레코드라고 부릅니다.

2. 도메인의 계층

  • 정보를 분산시켜서 다수의 DNS 서버에 등록하고, 다수의 DNS 서버가 연대하여 어디에 정보가 등록되어 있는지 찾아내는 구조입니다.
  •  DNS 서버에 등록한 정보에는 모든 도메인명이라는 계층적 구조를 가진 이름이 붙여져 있습니다
  • www.lab.cyber.co.kr
    • kr 도메인 아래에  co라는 도메인 있고, 그 아래에 cyber가 있으며 그 안에 lab 그 안에 www라는 이름이 있는 셈이 됩니다
  • 도메인의 아래에 하위 도메인을 만들고 그것을 할당 할 수 있습니다
  • example.co.kr 도메인이 있으면 그 도메인 아래에 sub1.example.co.kr, sub2.example.co.kr과 같은 몇 개의 도메인을 만든 후 사업부마다 하위 도메인을 할당할 수 있습니다.

3. 담당 DNS 서버를 찾아 IP 주소를 가져온다

  • 하위의 도메인을 담당하는 DNS 서버의 IP 주소를 그 상위의 DNS 서버에 등록합니다. 그리고 상위의 DNS -> 상위의 DNS 서버에 등록하는 식으로 차례로대로 등록합니다.
  • lab.glasscom.com 이라는 도메인을 담당하는 DNS 서버를 glasscom.com의 DNS서버에 등록하고, glasscom.com의 DNS 서버를 com 도메인의 DNS 서버에 등록하는 식입니다. 상위의 DNS 서버에서 하위의 DNS 서버의 IP 주소를 알 수 있습니다.
  • com이나 kr의 상위에 루트 도메인이 있습니다. 루트 도메인은 DNS 서버에 com 이나 co의 DNS 서버를 등록합니다
  • 루트 도메인의 DNS 서버를 인터넷에 존재하는 DNS 서버에 전부 등록하는 것입니다.
  • 클라이언트가 어딘 가의 DNS 서버에 액세서흐면 여기에서부터 루트 도메인을 경유하여 도메인의 계층 아래로 찾아가서 최종적으로 원하는 DNS 서버에 도착합니다
  • DNS 서버들의 조회 동작
    1. 클라이언트 PC가 가장 가까운 DNS 서버에  요청을 보낸다.
    2. DNS 서버는 루트 도메인에게 요청을 보내고 루트 도메인은 하위 계층이 있는 DNS 서버의 ip를 보내준다
    3. 2번 행동을 목적지가 있는 주소까지 반복한다
    4. 목적지 찾으면 목적지 ip를 dns 서버가 클아이언트 pc에 보낸다

4. DNS 서버는 캐시 기능으로 빠르게 회답할 수 있다.

  • DNS 서버는 한 번 조사한 이름을 캐시에 기록할 수 있습니다
  • 조회한 이름에 해당하는 정보가 캐시에 있으면 그 정보를 회답합니다. 그러면 그 위치에서 계층 구조를 아래로 향하여 찾을 수 있습니다
  • 조회한 이름이 도메인에 등록되어 있지 않은 경우에는 이름이 존재하느 않는다는 회답을 캐시에 보전할 수도 있어서 존재하지 않은 경우에도 빠르게 회답할 수 있습니다
  • 캐시에 정보를 저장한후 등록 정보가 변경되는 경우도 있으므로 DNS 서버에 등록하는 정보에는 유효 기한을 설정하고, 캐시에 저장한 데이터의 유효기간이 지나면 캐시에서 삭제합니다.
  • 조회에 회답할 때 정보가 캐시에 저장된 것인지, 아니면 등록처 DNS 서버에서 회당한 것인지 알려줍니다