Dig - Linux 명령 - Unix 명령

이름

dig - DNS 조회 유틸리티

개요

[ - x 형식 ] [ - x 형식 ] [ - x 형식 ] [ - x 형식 ] [ - x 형식 ] ] [ 유형 ] [ 클래스 ] [ queryopt ... ]

dig [ -h ]

dig [ global-queryopt ... ] [ query ... ]

기술

dig (도메인 정보 그루퍼)는 DNS 이름 서버를 조사하는 유연한 도구입니다. DNS 조회를 수행하고 쿼리 된 이름 서버에서 반환 된 응답을 표시합니다. 대부분의 DNS 관리자는 유연성, 사용 용이성 및 출력의 명확성 때문에 dig 를 사용하여 DNS 문제를 해결합니다. 다른 조회 도구는 dig 보다 기능이 적습니다.

dig 는 일반적으로 명령 줄 인수와 함께 사용되지만 파일에서 조회 요청을 읽는 일괄 작업 모드도 있습니다. -h 옵션이 주어지면 명령 행 인수 및 옵션에 대한 간략한 요약이 인쇄됩니다. 이전 버전과 달리 dig 의 BIND9 구현은 명령 줄 에서 여러 개의 조회를 실행할 수있게합니다.

특정 이름 서버를 쿼리하라는 지시가없는 한, dig/etc/resolv.conf에 나열된 각 서버를 시도합니다.

명령 줄 인수 나 옵션을 지정하지 않으면 "."에 대한 NS 쿼리를 수행합니다. (뿌리).

간단한 사용법

일반적인 dig 호출은 다음과 같습니다.

dig @ server name 유형

어디에:

섬기는 사람

질의 할 이름 서버의 이름 또는 IP 주소 입니다. 점으로 구분 된 10 진수 표기법의 IPv4 주소 또는 콜론으로 구분 된 표기법의 IPv6 주소 일 수 있습니다. 제공된 서버 인수가 호스트 이름 일 때 dig 는 해당 이름 서버를 조회하기 전에 해당 이름을 분석합니다. 서버 인수가 제공되지 않으면, dig/etc/resolv.conf를 참조 하고 거기에 나열된 이름 서버를 조회합니다. 응답하는 이름 서 v의 응답이 표시됩니다.

이름

조회 할 리소스 레코드의 이름입니다.

유형

어떤 유형의 쿼리가 필요한지를 나타냅니다. ANY, A, MX, SIG 등 모든 유효한 쿼리 유형이 될 수 있습니다. type 인수가 제공되지 않으면 dig 는 A 레코드를 검색합니다.

옵션

-b 옵션은 주소 지정 을 위해 조회의 소스 IP 주소 를 설정합니다. 호스트의 네트워크 인터페이스 중 하나에 유효한 주소 여야합니다.

기본 u 리 클래스 (인터넷의 경우 IN)는 -c 옵션으로 대체됩니다. class 는 Hesiod 레코드의 경우 HS 또는 CHAOSNET 레코드의 경우 CH와 같은 유효한 클래스입니다.

-f 옵션을 사용하면 파일 filename 에서 처리 할 조회 요청 목록을 읽음으로써 일괄 처리 모드에서 dig가 작동합니다. 이 파일에는 한 줄에 하나씩 여러 개의 쿼리가 들어 있습니다. 파일의 각 항목은 명령 줄 인터페이스를 사용하여 발굴 하는 쿼리와 동일한 방식으로 구성되어야합니다.

비표준 포트 x 호를 조회 할 경우, -p 옵션이 사용됩니다. port #dig 가 표준 DNS 포트 번호 53 대신 쿼리를 보낼 포트 번호입니다.이 옵션은 비표준 포트 번호에서 쿼리를 수신 대기하도록 구성된 네임 서버를 테스트하는 데 사용됩니다.

