예, 여러 가지가 있습니다.

예, 여러 가지가 있습니다.

도메인 이름에 대해서만 DNS 조회를 수행하는 명령이 있습니까? 예를 들어, dns unix.stackexchange.com어느 것이 반환 151.101.1.69되고 어느 것이 gbnjk.com반환되는지입니다 error: domain not found.

답변1

또 다른 DNS 쿼리 도구는 dig기본적으로 매우 장황하지만 그렇게 사용하면 dig +short한 줄에 하나씩만 답변을 얻을 수 있습니다.

$ dig +short unix.stackexchange.com
151.101.65.69
151.101.193.69
151.101.129.69
151.101.1.69

$ dig +short www.latimes.com
32975.edgekey.net.
e11929.e12.akamaiedge.net.
2.22.63.16
2.22.63.11

요청한 도메인이 존재하지 않으면 아무것도 반환되지 않습니다.

$ dig +short gbnjk.com
$

답변2

예, 여러 가지가 있습니다.

ISC 도구 및 스타일host

ISC의 BIND에 포함된 도구는 host및 입니다 dig. dig여기의 다른 답변에서 짧은 패턴을 포함하여 실제로 작동하는 것을 볼 수 있습니다 .

host그러나 ISC가 유일한 도구 소스 는 아닙니다 .

  • Knot DNS에는 자체 khost도구가 제공됩니다. 데비안에서는 다음으로 패키지되어 있습니다.knot-host패키지또한 액세스할 수 있도록 심볼릭 링크도 제공합니다 host.
    % 호스트 unix.stackexchange.com.
    unix.stackexchange.com. IPv4 주소는 151.101.1.69입니다.
    unix.stackexchange.com. IPv4 주소는 151.101.65.69입니다.
    unix.stackexchange.com. IPv4 주소는 151.101.129.69입니다.
    unix.stackexchange.com. IPv4 주소는 151.101.193.69입니다.
    unix.stackexchange.com에서 호스팅됩니다. AAAA 기록 없음
    unix.stackexchange.com에서 호스팅됩니다. MX 레코드 없음
    %
  • host사용할 수 있는 도구를 제공했습니다.djbwares 도구 세트, 나는 데비안 패키지로도 제공합니다 djbdns-host. 이는 기본 djbdns 쿼리 도구를 둘러싼 얇은 래퍼입니다. host앞에서 본 것처럼 경우에 따라 여러 트랜잭션을 수행하는 Knot 및 ISC 도구와는 달리 항상단 하나DNS 트랜잭션.
    % 호스트 unix.stackexchange.com.
    1 unix.stackexchange.com:
    104바이트, 1+4+0+0 레코드, 응답, 오류 없음
    쿼리: 1 unix.stackexchange.com
    답변: unix.stackexchange.com 300A 151.101.1.69
    답변: unix.stackexchange.com 300A 151.101.65.69
    답변: unix.stackexchange.com 300A 151.101.129.69
    답변: unix.stackexchange.com 300A 151.101.193.69
    %
    % 호스트 gbnjk.com
    1gbnjk.com:
    27바이트, 1+0+0+0 레코드, 응답, 권한, nxdomain
    문의 : 1gbnjk.com
    %

다니엘 J. 번스타인 도구

기본 djbdns 쿼리 도구에는 dnsq, dnsqr, dnsqrx, dnsname, dnsnamex, dnsmx, dnsip, dnsipqdnstxt가 포함됩니다 dnstrace. 세 가지 범주로 나누어지기 때문에 그 수가 많습니다.

  • 사람이 읽을 수 있는 출력을 생성하는 도구:dnsq,dnsqr,dnsqrx
  • 기계가 분석할 수 있는 출력을 생성하는 도구:dnsname,dnsnamex,dnsmx,dnsip,dnsipq,dnstxt
  • dnstrace출력은 기계로 구문 분석 가능하며 일반적으로 전달됩니다.dnstracesort, 기계가 분석할 수 있는 콘텐츠를 사람이 읽을 수 있는 콘텐츠로 변환하는 필터

위에서 언급한 대로 사람이 읽을 수 있는 도구는 단순히 DNS 트랜잭션을 수행하고 관련 DNS 서버의 응답 내용을 인쇄합니다(특정 유형의 DNS 서버에 대해 다양한 도구가 맞춤화되어 있음).콘텐츠또는대리인).

