DNS(Domain Name System)란?
도메인 이름을 IP 주소로 변환해 주는 시스템
■ DNS란?
- 쉽게 말하면, 인터넷에서 사용되는 주소록
- 숫자의 연속인 IP 주소를 일일이 외울 수 없기 때문에 쉽게 기억할 수 있는 도메인 주소 체계가 만들어짐
- DNS에는 도메인 이름과 IP가 서로 매핑되어 저장되어 있음
▷ 사용자가 특정 도메인을 입력하면, 그에 매핑된 IP 주소를 찾아서 접속할 수 있도록 해줌
▷ 예를 들어, www.example.com와 같은 주소를 입력하면, 192.0.0.0과 같은 IP 주소로 변환시켜 주는 것
■ DNS 동작 과정
1. 웹 브라우저에 “www.naver.com”을 입력하면 먼저 PC에 저장된 Local DNS(기지국 DNS 서버)에게 “www.naver.com”이라는 host name에 대한 IP 주소를 요청함
▷ 기본적으로 인터넷을 사용하기 위해서는 IP를 할당해 주는 통신사(LG U+, KT 등)에 등록하게 됨
▷ 인터넷이 연결되면, 가입한 각 통신사의 기지국 DNS 서버가 등록되게 됨
▷ Local DNS에는 “www.naver.com”의 IP 주소가 있을 수도 있고, 없을 수도 있음
⚫ 전에 네이버에 접속했던 전적이 있다면, Local DNS에 정보가 캐싱되어 있어, 바로 PC에 IP 주소를 주고 끝냄
2. Local DNS는 이제 “www.naver.com” IP 주소를 찾아내기 위해 다른 DNS 서버들과도 통신(DNS)을 시작함
▷ Root DNS 서버에 “www.naver.com” IP 주소를 요청함
3. Root DNS 서버는 “www.naver.com” IP 주소를 찾을 수 없어 Local DNS 서버에게 “www.naver.com” IP 주소를 찾을 수 없다고 다른 DNS 서버에게 물어보라고 응답함
4. Local DNS 서버는 com 도메인을 관리하는 TLD DNS 서버(최상위 도메인 서버)에 다시 “www.naver.com”에 대한 IP 주소를 요청함
▷ TLD(Top-Level Domain) DNS Server: 도메인 등록 기관이 관리하는 서버로, 도메인 네임의 가장 마지막 부분을 말함
⚫ 쉽게 말하자면 .com이나 co.kr과 같은 도메인을 관리하고 부여하는 서버
5. com 도메인을 관리하는 DNS 서버에도 해당 정보가 없으면 Local DNS 서버에게 “www.naver.com”의 IP 주소를 찾을 수 없다고 다른 DNS 서버에게 물어보라고 응답을 함
6. 이제 Local DNS 서버는 naver.com DNS 서버(Authoritative DNS 서버)에게 다시 “www.naver.com”의 IP 주소를 요청함
7. naver.com DNS 서버에는 “www.naver.com”의 IP 주소가 있음
▷ Local DNS 서버에게 “www.naver.com”에 대한 IP 주소는 222.122.195.6이라는 응답을 함
8. 이를 수신한 Local DNS는 “”의 IP 주소를 캐싱하고 이후 다른 요청이 있을 시 응답할 수 있도록 IP 주소 정보를 PC에 전달해 줌
▷ Local DNS 서버가 여러 DNS 서버에 차례대로 Root DNS 서버->TLD DNS 서버(.com)->Authoritative DNS 서버(naver.com)를 요청하여 답을 찾는 과정을 ‘재귀적 쿼리(Recursive Query)’라고 부름

■ DNS 서버의 종류
루트 DNS 서버: 처음으로 DNS 쿼리 요청을 보내는 서버
▷ 트리 구조로 되어 있음

- TLD 서버(1차 도메인): 루트 도메인 아래 단계
▷ ‘국가최상위도메인(국가명을 나타냄)’과 일반적으로 사용되는 ‘일반최상위도메인’으로 구분됨
▷ 도메인을 구입할 경우, 1단계의 도메인 중에 하나를 선택하고 원하는 도메인명을 지정하여 등록함


