nslookup이란?
DNS 레코드 조회 도구

nslookup이란?

nslookup은 리눅스, 맥OS, 윈도우 등에서 사용할 수 있는 커맨드라인 명령어 중 하나로 DNS 레코드를 조회할 때 사용합니다. nslookup은 Internet Systems Consortium이 개발하고 있는 BIND에 포함되어있으며, 한 때 dig와 host로 대체될 예정으로* 비추천(deprecated)되었으나, BIND 9.3 릴리스와 함께 비추천에서 제외되었습니다.**

* nslookup의 모든 기능은 dig와 host 명령어로 대체할 수 있습니다.

DNS 전방 조회를 수행하는 기본적인 명령어 구조는 다음과 같습니다.

$ nslookup <HOSTNAME>

DNS 레코드를 조회하고자 하는 서버를 지정하고자 하는 경우 서버 주소를 지정할 수 있습니다.

$ nslookup <HOSTNAME> <DNS_SERVER>

예를 들어 google.com의 DNS 레코드를 조회한다면 다음과 같이 사용합니다.

$ nslookup google.com
nslookup google.com
Server:     192.168.1.1
Address:    192.168.1.1#53

Non-authoritative answer:
Name:   google.com
Address: 216.58.220.110

DNS 서버를 명시적으로 지정하는 경우 다음과 같이 사용합니다.

$ nslookup google.com 8.8.8.8
Server:     8.8.8.8
Address:    8.8.8.8#53

Non-authoritative answer:
Name:   google.com
Address: 172.217.175.46

nslookup을 그냥 실행하면 인터렉티브하게 DNS 질의를 할 수 있습니다. 더 자세한 설명과 인터렉티브 모드에서 사용할 수 있는 명령어들은 man nslookup으로 확인할 수 있습니다.

설치 방법

윈도우10Windows10이나 맥OSmacOS의 경우 기본적으로 설치가 되어있습니다. 리눅스의 경우도 일반적으로 설치되어있으나, 설치되어있지 않은 환경에서는 배포판 별로 패키지 매니저를 사용해서 설치할 수 있습니다.

데비안Debian이나 우분투Ubuntu와 같은 데비안 계열 배포판의 경우 aptdnsutils 패키지를 설치하면 포함되어있습니다.

$ apt install dnsutils

레드햇, 센트OS, 아마존 리눅스와 같은 레드햇 계열 배포판의 경우 yum으로 bind-utils 패키지를 설치합니다.

$ yum install bind-utils

nslookup 사용방법

정방향 조회(Forward lookup):

$ nslookup <HOSTNAME>

역방향 조회(Reverse lookup):

$ nslookup <IP_ADDRESS>

특정 레코드 조회:

$ nslookup -query=<RECORD_TYPE> <HOSTNAME>

타임아웃 지정:

$ nslookup -timeout=<TIMEOUT> <HOSTNAME>

관련된 커맨드라인 명령어

관련 문서