본문으로 바로가기

ARP 캐시 테이블에 이어 이번에는 DNS 캐시 테이블과 DNS 동작에 대해 정리해보고자 한다.

개념 정리에 앞서 간단한 실습을 해보았다.

 

1. DNS 캐시 조회 (displaydns)

 

- ipconfig/displaydns

DNS 캐시 목록을 조회하는 명령어다.

 

displaydns 명령결과

위 결과는 displaydns명령의 결과중 일부를 가져온 것이다.

데이터 이름(ns1.google.com)은 도메인이고,

(호스트) 레코드(216.239.32.10) 는 IP주소다.

 

ping 명령결과

확인차 ns1.google.com 으로 ping을 찍어보았다.

예상대로 DNS 캐시 테이블과 동일한 IP주소(216.239.32.10)가 찍힌다.

 

** 따로 알아보니 ns1.google.com 은 구글의 자체 네임서버라고 한다.

엑세스 지연을 줄이기 위해 구글 자체 인프라로 운영하는 것 같다.

(참고자료 https://stackshare.io/stackups/google-cloud-dns-vs-ns1)

 

 

2. DNS 캐시 비우기 (flushdns)

 

- ipconfig/flushdns

DNS 캐쉬를 비우는 명령어다.

 

여기서 한가지 의문이 들었다.

 

❔ 왜 애써 차곡차곡 모은 캐쉬를 굳이굳이 지우는거지?

 

그래서 찾아보았다. 여러 이유가 있었다.

 

1) DNS 스푸핑(DNS spoofing — also known as DNS cache poisoning) 방지

DNS 스푸핑이란 해커가 host파일을 변조하거나 캐쉬 포이즌 공격을 해서

사용자가 유사 위변조 사이트로 리디렉션(redirection) 하도록 유도하는 방식이다.

 

** 사용자가 유사 사이트에서 로그인을 시도하면, 해커가 키로깅(keylogging)으로 계정정보를 빼돌릴 수 있다.

옛날옛적 보안개론 강의시간에 교수님께서 지나가는 말로 은행 위변조사이트를 조심하라고 하셨던게 생각난다.

캐쉬정보가 변조된 것을 알았다면 지우는것이 가장 빠른 해결법이다.

보안 관련해서는 말이 길어질 것 같아 별도의 글로 정리하는 것이 좋을 것 같다.

 

2) 404 error 발생시 해결

그저께 방문한 사이트가 알고보니 오늘 도메인을 바꾸었다면?

당연하게도 캐쉬 테이블이 잘못된 정보를 가지고 있겠지.

그럼 지워야지..

 

3) 웹사이트 접속 문제 해결

본래 DNS 캐쉬는 재접속시 지연을 줄이기 위한 목적을 가지고 있지만,

안타깝게도 과도하게 많은 DNS캐쉬가 쌓이면 결국 방대한 캐쉬테이블을 모두 뒤져봐야 하기 때문에

이 과정에서 지연시간이 발생할 수 있다.

 

4) 검색 히스토리 숨기려고

이건 쿠키지우는거랑 비슷한 맥락인 것 같다.

브라우저에서 쿠키는 지웠지만 DNS캐쉬 기록이 남아있다면?

이걸로도 어느 사이트에 접근했는지 알아낼 수 있을테니

철저한(?) 사람이라면 DNS까지 지우나보다.

 

(참고자료 https://blog.hubspot.com/website/flush-dns)

 

 

새벽이라 오늘은 여기까지 정리하고 다음 글에서 DNS 원리를 마저 정리해야겠다.

 

++) 아침에 일어나서 바로 정리했다.

https://codingexplore.tistory.com/90

 

DNS에 대하여(2) - DNS 동작원리

새벽에 DNS 실습부분만 쓰고 잠들었다. 새 글을 파서 동작원리를 정리해둔다. 1. DNS 동작과정 1) 도메인 입력 사용자가 주소창에 도메인을 입력하고 엔터를 누른다. (cmd에서 ping을 찍는 것과 동일

codingexplore.tistory.com

 

반응형