-t 옵션은 쿼리 유형을 입력으로 설정합니다. BIND9에서 지원되는 유효한 조회 유형이 될 수 있습니다. 역방향 조회를 나타 내기 위해 -x 옵션이 제공되지 않는 한 기본 쿼리 유형은 "A"입니다. 영역 전송은 AXFR 유형을 지정하여 요청할 수 있습니다. 증분 영역 전송 (IXFR)이 필요한 경우 type 은 ixfr = N으로 설정됩니다. 증분 영역 전송에는 영역 SOA 레코드의 일련 번호가 N 이므로 영역에 대한 변경 사항이 포함됩니다.

역방향 조회 (주소를 이름에 매핑)는 -x 옵션으로 단순화됩니다. addr 는 점으로 구분 된 십진수 표기법의 IPv4 주소 또는 콜론으로 구분 된 IPv6 주소입니다. 이 옵션을 사용하면 name , classtype 인수를 제공 할 필요가 없습니다. dig 는 11.12.13.10.in-addr.arpa와 같은 이름 검색을 자동으로 수행하고 쿼리 유형 및 클래스를 각각 PTR 및 IN으로 설정합니다. 기본적으로 IPv6 주소는 RFC2874에 정의 된 IP6.ARPA 도메인 및 이진 레이블을 사용하여 조회됩니다. IP6.INT 도메인 및 "nibble"레이블을 사용하여 이전 RFC1886 방법을 사용하려면 -n (nibble) 옵션을 지정하십시오.

dig에 의해 보내진 DNS 질의에 서명하고 TSIG (트랜잭션 서명)를 사용하여 응답을 보내려면 -k 옵션을 사용하여 TSIG 키 파일을 지정하십시오. -y 옵션을 사용하여 명령 행에서 TSIG 키 자체를 지정할 수도 있습니다. name 은 TSIG 키의 이름이고 key 는 실제 키입니다. 키는 base-64로 인코딩 된 문자열이며 일반적으로 dnssec-keygen (8)에 의해 생성됩니다. ps (1)의 출력 또는 쉘의 내역 파일에서 키를 볼 수 있으므로 다중 사용자 시스템에서 -y 옵션을 사용할 때는주의해야합니다. dig 와 함께 TSIG 인증을 사용할 때 쿼리되는 이름 서버는 사용되는 키와 알고리즘을 알아야합니다. BIND에서는 named.conf에 적절한 keyserver 문을 제공하여이 작업을 수행합니다.

쿼리 옵션

dig 는 조회가 작성되고 결과가 표시되는 방식에 영향을주는 많은 조회 옵션을 제공합니다. 이 중 일부는 쿼리 헤더의 플래그 비트를 설정 또는 재설정하고 일부는 응답 섹션을 결정하고 다른 일부는 제한 시간 및 재시도 전략을 결정합니다.

각 쿼리 옵션은 앞에 더하기 기호 (+)가 붙은 키워드로 식별됩니다. 일부 키워드는 옵션을 설정하거나 재설정합니다. 이것들은 그 키워드의 의미를 무효로하기 위해 문자열 no 앞에 올 수 있습니다. 다른 키워드는 값을 시간 초과 간격과 같은 옵션에 지정합니다. 그것들은 + keyword = value 형식을 가지고 있습니다. 쿼리 옵션은 다음과 같습니다.

+ [no] tcp

이름 서버를 질의 할 때 [사용하지 마십시오] TCP를 사용하십시오. 기본 작동은 AXFR 또는 IXFR 조회가 요청되지 않는 한 UDP를 사용하는 것입니다.이 경우 TCP 연결이 사용됩니다.

+ [no] vc

이름 서버를 질의 할 때 [사용하지 마십시오] TCP를 사용하십시오. + [no] tcp 에 대한이 대체 구문은 이전 버전과의 호환성을 위해 제공됩니다. "vc"는 "가상 회로"를 의미합니다.

+ [no] ignore

TCP를 사용하여 재 시도하는 대신 UDP 응답에서 절단을 무시하십시오. 기본적으로 TCP 재 시도가 수행됩니다.

+ 도메인 = somename

/etc/resolv.conf도메인 지시문에 지정된 것처럼 단일 도메인 somename 을 포함하도록 검색 목록을 설정하고 + 검색 옵션이 주어진 것처럼 검색 목록 처리를 활성화합니다.

+ [no] 검색

