nslookup·dig·host
쉽게 말하면
이름 → 숫자 주소 변환(DNS)이 제대로 되는지 직접 물어보는 명령들이에요(nslookup, dig, host). 인터넷이 되는데 이름으로만 접속이 안 될 때 원인을 찾을 때 써요.
시험용 정의
nslookup·dig·host는 DNS 서버에 직접 질의해서 도메인 이름과 IP 주소 등 DNS 레코드를 조회하는 진단 도구다. dig는 응답을 가장 자세히 보여줘서 표준 진단 도구로 쓰이고, host는 가장 간단하며, nslookup은 대화형 모드가 있다.
비유로 이해하기
전화번호 안내(114)에 직접 전화해 "○○상회 번호 좀요" 하고 묻는 것이다. 어느 안내원(DNS 서버)에게 물을지도 내가 고를 수 있다.
시험에 이렇게 나와요
- 최근 2차 기출에는 드물다. 1차(온라인) 출제기준 범위라 기본 도구 이름과 레코드 종류는 알아 두자
- 레코드 종류 짝짓기: 메일 서버 → MX, 역방향 → PTR, 별칭 → CNAME, IPv6 → AAAA
- "메일 서버를 조회하는 명령으로 옳은 것은?" →
dig example.com MX/nslookup -type=mx/host -t mx - 도구 특징: nslookup 대화형 모드, dig 상세 출력, host 간단 출력
- 파일 역할: /etc/resolv.conf(DNS 서버), /etc/hosts(직접 적은 대응), /etc/nsswitch.conf(조회 순서)
확인 문제
Q1. ping 8.8.8.8은 잘 되는데 ping www.example.com은 Name or service not known이 뜬다. 가장 먼저 확인할 파일은?
- /etc/resolv.conf
- /etc/hostname
- /etc/fstab
- /etc/services
정답 보기
1번 /etc/resolv.conf
IP로는 통신이 되니 네트워크 경로는 정상이다. 이름을 IP로 바꾸는 이름 해석(DNS)이 실패한 것이다. 어느 DNS 서버에 물을지는 /etc/resolv.conf의 nameserver 줄이 정한다. /etc/hostname은 내 컴퓨터 이름, /etc/services는 포트 번호와 서비스 이름 대응표다.
Q2. 도메인의 메일 서버 정보를 담은 DNS 레코드는?
- MX
- CNAME
- A
- PTR
정답 보기
1번 MX
MX(Mail eXchanger). A는 IPv4 주소, CNAME은 별칭, PTR은 역방향(IP → 이름).
Q3. IP 주소 93.184.216.34로 도메인 이름을 찾는 dig 명령은?
- dig 93.184.216.34
- dig +short 93.184.216.34
- dig -x 93.184.216.34
- dig -r 93.184.216.34
정답 보기
3번 dig -x 93.184.216.34
역방향 조회는 -x. dig 뒤에 IP만 쓰면 그 문자열을 도메인 이름으로 보고 A 레코드를 묻는다.
Q4. 시스템이 질의할 DNS 서버 주소를 지정하는 파일은?
- /etc/nsswitch.conf
- /etc/services
- /etc/resolv.conf
- /etc/hosts
정답 보기
3번 /etc/resolv.conf
resolv.conf의 nameserver. /etc/hosts는 직접 적는 이름-IP 대응, nsswitch.conf는 조회 순서.
Q5. nslookup에서 레코드 타입을 MX로 지정하는 옵션은?
- -type=mx
- --mx
- -t mx
- +mx
정답 보기
1번 -type=mx
nslookup은 -type=mx(또는 -query=mx). -t mx는 host 명령 방식이다.
헷갈리기 쉬운 O·X
dig와 nslookup은 /etc/hosts에 적힌 이름도 조회해 준다.
정답 보기
X DNS 서버에 직접 묻기 때문에 /etc/hosts는 보지 않는다. getent hosts를 쓴다.
dig ANSWER SECTION의 두 번째 칸 숫자(예: 3600)는 포트 번호다.
정답 보기
X TTL, 즉 캐시해도 되는 시간(초)이다.
nslookup은 인자 없이 실행하면 대화형 모드로 들어간다.
정답 보기
O > 프롬프트에서 server, set type=mx, exit 등을 쓴다.
DNS 질의는 기본적으로 TCP 80번 포트를 사용한다.
정답 보기
X 53번 포트, 보통 UDP. 큰 응답·영역 전송은 TCP 53.
status가 NXDOMAIN이면 DNS 서버에 연결 자체가 되지 않은 것이다.
정답 보기
X NXDOMAIN은 서버가 "그런 이름 없음"이라고 답한 것이다. 연결 실패는 timed out.