% dnsqr ns stackexchange.com.
2.stackexchange.com:
170바이트, 1+4+0+0 레코드, 응답, 오류 없음
쿼리: 2 stackexchange.com
답변: stackexchange.com 170156 NS ns-1029.awsdns-00.org
답변: stackexchange.com 170156 NS ns-925.awsdns-51.net
답변: stackexchange.com 170156 NS ns-cloud-d1.googledomains.com
답변: stackexchange.com 170156 NS ns-cloud-d2.googledomains.com
%
% dnsq ns stackexchange.com. ns-925.awsdns-51.net. /package/admin/djbwares [pts/4.10022.1]
2.stackexchange.com:
170바이트, 1+4+0+0 레코드, 응답, 신뢰할 수 있음, 오류 없음
쿼리: 2 stackexchange.com
답변: stackexchange.com 172800 NS ns-1029.awsdns-00.org
답변: stackexchange.com 172800 NS ns-925.awsdns-51.net
답변: stackexchange.com 172800 NS ns-cloud-d1.googledomains.com
답변: stackexchange.com 172800 NS ns-cloud-d2.googledomains.com
%
% dnsqr a gbnjk.com
1gbnjk.com:
27바이트, 1+0+0+0 레코드, 응답, 권한, nxdomain
문의 : 1gbnjk.com
%

쉘 스크립트와 함께 사용하도록 설계된 기계 구문 분석 가능한 도구입니다. "ipv4 주소 있음" 또는 "답변:"과 같은 추가 항목으로 출력을 복잡하게 만들지 않으며 출력이 잘 정의되어 있습니다. dnsipq예를 들어 항상 각 입력 이름에 대해 한 줄(공백일 수 있음)을 인쇄하거나 오류 코드와 함께 종료합니다. dnsnamex또 다른 예는 각 입력 IP 주소(비어 있거나 공백으로 구분된 여러 이름을 포함할 수 있음)에 대해 항상 한 줄을 인쇄하는 것입니다.

% dnsip unix.stackexchange.com. unix.stockexchange.com.
151.101.129.69 151.101.193.69 151.101.1.69 151.101.65.69

%
% dnsnamex `dnsip unix.stackexchange.com. `




%
% dnsmx unix.stackexchange.com.
0 unix.stackexchange.com
%
% dnsmx stackexchange.com.
1 aspmx.l.google.com
5 alt1.aspmx.l.google.com
5 alt2.aspmx.l.google.com
10 alt3.aspmx.l.google.com
10 alt4.aspmx.l.google.com
%

보시다시피, 특히 DNS 조회를 수행하는 데 사용됩니다.특정 작업을 위해특정 유형의 DNS 트랜잭션을 수행하는 것이 아닙니다. dnsmx예를 들어, MTS가 SMTP 메시지를 전달하고 여러 DNS 트랜잭션에서 정보가 수집되는 시도 순서를 기계가 분석할 수 있는, 한 줄에 하나의 결과로, 공백으로 구분된 형식으로 보고합니다.

NLlabs도구

국립 연구소drill LDNS에서dig(다른 답변에서 말한 "언바운드"와는 달리) 사용자 설명서에 따라 "더 많은 정보"를 인쇄하는 것을 목표로 합니다. 이에 상응하는 dig짧은 모드 가 없습니다 . 일반 모드에서와 마찬가지로 dig출력은 ISC의 "영역 파일" 형식이며 많은 수의 주석 행을 포함하므로 프로그래밍 방식으로 처리하려면 전체 "영역 파일" 구문 분석기가 필요합니다. 따라서 기계가 분석할 수 있는 짧은 출력을 위한 도구가 아닙니다.

명령줄 구문 분석이 다소 엉성합니다.

% 연습, '좋아하는 한' 여기에 + 짧은 콘텐츠가 있으면 무엇이든 가능합니다! ' unix.stackexchange.com.
;; ->>헤더<<- opcode: QUERY, rcode: NOERROR, id: 47385
;;플래그: qr rd ra; 쿼리: 1, 답변: 4, 권한: 0, 추가: 0
;;질문 부분:
;; unix.stackexchange.com. 안에

;;답변 부분:
unix.stackexchange.com. 151.101.193.69에서 277
unix.stackexchange.com. 151.101.129.69에서 277
unix.stackexchange.com. 151.101.65.69에서 277
unix.stackexchange.com. 151.101.1.69에서 277

;;전원 부분:

;;추가 부분:

;;쿼리 시간: 145밀리초
;;서버: 127.0.0.1
;;시간 : 2018년 5월 27일 일요일 10:52:12
;;MSG 크기 rcvd: 104
%

이런 종류의 작업은 유형 또는 도메인 이름이 명령의 첫 번째 인수인지 기억하지 못하는 사람들에게 도움이 될 수 있지만 스크립트에서 수행하려는 작업과는 반대입니다. 사람들은 오용이 오류가 되는 매개변수의 순서가 정의되고 문서화된 잘 정의된 인터페이스를 원합니다.실수이것은 아무것도 추측하려는 시도가 아닙니다.의미는달리기.