resolv.conf (있는 경우)의 searchlist 또는 domain 지시문에 정의 된 검색 목록을 [사용하지 마십시오]를 사용하십시오. 검색 목록은 기본적으로 사용되지 않습니다.

+ [no] defname

더 이상 사용되지 않으며 + [no] 검색과 동의어로 취급됩니다.

+ [no] aaonly

이 옵션은 아무 작업도 수행하지 않습니다. 이것은 구현되지 않은 리졸버 플래그를 설정 한 구 버전의 dig 와의 호환성을 위해 제공됩니다.

+ [no] 광고 문안

쿼리의 AD (실제 데이터) 비트를 [설정하지 않음]으로 설정합니다. AD 비트는 현재 응답 에서뿐만 아니라 쿼리에서 표준적인 의미를 지니지 만 쿼리에서 비트를 설정하는 기능은 완벽을 기하기 위해 제공됩니다.

+ [no] cdflag

쿼리의 CD (검사 사용 안 함) 비트를 [설정하지 않음]으로 설정합니다. 이것은 응답의 DNSSEC 유효성 검증을 수행하지 않도록 서버에 요청합니다.

+ [no] 재귀 적

쿼리에서 RD (recursion desired) 비트의 설정을 토글합니다. 이 비트는 기본적으로 설정됩니다. 즉, dig는 일반적으로 재귀 쿼리를 보냅니다. 재귀는 + nssearch 또는 + trace 쿼리 옵션을 사용하면 자동으로 비활성화됩니다.

+ [no] nssearch

이 옵션을 설정하면 dig 는 검색된 이름을 포함하는 영역에 대한 권한있는 이름 서버를 찾고 각 이름 서버가 영역에 대해 가지고있는 SOA 레코드를 표시합니다.

+ [no] trace

찾은 이름에 대한 루트 이름 서버에서 위임 경로 추적을 토글합니다. 추적은 기본적으로 사용되지 않습니다. 추적을 사용하면 dig 는 반복 조회를 수행하여 조회 된 이름을 분석합니다. 루트 서버의 조회를 따라 조회를 해결하는 데 사용 된 각 서버의 응답을 보여줍니다.

+ [no] cmd

dig 의 버전과 적용된 쿼리 옵션을 식별하는 출력에서 ​​초기 주석의 인쇄를 토글합니다. 이 주석은 기본적으로 인쇄됩니다.

+ [no] short

간결한 답을 제공하십시오. 기본값은 답을 자세한 형식으로 인쇄하는 것입니다.

+ [no] 식별

+ 짧은 옵션을 사용하면 대답을 제공 한 IP 주소와 포트 번호를 표시하거나 표시하지 않습니다. 짧은 형식의 응답이 요청 된 경우 기본값은 응답을 제공 한 서버의 원본 주소와 포트 번호를 표시하지 않습니다.

+ [no] 댓글

출력에서 주석 행 표시를 토글합니다. 기본값은 주석을 인쇄하는 것입니다.

+ [no] 통계

이 질의 옵션은 통계 인쇄를 토글합니다. 질의가 작성되었을 때, 응답의 크기 등등. 기본 동작은 쿼리 통계를 인쇄하는 것입니다.

+ [no] qr

쿼리가 전송 될 때 인쇄합니다. [인쇄하지 않습니다]. 기본적으로 쿼리는 인쇄되지 않습니다.

+ [no] question

답이 반환 될 때 질의의 질문 부분을 인쇄하십시오. 기본값은 질문 섹션을 주석으로 인쇄하는 것입니다.

+ [no] 대답

대답의 대답 섹션을 표시하십시오. 기본값은이를 표시하는 것입니다.

+ [no] 권한

응답의 권한 섹션을 표시합니다 (표시하지 않음). 기본값은이를 표시하는 것입니다.

+ [no] 추가

회신의 추가 섹션을 표시합니다. 기본값은이를 표시하는 것입니다.

+ [no] all

모든 표시 플래그를 설정하거나 지 웁니다.

+ 시간 = T

쿼리의 타임 아웃을 T 초로 설정합니다. 기본 제한 시간은 5 초입니다. T 를 1보다 작게 설정하려고하면 1 초의 쿼리 제한 시간이 적용됩니다.