- Second-level DNS 서버(2차 도메인): TLD 서버에서 Second-level DNS 서버를 반환해 줌
▷ 요청받은 Second DNS 서버는 자체적으로 sub 도메인 서버로 또 넘기게 됨
- Sub DNS 서버(최하위 서버): www, mail, cafe 등등을 구분하는 최하위 서버
▷ naver 서버의 메일, 블로그, 카페 등 여러 서비스들을 구분하는 도메인 네임
- 각각의 도메인을 담당하는 DNS 서버는 각각의 서버 목록과 IP를 알고 있음

■ DNS 보안
- DNS 캐시를 통해 더 빠른 응답 속도를 얻을 수 있지만 문제점이 있음
▷ 바이러스나 네트워크 오류, 혹은 여러 가지 이유로 DNS 캐시 정보가 변조될 수 있음
▷ 즉, 특정 도메인을 입력했을 때 원래의 IP 주소가 아닌 해킹된 사이트의 IP 주소로 변경될 수 있음
- DNS 스푸핑: 위조된 DNS 데이터가 DNS 확인자의 캐시에 투입되어 확인자가 도메인의 잘못된 IP 주소를 반환하게 만드는 공격
- DNS 터널링: 해커가 DNS를 악성 트래픽의 전송 수단으로 사용하여 네트워크 보안을 우회하는 사이버 공격
- DNS 하이재킹: 웹사이트로 향하는 트래픽을 새로운 목적지로 리디렉션 하여 공격자가 원본 사이트와 유사하게 만들어 민감한 개인 정보를 수집하는 공격
■ DNS 보안 대응방안
- 주기적으로 캐싱된 DNS 데이터를 정리해야 함
- DNS 최신 버전으로 패치
- DNSSEC와 같은 보안 프로토콜 적용
▷ DNSSEC(Domain Name System Security Extension): DNS 데이터 대상의 “데이터 위조/변조 공격”을 방지하기 위한 인터넷 표준 기술
참고
DNS란? 꼭 알아야 하는 도메인 네임 시스템의 정의와 작동 방식
DNS는 인터넷에서 도메인 이름과 IP 주소를 연결해 주는 서버입니다. 여기서 DNS란 무엇인지, DNS 서버란 무엇인지에 대해 이해할 수 있도록 도와줍니다. DNS 뜻과 작동방식에 대해 자세히 살펴봅시
nordvpn.com
🌐 DNS 개념 & 동작 ★ 알기 쉽게 정리
DNS (Domain Name System) 란? 도메인 네임 시스템 (Domain Name System, DNS) 은 호스트의 도메인네임 (www.example.com)을 네트워크주소(192.168.1.0)로 변환하거나, 그 반대의 역할을 수행하는 시스템이다. 예를 들
inpa.tistory.com
https://www.akamai.com/ko/glossary/what-is-dns-tunneling
DNS 터널링이란 무엇일까요? | Akamai
DNS 터널링은 DNS 프로토콜을 악용해 클라이언트-서버 모델을 통해 멀웨어와 기타 데이터를 터널링하는 악용 방법입니다.
www.akamai.com
https://www.checkpoint.com/kr/cyber-hub/network-security/what-is-dns-security/
'네트워크 보안' 카테고리의 다른 글
| [네트워크] DHCP/DNS 서버 설정 및 패킷 흐름 분석(Packet Tracer) (0) | 2025.04.13 |
|---|---|
| [네트워크] DNSSEC에 대해서 (0) | 2025.04.13 |
| [네트워크] DHCP에 대해서 (0) | 2025.04.10 |
| [네트워크] 패킷 트레이서(Packet Tracer) 사용하여 네트워크 설정(기초) (0) | 2025.04.09 |
| [네트워크] 네트워크 프로토콜(이더넷, IP, ICMP, ARP, TCP, UDP) (0) | 2025.04.07 |