- DNS 쿼리 및 응답은 인터넷 작동 방식의 기본 → 웹사이트를 방문할 때, 브라우저에 URL을 입력
- DNS 쿼리를 보냄 → DNS는 사람이 읽을 수 있는 도메인 이름(예: hippo.com)을 인터넷 프로토콜(IP) 주소(예: 192.168.0.100)로 변환
- 웹사이트에 성공적으로 접속했는지 여부에 관계없이 받는 모든 응답에는 코드가 포함
- 거의 모든 DNS 쿼리와 함께 반환되는 가장 일반적인 네 가지 쿼리
- NOERROR
- NXDOMAIN
- SERVFAIL
- REFUSED
- DNS 쿼리에 문제가 있는 경우 응답 데이터를 통해 보안 위반 문제를 더 빨리 해결하거나 식별하는 데 도움이 될 수 있음
- DNS 반환 코드에 대해 간략하게 설명
DNS 응답 코드 설명 NOERROR - DNS 쿼리가 성공적으로 완료 NXDOMAIN - 쿼리한 도메인 이름이 존재하지 않기 때문에 DNS 쿼리가 실패 SERVFAIL - 답변을 제공할 수 없기 때문에 DNS 쿼리가 실패 REFUSED - 서버가 정책으로 인해 응답을 거부했기 때문에 DNS 쿼리가 실패
- DNS 응답 코드 개요
- 공식적으로 DNS의 응답 코드 전체 목록은 24개가 넘음
- DNS 쿼리는 약 84%의 시간을 성공 → NOERROR 코드를 생성
- DNS 쿼리의 약 16%가 실패 → 세 가지 공통 코드 중 하나가 발생(NXDOMAIN, SERVFAIL, REFUSED)
1. DNS 응답 코드 NOERROR
1.1. 가장 일반적인 응답
- 약 80~90%에서 NOERROR는 네트워크 로그에 표시되는 응답 코드
- NOERROR는 DNS 쿼리가 유효한 응답을 받았다는 의미
- NOERROR는 모든 것이 정상이며 쿼리에 문제가 없었음을 나타내는 방법
- 사용자가 hippo.com 도메인으로 요청을 하였으며, 리졸버와 DNS 서버가 hippo.com 도메인으로 정상 이동
1.2. NOERROR 응답 코드가 항상 완벽하다는 의미 X
- NOERROR 응답이 반환되었다고 하여, 네트워크의 사용자가 특별히 요청한 웹사이트로 이동했다는 의미는 아님
- 사용자가 hippo.com 도메인으로 요청
- hippo.com 도메인으로 요청을 보냈을 경우 test.com 도메인으로 리다이렉션되도록 설정
- 사용자가 hippo.com 도메인으로 이동하면, 성공적인 NOERROR 응답 코드를 받음
- 성공적으로 NOERROR 응답코드가 출력되면서, 사용자가 test.com 도메인으로 이동
- hippo.com 도메인 요청하였을 때, test.com 도메인 서버에 장애가 발생하거나 액세스 권한이 없다고 알려도 DNS 로그에서는 NOERROR 응답
2. DNS 응답 코드 NXDOMAIN
- 수신된 응답 코드의 나머지 10~15%는 대부분 NXDOMAIN
- 서버가 되돌려 보내는 NXDOMAIN 응답의 의미는 "이 도메인에 대해 쿼리했지만 해당 도메인이 존재하지 않거나 존재하는지 모르겠습니다."
- NXDOMAIN이 발생했다는 의미는 쿼리가 실패를 의미
- NXDOMAIN 응답 코드가 네트워크에 의미하는 바에 대한 전체 블로그 게시물이 있지만 여기에서 몇 가지 기본 사항을 다룸
2.1. NXDOMAIN에 대한 의미
- 브라우저에서 도메인 이름을 잘못 입력하는 동안 사용자 오류가 발생
- 보안 제어가 사용자가 접근하려는 사이트를 차단
- 일부 오래된 코드가 더 이상 존재하지 않는 웹사이트에 연결
- 잘못 구성된 응용 프로그램이 철자가 잘못된 도메인을 쿼리
- 도메인이 손상되었거나 맬웨어가 존재한다는 표시
2.2. 악성코드 감염의 징후
- 일반적으로 맬웨어는 코드에 하나 이상의 도메인에 접근하는 경우가 있음
- 악성 코드에 감염된 장치가 현재 차단된 도메인을 확인할 수 없는 경우 NXDOMAIN 응답이 발생
3. DNS 응답 코드 SERVFAIL
- SERVFAIL 응답은 약 1%
- NXDOMAIN이 도메인이 존재하지 않는다는 것을 알려주는 DNS 서버라면, SERVFAIL은 "당신에게 그 쿼리에 대한 답을 줄 수 없다"라고 말하는 DNS 서버
- DNS 서버에 기술적인 문제로 인해 발생 가능 → 방화벽이나 침입 방지 시스템과 같은 네트워크의 보안 제어가 사용자가 해당 도메인으로 이동하는 것을 차단하고 있음을 의미
- NXDOMAIN과 마찬가지로 과도한 SERVFAIL 응답은 추가 조사가 필요
- SERVFAIL 응답을 받는 도메인도 악의적인 활동에 대해 조사 필요
4. DNS 응답 코드 REFUSED
- REFUSED는 DNS 이름 서버가 정책상의 이유로 작업 수행을 거부할 때 발생 → 특정 장치가 네임서버를 악용하는 경우 차단
- 특정 작업이 금지될 수 있음
- 영역 전송은 로드 밸런싱 또는 백업을 위해 여러 DNS 서버에 DNS 구성 정보를 복제하는 방법
- 일반적으로 권한이 있는 사람만 영역 이전을 완료 가능
- 일반 사용자가 DNS 구성 정보를 복제하려고 할 때, 권한이 없으면, REFUSED 응답 코드가 발생
'GTM과 DNS' 카테고리의 다른 글
Extension DNS(EDNS0)란 (0) | 2023.09.16 |
---|---|
DNS의 TTL(Time To Live) (0) | 2023.09.16 |
DNS TXT Record(DNS 텍스트 레코드) (0) | 2023.09.16 |
DNS NS(Name server) 레코드 → NS 레코드는 권한있는 DNS 서버를 나타냄 (0) | 2023.09.16 |
DNSSEC(Domain Name System Security Extension)이란 (0) | 2023.09.16 |