+ tries = T

기본값 인 3 대신 서버에 대한 UDP 쿼리를 다시 시도하는 횟수를 설정합니다. T 가 0보다 작거나 같으면 다시 시도 횟수가 자동으로 1로 반올림됩니다.

+ ndots = D

이름 에 나타낼 점의 수를 D 로 설정하여 절대 점으로 간주하십시오. 기본값은 /etc/resolv.conf 의 ndots 문을 사용하여 정의 된 것이고, ndots 문이 없으면 1입니다. 소수점이 적은 이름은 상대 이름으로 해석되며 /etc/resolv.conf검색 또는 도메인 지정 문에 나열된 도메인에서 검색 됩니다.

+ bufsize = B

EDNS0를 사용하여 보급 된 UDP 메시지 버퍼 크기를 B 바이트로 설정하십시오. 이 버퍼의 최대 크기와 최소 크기는 각각 65535와 0입니다. 이 범위를 벗어나는 값은 적절하게 반올림 또는 올림 반올림됩니다.

+ [no] multiline

사람이 읽을 수있는 주석을 포함하는 자세한 다중 행 형식으로 SOA 레코드와 같은 레코드를 인쇄하십시오. 기본값은 각 레코드를 한 행에 인쇄하여 dig 출력의 기계 구문 분석을 용이하게하는 것입니다.

+ [no] 실패

SERVFAIL을 받으면 다음 서버를 사용하지 마십시오. 기본값은 일반적인 스텁 해석자 동작의 반대 인 다음 서버를 시도하지 않는 것입니다.

+ [no] besteffort

조작 된 메시지의 내용을 표시하려고 시도합니다. 기본값은 조작 된 답을 표시하지 않는 것입니다.

+ [no] dnssec

쿼리의 추가 섹션에있는 OPT 레코드에 DNSSEC OK 비트 (DO)를 설정하여 DNSSEC 레코드를 보내도록 요청합니다.

여러 개의 QUERIES

dig 의 BIND 9 구현은 명령 행에서 여러 쿼리를 지정하는 것을 지원합니다 ( -f 배치 파일 옵션을 지원하는 것 외에). 이러한 각 쿼리에는 고유 한 플래그, 옵션 및 쿼리 옵션 집합이 제공 될 수 있습니다.

이 경우 각 쿼리 인수는 위에 설명 된 명령 줄 구문의 개별 쿼리를 나타냅니다. 각각은 표준 옵션 및 플래그, 조회 할 이름, 선택적 조회 유형 및 클래스 및 해당 조회에 적용되어야하는 조회 옵션으로 구성됩니다.

모든 쿼리에 적용되어야하는 글로벌 쿼리 옵션 집합도 제공 할 수 있습니다. 이러한 글로벌 쿼리 옵션은 명령 줄에 제공된 이름, 클래스, 유형, 옵션, 플래그 및 쿼리 옵션의 첫 번째 튜플보다 먼저 나와야합니다. 모든 글로벌 쿼리 옵션 ( + [no] cmd 옵션 제외)은 쿼리 별 옵션에 의해 무시 될 수 있습니다. 예 :

dig + qr www.isc.org any -x 127.0.0.1 isc.org ns + noqr

www.isc.org에 대한 ANY 쿼리, 127.0.0.1의 역 조회, isc.org의 NS 레코드에 대한 쿼리 등 세 가지 조회를 수행하기 위해 명령 행에서 dig를 사용하는 방법을 보여줍니다. + qr 의 글로벌 쿼리 옵션이 적용되므로 dig 는 각 조회에 대해 만든 초기 쿼리를 표시합니다. 최종 질의는 + noqr 의 로컬 질의 옵션을 가지며, 이것은 isc.org에 대한 NS 레코드를 찾을 때 dig 가 초기 질의를 출력하지 않음을 의미합니다.

관련 항목

host ( 1), named (8), dnssec-keygen (8), RFC1035 .

중요 : man 명령 ( % man )을 사용하여 특정 컴퓨터에서 명령이 어떻게 사용되는지보십시오.

관련 기사