[DNS(Domain Name Service / Domain Name System)]
- Internet에 존재하는 무수히 많은 서버들을 쉽게 기억할 수 있도록 문자주소(FQDN)를 이용한 접근을 도와주는 서버
-> 문자주소(FQDN)와 IP address 간의 상호 변환
- InterNIC에서 관리하는 Domain Namespace라는 트리 구조를 참조
-> namespace에 등록된 서버의 IP를 알아옴
- FQDN은 일반적으로 말하는 도메인 주소
-> host name과 domain name으로 구성
(ex. www.google.com 이라는 주소가 있다면 www는 host name, google.com은 domain name)
Domain Namespace 구조
- FQDN의 효율적인 관리를 위해 최상위 root domain 아래로 top-level domain, second-level domain 등이 위치
-> root domain은 top-level domain에게 위임 처리를 하고
top-level domain은 second-level domain에 위임 처리를 하여 주소 관리
- root domain
-> InterNIC에서 관리하는 Domain Namespace의 최상위 서버
-> 전 세계에 총 13개가 있으며 a ~ m 까지 이름이 붙어있음
- top-level domain
-> FQDN의 마지막 단락 (ex. com, net, org 등)
-> 자신이름으로 끝나는 second-level domain 들의 주소를 가지고 있다
- second-level domain
-> 일반적으로 각 회사에서 구성한 nameserver (ex. naver.com, google.com)
-> 자기 회사의 host name 정보를 가지고 있다
DNS server 동작 순서
* 동작 예시 - 사용자가 client PC에 문자주소(FQDN)를 입력하면
1)
- client 장치는 자신의 cache 확인(먼저 hosts 파일 확인 후 dns cache 확인)
- IP 설정 중 DNS server의 IP를 확인하고, 해당 장치에 FQDN에 대한 IP address 문의
2)
- DNS server는 자신의 zone 영역 확인 후 cache 확인
- DNS server는 root hint를 참조하여 root domain에 FQDN을 문의
3)
- root domain은 FQDN을 확인하고 해당 주소에 포함된 top-level domain의 IP를 반환
4)
- DNS server는 반환 받은 top-level domain으로 찾아가서 FQDN을 문의
5)
- top-level domain은 FQDN을 확인하고 해당 주소에 포함된 second-level domain의 IP를 반환
6)
- DNS server는 반환 받은 second-level domain으로 찾아가서 FQDN을 문의
7)
- 자신의 record 중에 FQDN에 포함된 nameserver가 있는지 확인하고 있다면 그 record에 매핑된 IP를 반환
8)
- IP를 받은 DNS server는 자신의 cache에 해당 내용을 저장한 후 client에게 데이터 전달
- client는 DNS server가 알려준 IP address를 cache에 저장하고 장치를 해당 IP로 연결
'Linux' 카테고리의 다른 글
주, 보조 DNS + VirtualHost (0) | 2022.10.09 |
---|---|
DNS + HTTP (0) | 2022.10.09 |
FTP-passive mode (0) | 2022.10.05 |
firewall 정리 (0) | 2022.10.04 |
FTP-active mode (0) | 2022.10.04 |