새소식

이론/네트워크

DNS란?

  • -

1. DNS(Domain Name System)

사용자는 네이버에 접속하기 위해서 웹 브라우저의 주소창에 www.naver.com과 같은 도메인 네임을 입력한다. DNS 서버는 사용자가 입력한 도메인 네임을 125.209.222.141 같은 IP 주소로 변환해준다.

 

주소창에 125.209.222.141을 입력해도 www.naver.com에 접속이 되지만 사용자가 숫자의 연속인 IP 주소를 일일이 외울 수 없기 때문에 쉽게 기억할 수 있는 도메인 주소 체계가 만들어졌는데 그것이 바로 DNS이다.

 


2. 그림으로 보는 도메인 체계

 

도메인 체계 (출처 : KISA)

.kr 도메인에는 .or 영역을 표현하는 or.kr 도메인이 포함되어 있고 or.kr 도메인에는 kisa.or.kr 도메인이 포함되어있다.

 


3. DNS 서버 주소

 

ipconfig /all

윈도우에서 DNS 서버 주소를 확인하려면 ipconfig /all 명령어를 입력하면 된다.

 


4. DNS 질의 순서

DNS 질의 순서

클라이언트가 www.naver.com에 접속하기 위한 순서는 위 그림과 같다. 우선 www.naver.com의 IP 주소가 캐시에 존재하는지 확인한다. 과거에 접속한 사이트는 캐시에 정보가 남아 바로 접속할 수 있으며 캐시에 IP 주소 정보가 없으면 hosts 파일을 참조한다. 

 

순서 설명
1 hosts 파일에 없으면 시스템에 설정된 DNS 서버인 로컬 DNS 서버에 질의한다.
2 로컬 DNS 서버에 해당 정보가 없으면 루트 DNS 서버에 질의한다.
3 루트 DNS 서버에 www.naver.com에 에 대한 정보가 없으면 com을 관리하는 DNS 서버에 대한 정보를 보낸다.
4 로컬 DNS 서버는 com DNS 서버에 www.naver.com에 에 대해 다시 질의한다.
5 com DNS 서버는 해당 정보가 없을 경우 다시 naver.com에 질의하도록 로컬 DNS 서버에 보낸다.
6 로컬 DNS 서버는 마지막으로 naver.com의 DNS 서버에 질의한다.
7 naver.com의 DNS 서버로부터 www.naver.com에 대한 IP 주소를 얻는다.
8 해당 IP 주소를 클라이언트에 전달한다.

 

위 과정은 일반적인 과정이 아닌 최악의 경우를 담은 것이다. 

 

 

hosts 파일

Windows hosts 파일
Linux hosts 파일

인터넷 통신 시에 IP와 호스트 주소를 연결해주는 역할을 하는 시스템 파일이다. Windows는 인터넷 통신을 할 때 DNS 서버 사용 이전에 hosts 파일을 먼저 참조하기 때문에, hosts 파일에 특정 도메인 주소가 존재하는 경우 정상적인 요청을 취소하고 hosts 파일에 나타난 주소로 연결된다. 따라서 악성코드에 의해 호스트 파일이 변조되면, 정상적인 사이트가 아닌 악성코드가 의도한 특정한 사이트로 접속되어 파밍이나 피싱 등의 피해를 볼 수 있다.

 

구분 경로
Windows 계열 C:\Windows\System32\drivers\etc\hosts
Linux 계열 /etc/hosts

운영체제별 hosts 파일의 위치는 위 표와 같다.

 


5. DNS 정보 조회, 삭제

 

DNS 정보 조회

ipconfig /display 명령어를 통해 DNS 정보를 조회할 수 있다.

 

DNS 정보 삭제

ipconfig /flushdns 명령어를 통해 DNS 정보를 삭제할 수 있다.

 

삭제 후 조회

DNS 정보를 삭제한 후에 다시 조회를 하면 위 그림과 같은 화면을 볼 수 있다.

 

 

 


6. hosts 파일을 이용한 특정 사이트 강제 접근 및 차단

hosts 파일을 이용해 특정 사이트에 접근하게 하거나 접근을 막을 수 있는데 이를 실습해보자

 

1) 도메인 등록

210.89.160.88

ping www.naver.com 명령어를 통해 ip 주소를 획득한다.

 

도메인 등록

hosts 파일에 해당 도메인을 입력한다.

 

 

2) hosts 파일 동작 확인

 

접속 성공

실제로 http://nav로 입력한 결과 위 그림처럼 정상적으로 www.naver.com에 접속했다.

 

 

3) 접속 차단

 

도메인 등록

네이버 접속을 차단하기 위해 www.naver.com에 해당하는 ip 주소를 없는 주소로 적었다.

네이버는 과거에 접속한 이력이 있기 때문에 캐시를 지운 후 접속을 시도했다.

 

 

접속 차단

www.naver.com에 접속을 시도했으나 연결하려는 ip 주소는 hosts에 입력한 192.168.0.55이다.

(필자의 실습환경에는 squid가 깔려있어 위 그림이 나오는 것이므로 크게 신경 쓰지 않아도 된다. )

 

 

cf) 파밍 악성코드의 6가지 공격 유형 

https://www.ahnlab.com/kr/site/securityinfo/secunews/secuNewsView.do?seq=23390

 

파밍 악성코드의 6가지 공격 유형

​2014년 한 해를 뜨겁게 달군 ‘파밍(Pharming)’ 공격은 여전히 현재 진행형이다. ‘파밍’은 사용자 PC에 악성..

www.ahnlab.com

 

 


7. 참고자료

 

- DNS 도메인 체계

(https://xn--3e0bx5euxnjje69i70af08bea817g.xn--3e0b707e/jsp/resources/dns/dnsInfo.jsp)

 

 

 

 

'이론 > 네트워크' 카테고리의 다른 글

DNS 캐시 테이블이란?  (0) 2020.09.04
ARP 캐시 테이블이란?  (0) 2020.09.04
MAC 주소란?  (0) 2020.03.05
DHCP란?  (0) 2020.03.04
네트워크 개요 - I  (0) 2020.03.03
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.