"그냥 DNS"

다른 답변에서 언급했듯이 "단지 DNS"를 원하는지에 따라 다릅니다.

  • 기계가 구문 분석할 수 있는 출력이 있는 스크립트에서 도구를 사용하려는 경우 출력결과정보만, djbdns 도구 세트를 확인하세요.
  • 그냥 실행되는 도구를 원하는 경우단 하나hostDNS 트랜잭션은 사람이 읽을 수 있는 출력으로 제공됩니다. djbdns 도구 세트의 도구나 도구를 확인하세요 .
  • 그렇지 않은 경우 위의 내용을 모두 확인하세요.

다음 중 하나를 참고하세요.일부단점은 nslookup일부 Unices를 포함한 여러 운영 체제에서 다음을 수행하도록 향상되었다는 것입니다.단순한 DNS 조회 그 이상. nslookup저와 다른 사람들이 거의 20년 동안 설명했듯이 이것은 심각한 결함이 있는 도구입니다. 전적으로해서는 안 된다"공통 도구", 수년간의 노력을 통해 이제는아니요.

추가 읽기

답변3

"그냥"이 정확히 무엇을 의미하는지에 따라 다릅니다(어떤 기준과 비교하여?). host(bind-tools 또는 bin-utils 패키지에서) 출력은 매우 간결하지만 여전히 사람이 읽을 수 있는 텍스트가 있습니다.

[0 1016 8:16:41] ~ % host unix.stackexchange.com
unix.stackexchange.com has address 151.101.129.69
unix.stackexchange.com has address 151.101.193.69
unix.stackexchange.com has address 151.101.65.69
unix.stackexchange.com has address 151.101.1.69

"문제"의 일부는 DNS 서버 오류, CNAME 항목(예: "linux.example.com은 모든 unix . example.com 네, 거기 가서 한 번 보세요."):

[0 1018 8:17:36] ~ % host www.latimes.com
www.latimes.com is an alias for 32975.edgekey.net.
32975.edgekey.net is an alias for e11929.e12.akamaiedge.net.
e11929.e12.akamaiedge.net has address 23.219.130.10
e11929.e12.akamaiedge.net has address 23.219.130.8

더 있을 수도 있습니다.

답변4

일반적으로 사용되는 간단한 도구는 다음과 같습니다.

$ host unix.stackexchange.com
unix.stackexchange.com has address 151.101.1.69
unix.stackexchange.com has address 151.101.65.69
unix.stackexchange.com has address 151.101.129.69
unix.stackexchange.com has address 151.101.193.69

$  nslookup unix.stackexchange.com
Server:         127.0.0.1
Address:        127.0.0.1#53

Non-authoritative answer:
Name:   unix.stackexchange.com
Address: 151.101.1.69
Name:   unix.stackexchange.com
Address: 151.101.65.69
Name:   unix.stackexchange.com
Address: 151.101.129.69
Name:   unix.stackexchange.com
Address: 151.101.193.69

호스트는 바인딩9-host 패키지에 바인딩되지 않은 ISC에서 왔습니다. dig와 nslookup은 모두 dnsutils 패키지에서 제공됩니다. DNS를 더 자세히 분석하기 위해 다른 도구가 필요한 경우 다음을 참조하세요 dig.제본). 옵션은 짧은 답변을 제공합니다 +short(자세한 답변을 보려면 삭제하세요).

$ dig +short unix.stackexchange.com
151.101.1.69
151.101.65.69
151.101.129.69
151.101.193.69

또는 드릴(에서속박되지 않은):

$ drill @1.1.1.1 unix.stackexchange.com
;; ->>HEADER<<- opcode: QUERY, rcode: NOERROR, id: 48240
;; flags: qr rd ra ; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;; unix.stackexchange.com.      IN      A

;; ANSWER SECTION:
unix.stackexchange.com. 250     IN      A       151.101.1.69
unix.stackexchange.com. 250     IN      A       151.101.65.69
unix.stackexchange.com. 250     IN      A       151.101.129.69
unix.stackexchange.com. 250     IN      A       151.101.193.69

;; AUTHORITY SECTION:

;; ADDITIONAL SECTION:

;; Query time: 3 msec
;; SERVER: 1.1.1.1
;; WHEN: Sun May 27 10:16:27 2018
;; MSG SIZE  rcvd: 104

트러스트 앵커 설정 방법을 모른다면 신중하게 파고들고, 특히 드릴링 답변을 신뢰하십시오. 두 도구 모두 단순하지 않습니다.

관련된가능하다면 드릴하고, 해야 한다면 파고, 해야 한다면 nslookup을 수행하세요.

관련 정보