리눅스 nslookup 명령어 사용법 DNS 조회와 문제 해결 가이드
목차
- nslookup이란?
- nslookup 설치하기
- 기본 사용법
- 주요 옵션과 예제
- 문제 해결 체크리스트
- 예시 시나리오
1. nslookup이란?
nslookup은 DNS 이름 서버에 질의하여 도메인 이름과 IP 주소 간 매핑 정보를 확인하는 명령어입니다. 단순한 조회뿐 아니라 사용할 네임서버를 직접 지정해 응답을 비교함으로써 DNS 문제 원인(로컬 캐시, 리졸버, 권한 네임서버 등)을 좁히는 데 유용합니다.
2. nslookup 설치하기
리눅스 배포판에 따라 nslookup은 기본으로 설치되어 있지 않을 수 있습니다. 이 경우 아래 명령으로 설치해야 합니다.
Ubuntu / Debian 계열
sudo apt update
sudo apt install dnsutils -y
CentOS / RHEL 계열
yum install bind-utils -y
설치가 완료되면 아래 명령으로 정상 설치 여부를 확인할 수 있습니다.
nslookup --version
버전 정보가 출력되면 설치가 완료된 것입니다.
3. 기본 사용법
가장 기본적인 형태는 아래와 같습니다.
nslookup example.com
# 또는 특정 네임서버에 질의
nslookup example.com 8.8.8.8
첫 번째 명령은 시스템에 설정된 기본 리졸버(예: /etc/resolv.conf의 nameserver)를 사용해 질의합니다. 두 번째 명령은 구글 퍼블릭 DNS(8.8.8.8)를 직접 지정해 응답을 비교할 때 사용합니다.
4. 주요 옵션과 실전 예제
nslookup은 대화형 모드와 비대화형 모드를 모두 지원합니다. 유용한 옵션과 예시는 아래와 같습니다.
비대화형 예제 — A 레코드 조회
nslookup -type=A example.com
MX 레코드(메일 교환기) 확인
nslookup -type=MX example.com
역방향 조회 (IP → 호스트명)
nslookup 1.2.3.4
대화형 모드에서 네임서버 변경
$ nslookup
> server 8.8.4.4
> set type=NS
> example.com
> exit
대화형 모드에서는 set 명령으로 조회 타입을 바꾸고, server 명령으로 질의 대상 네임서버를 지정할 수 있어 다양한 비교가 가능합니다.
5. 문제 해결 체크리스트
DNS 문제를 진단할 때는 아래 순서로 점검하세요.
- 로컬 DNS 캐시 확인 — 시스템 또는 브라우저의 캐시가 오래된 응답을 줄 수 있습니다.
- /etc/resolv.conf — 설정된 nameserver가 올바른지 확인합니다.
- 다른 네임서버에 질의 — 권한 네임서버와 퍼블릭 DNS(예: 8.8.8.8)를 비교합니다.
- 네트워크 연결 확인 — DNS 포트(UDP/TCP 53) 차단 여부 확인:
telnet ns.example.com 53
또는 방화벽 규칙 점검. - 권한 네임서버 응답 확인 — 권한 서버가 올바른 레코드를 제공하는지 점검.
예: nslookup으로 특정 서버에서 응답이 다를 때는 네임서버별 응답을 캡처해 차이를 분석하면 원인(레플리케이션 지연, TTL 문제, 잘못된 존 파일 등)을 파악할 수 있습니다.
6. 예시 시나리오
사례 A — 도메인이 해석되지 않을 때
증상: 브라우저에서 도메인 접속 실패, ping도 실패.
# 1) 기본 조회
nslookup yourdomain.example
# 2) 퍼블릭 DNS에 질의
nslookup yourdomain.example 8.8.8.8
# 3) 권한 네임서버 직접 질의
nslookup yourdomain.example ns1.nameserver.com
분석: 세 서버의 결과를 비교해 권한 네임서버가 올바른 레코드를 반환하는지 확인합니다. 권한 네임서버가 올바르면 로컬/리졸버 캐시 문제, 아니라면 존 파일/레코드 설정 문제를 의심합니다.
사례 B — 메일이 특정 도메인으로 배달되지 않을 때
nslookup -type=MX example.com
# MX 레코드 우선순위와 대상 호스트가 정확한지 확인
nslookup은 리눅스 환경에서 DNS 문제를 빠르게 좁히는 데 유용한 도구입니다. 이 글에서 소개한 기본 명령, 옵션, 점검 순서를 익히면 네트워크·서비스 장애 해결 시간을 단축할 수 있습니다. 실무에서는 권한 서버와 퍼블릭 리졸버 간 응답을 반드시 비교해 원인을 명확히 하세요.