DNSLint 유틸리티에 대한 설명

이 문서에서는 DNSLint 유틸리티 및 해당 구문에 대해 설명합니다.

적용 대상: Windows Server 2012 R2
원래 KB 번호: 321045

요약

DNSLint는 일반적인 DNS(Domain Name System) 이름 확인 문제를 진단하는 데 도움이 되는 Microsoft Windows 유틸리티입니다.

Microsoft 지원 파일을 다운로드하는 방법에 대한 자세한 내용은 다음 문서를 참조하세요.

119591 온라인 서비스에서 Microsoft 지원 파일을 가져오는 방법

Microsoft는 이 파일에서 바이러스를 검사했습니다. Microsoft는 파일이 게시된 날짜에 사용할 수 있는 최신 바이러스 감지 소프트웨어를 사용했습니다. 파일은 파일에 대한 무단 변경을 방지하는 데 도움이 되는 보안 강화 서버에 저장됩니다.

DNSLint 함수

DNSLint에는 DNS 레코드를 확인하고 HTML 보고서를 생성하는 세 가지 함수가 있습니다. 세 가지 함수는 다음과 같습니다.

  • dnslint /d: "절름발이 위임" 및 기타 관련 DNS 문제의 잠재적 원인을 진단합니다.
  • dnslint /ql: 여러 DNS 서버에서 사용자 정의 DNS 레코드 집합을 확인합니다.
  • dnslint /ad: Active Directory 복제에 특별히 사용되는 DNS 레코드를 확인합니다.

DNSLint는 명령줄 유틸리티입니다. 구문은 다음과 같습니다.

dnslint /d domain_name | /ad [LDAP_IP_address] | /ql input_file [/c [smtp,pop,imap]] [/no_open] [/r report_name] [/t] [/test_tcp] [/s DNS_IP_address] [/v] [/y]  

/dDNSLint를 실행할 때 , /ad또는 /ql 를 지정합니다. 다른 스위치는 선택 사항입니다.

스위치를 /d 사용하여 도메인 이름 테스트를 요청합니다. 이 스위치는 절름발이 위임 문제를 해결할 때 유용합니다.

  • 테스트할 도메인 이름을 지정합니다.
  • 스위치와 함께 /ad 스위치를 /d 사용할 수 없습니다.

스위치를 /ad 사용하여 Active Directory 테스트를 요청합니다.

  • 스위치는 /ad AD 포리스트 복제에 사용되는 DNS 레코드를 확인합니다.

  • 기본적으로 로컬 시스템의 LDAP 서비스가 사용됩니다.

  • 원격 LDAP 서버 IP 주소(선택 사항)를 지정할 수 있습니다.

  • 유효한 IP 주소만 허용됩니다. 이름은 허용되지 않습니다.
    일반적으로 Active Directory 도메인 컨트롤러입니다.

  • 옵션과 함께 스위치를 /ad/s 사용합니다. 여기서 /s AD 포리스트 루트의 _msdcs 영역에 대해 신뢰할 수 있는 DNS 서버의 IP 주소를 지정합니다.

  • 또는 /c와 스위치 /d/ad 사용할 수 없습니다.

스위치를 /ql 사용하여 목록에서 DNS 쿼리 테스트를 요청합니다.

  • 스위치는 /ql 텍스트 입력 파일에 지정된 DNS 쿼리를 보냅니다.

  • 입력 파일의 경로와 이름을 지정합니다.

  • 스위치는 /ql A, PTR, CNAME, SRV 및 MX 레코드 쿼리를 지원합니다.

  • 다음 명령을 실행하여 샘플 입력 파일을 만듭니다.

    dnslint /ql autocreate  
    
  • , /ad또는 /c와 스위치/d/ql 사용할 수 없습니다.

참고

  • , /ad및 를 /ql 함께 사용할 /d수 없습니다.
  • 또는 /ql/ad 함께 사용할 /c 수 없습니다.
  • 를 사용하는 /ad경우 도 지정 /s해야 합니다.

선택적 스위치

을 사용하여 /c 전자 메일 서버에서 연결 테스트를 요청합니다.

  • 스위치는 찾은 /c 전자 메일 서버에서 SMTP(Simple Mail Transfer Protocol), POP 및 IMAP 포트를 테스트합니다.
  • 기본적으로 세 가지(SMTP, POP 및 IMAP 포트)가 모두 테스트됩니다. 하나 또는 조합을 지정할 수 있습니다. 이렇게 하려면 쉼표로 구분된 목록 /c pop,imap,smtp를 사용합니다.

보고서가 자동으로 열리지 않도록 하려면 를 사용합니다 /no_open. 스위치는 /no_open 스크립트에서 유용합니다.

스위치를 /r 사용하여 생성된 보고서 파일의 이름을 지정합니다.

  • .htm 파일 이름 확장명은 보고서 이름에 자동으로 추가됩니다.
  • 보고서는 HTML 형식으로 만들어집니다. 기본 이름은 Dnslint.htm
  • 기본 위치는 현재 디렉터리입니다.

스위치를 /s 사용하여 InterNIC whois 조회를 무시합니다.

  • InterNIC를 쿼리하는 대신 DNS 서버 IP 주소를 지정할 수 있습니다.
  • 스위치는 /s 제공된 IP 주소를 사용하여 DNS 레코드 확인을 시작합니다.
  • 유효한 IP 주소만 허용됩니다. 이름은 허용되지 않습니다.
  • 이 옵션을 사용하여 InterNIC에서 지원되지 않는 도메인 이름을 검사.
  • 를 사용하는 /ad경우 를 사용하여 /s AD 포리스트의 루트 도메인에서 _msdcs 하위 도메인에 대해 신뢰할 수 있는 DNS 서버를 지정해야 합니다.
  • 를 사용하는 /ad경우 localhost를 실행 /s 하여 로컬 시스템이 AD 테스트에 있는 레코드를 resolve 수 있는지 여부를 확인할 수 있습니다.

를 사용하여 /t 텍스트 파일에 대한 출력을 요청합니다.

  • 텍스트 파일은 .htm 보고서와 동일한 이름을 공유하지만 파일 이름 확장명은 .txt.
  • .htm 보고서 파일과 동일한 디렉터리에서 만든 텍스트 파일입니다.

를 사용하여 /test_tcp TCP 포트 53을 테스트하도록 요청합니다.

  • 기본적으로 UDP 포트 53만 테스트됩니다.
  • 옵션은 /test_tcp TCP 포트 53이 쿼리에 응답하는지 여부를 확인합니다.
  • 옵션은 /test_tcp 와 함께 /ql사용할 수 없습니다.

를 사용하여 /v 화면에 자세한 출력을 요청합니다.

를 사용하여 /y 메시지를 표시하지 않고 기존 보고서 파일을 덮어씁 수 있습니다. 스위치는 /y 스크립트에서 유용합니다.

필수 매개 변수

DNSLint를 실행하려면 다음 세 가지 매개 변수 중 하나를 사용해야 합니다.

  1. 도메인 이름 테스트에 사용 /d
  2. Active Directory 복제 테스트에 사용합니다 /ad .
  3. 쿼리 목록에 지정된 테스트에 사용합니다 /ql .

/d (도메인 이름 테스트) 스위치를 사용하여 특정 DNS 도메인 이름을 테스트합니다. 이 스위치를 사용하여 "절름발이 위임" 문제 및 기타 관련 DNS 문제를 진단할 수 있습니다. 테스트하는 도메인 이름은 다음과 같습니다.

  • 인터넷에서 사용하도록 등록된 이름입니다.
  • 프라이빗 네임스페이스에 사용되는 이름입니다.

프라이빗 네트워크에서 도메인 이름 또는 2개 이상의 수준 깊이인 인터넷에 등록된 도메인 이름을 테스트하는 경우 이 옵션을 사용해야 /s 합니다.

/ad (Active Directory 테스트) 스위치를 사용하여 Active Directory 포리스트 복제를 담당하는 DNS 레코드를 테스트합니다. 전환 후 /ad 이 테스트에 사용되는 LDAP 서버의 IP 주소를 지정합니다. 일반적으로 Active Directory 도메인 컨트롤러입니다. DNSLint가 도메인 컨트롤러에서 실행되는 경우 이 스위치의 기본값은 127.0.0.1이므로 IP 주소가 필요하지 않습니다.

/ql (쿼리 목록 테스트) 스위치를 사용하여 텍스트 입력 파일에 지정된 DNS 레코드를 테스트합니다. 전환 직후 텍스트 입력 파일의 전체 경로와 이름을 지정합니다. 를 실행 dnslint /ql autocreate 하여 In-dnslint.txt 라는 샘플 텍스트 입력 파일을 생성합니다. 이 파일에는 필요한 형식에 대한 설명이 포함되어 있습니다. 이 파일을 템플릿으로 사용하여 다른 입력 파일을 만들 수 있습니다.

추가 선택적 스위치

(자세한 정보 표시) 스위치는 /v "자세한 정보 표시 모드"를 켭니다. 이 스위치를 켜면 DNSLint는 데이터를 화면에 수집하기 위해 수행하는 단계를 출력합니다. 이 출력을 파일로 보낼 수 있습니다. 예를 들면 dnslint /v /d msn.com와 같습니다. 기본적으로 DNSLint에서 생성하는 보고서의 이름은 Dnslint.htm. (보고서) 스위치를 /r 사용하면 DNSLint에서 생성하는 보고서 파일의 이름과 위치를 지정할 수 있습니다. 테스트된 도메인 이름 또는 DNS 서버와 동일한 이름을 보고서 파일에 지정할 수 있습니다. 보고서가 HTML 형식이므로 ".htm" 파일 이름 확장명은 보고서 이름에 자동으로 추가됩니다.

기본적으로 DNSLint는 보고서 파일의 .htm 파일과 연결된 모든 프로그램을 사용하여 보고서 파일이 생성된 후 자동으로 열려고 시도합니다. 일반적으로 Microsoft 인터넷 Explorer .htm 확장과 연결됩니다. DNSLint를 사용하여 보고서 형식을 HTML 이외의 항목으로 변경할 수 있는 방법은 없습니다.

보고서 파일이 기록되는 위치를 정의하려면 보고서 파일의 전체 경로와 이름을 지정합니다. DNSLint는 로컬 드라이브와 UNC(범용 명명 규칙) 경로를 모두 지원합니다. 예를 들어 명령은 dnslint /d msn.com /r c:\reports\reskit C:\Reports 폴더에 Reskit.htm 라는 보고서를 만듭니다. 이 명령은 dnslint /d mydom.local /r \\\server1\reports\mydom 보고서 공유에서 server1이라는 원격 시스템에 보고서를 만듭니다. 보고서 이름이 Mydom.htm.

(텍스트) 스위치를 /t 지정하면 DNSLint에서 텍스트 보고서와 HTML 보고서를 생성합니다. 텍스트 보고서는 파일 이름 확장명 .txt 제외하면 .htm 보고서와 동일한 이름을 사용합니다. 파일은 .htm 파일과 동일한 폴더에 만들어집니다. 예를 들어 명령은 dnslint /d msn.com /r c:\reports\reskit /t C:\Reports 폴더에 두 개의 보고서를 만듭니다. 한 보고서는 Reskit.htm 호출되고 다른 보고서는 Reskit.txt 호출됩니다.

기본적으로 DNSLint에서 생성하려는 보고서 파일과 이름이 같은 보고서 파일이 대상 폴더에 이미 있음을 감지하면 DNSLint에서 파일을 덮어쓰라는 메시지를 표시합니다. 옵션을 사용하면 /y DNSLint에서 사용 권한을 묻는 메시지를 표시하지 않고 기존 보고서 파일을 덮어쓸 수 있습니다. 이 옵션을 사용하면 .htm 파일과 선택적 .txt 파일을 모두 덮어씁니다.

명령은 dnslint /y /d msn.com /r c:\reports\reskit /t C:\Reports 폴더에 두 개의 보고서를 만듭니다. 한 보고서는 Reskit.htm 호출되고 다른 보고서는 Reskit.txt 호출됩니다. 메시지를 표시하지 않고 기존 보고서 파일을 덮어씁니다.

이 스위치는 /no_open DNSLint가 생성된 후 보고서를 자동으로 열지 못하게 합니다. 이 옵션은 다음을 수행하지 않으려는 경우 스크립트에서 DNSLint를 사용할 때 유용합니다.

  • 보고서를 즉시 검토합니다.
  • DNSLint가 실행된 시스템의 보고서를 검토합니다.

예를 들어 명령은 dnslint /y /d msn.com /no_open 사용자에게 메시지를 표시하지 않고 동일한 이름으로 기존 보고서를 덮어쓰는 Dnslint.htm 라는 보고서를 생성합니다. DNSLint는 완료되면 보고서를 자동으로 열지 않습니다.

/test_tcp (테스트 TCP 포트 53) 옵션을 사용하여 가 사용될 때 /d TCP 포트 53을 테스트하도록 요청합니다. 오늘날 인터넷의 많은 DNS 서버는 해당 포트에 대한 공격을 방지하기 위해 TCP 포트 53에서 DNS 쿼리를 허용하지 않습니다. 기본적으로 DNSLint가 실행될 때 UDP 포트 53만 테스트됩니다. /test_tcp 옵션을 지정하면 DNSLint에서 TCP로 단일 DNS 쿼리를 보내고 응답이 수신되었는지 여부를 보고합니다.

/ad에서 /test_tcp 옵션을 /d 사용할 수 있습니다. 그러나 또는 /ad/s localhost 조합과 함께 /ql 옵션을 사용할 /test_tcp 수 없습니다. 함수를 /ql 사용하면 TCP 포트 53을 입력 파일에서 직접 테스트할 수 있습니다. 함수는 /ad /s localhost 로컬로 구성된 DNS 서버가 Active Directory 포리스트 복제에 사용되는 DNS 레코드를 resolve 수 있는지 여부를 테스트합니다. 대신 ip_addr 사용하여 /ad/s TCP 포트 53 연결을 테스트할 수 있습니다. 여기서 ip_addr Active Directory 도메인의 루트에 있는 _msdcs 영역에 대해 신뢰할 수 있는 DNS 서버의 IP 주소입니다.

예: dnslint /d microsoft.com /v /test_tcp

(연결 테스트) 스위치는 /c DNSLint가 DNS 서버에서 지정된 도메인 이름을 검사하는 동안 찾은 모든 전자 메일 서버에서 잘 알려진 전자 메일 포트를 테스트할 것을 요청합니다. SMTP, POST Office 프로토콜(POP 버전 3) 및 IMAP 버전 4(인터넷 메시지 액세스 프로토콜)가 지원됩니다. 기본적으로 스위치를 /c 지정하면 DNSLint는 각 전자 메일 서버에서 찾은 세 개의 포트 모두에 연결하려고 시도합니다.

  • SMTP용 TCP 포트 25
  • POP용 TCP 포트 110
  • IMAP용 TCP 포트 143

DNSLint는 각 포트가 "수신 대기 중", "수신 대기 안 함" 또는 "응답 없음"에 있는 상태를 보고합니다. DNSLint에서 포트가 수신 대기 중임을 발견하면 포트의 응답도 반환됩니다. 예를 들어 SMTP 포트가 수신 대기하는 경우 일반적으로 다음 예제와 같이 SMTP 프로토콜 사양과 일치하는 응답을 반환합니다.

220 mailsrv.contoso.com Microsoft ESMTP MAIL Service, 버전: 5.0.2195.3705 준비 날짜, 2002년 5월 13일 17:08:36 -0700

포트가 "수신 대기 안 함"으로 보고되면 쿼리 중인 전자 메일 서버가 다시 설정 플래그가 설정된 TCP 패킷으로 응답했음을 나타냅니다. 또한 포트에서 수신 대기하는 서비스 또는 프로그램이 없음을 나타냅니다.

대상 전자 메일 서버가 연결 시도에 응답하지 않으면 "응답 없음"이 보고됩니다. 대상 서버가 작동하고 실행 중인 경우 포트가 필터링되고 있음을 나타냅니다.

  • 대상 서버입니다.
  • DNSLint를 실행하는 클라이언트와 대상 서버 사이의 어딘가에 있습니다.

명령은 dnslint /y /v /c /d msn.com 사용자에게 메시지를 표시하지 않고 동일한 이름의 기존 보고서를 덮어쓰는 Dnslint.htm 라는 보고서를 생성합니다. /c 옵션이 지정되었으므로 표준 DNSLint 보고서의 맨 아래에 추가 섹션이 추가됩니다.

네트워크 연결 테스트
전자 메일 서버: smtp-gw-4.msn.com
IP 주소: 207.46.181.13

SMTP 응답:
220 cpimssmtpa18.msn.com Microsoft ESMTP MAIL Service, 버전:
5.0.2195.4905 화요일, 14 5월 2002 09:26:06 -0700

POP 응답: 응답 없음(필터링 가능)

IMAP 응답: 응답 없음(필터링 가능)

참고

하나 이상의 POP 서버가 응답하지 않았습니다.
하나 이상의 IMAP 서버가 응답하지 않았습니다.

대상 전자 메일 서버가 해당 전자 메일 포트 중 하나에서 연결 시도에 응답하지 않는 경우 DNSLint는 연결을 세 번 다시 시도합니다. TCP 클라이언트에 대한 표준 동작입니다. DNSLint가 "응답 없음"이 있음을 나타내기 전에 세 번의 별도 TCP 연결 시도 시간이 초과되기를 기다립니다. 이 프로세스는 보고서 완료 속도를 늦출 수 있습니다. DNSLint 작업을 최적화하려면 항상 세 포트를 모두 확인하는 대신 검사 전자 메일 포트 또는 포트를 지정할 수 있습니다.

기본적으로 옵션을 지정하면 /c 3개의 TCP 포트(25, 110, 143)가 모두 선택됩니다. 그러나 옵션 다음에 검사 포트를 /c 지정할 수 있습니다. 옵션 바로 뒤에 쉼표로 구분된 목록을 지정합니다 /c . 유효한 포트만 지정합니다smtp. , , pop. imap 이러한 세 포트의 조합이 작동합니다. 예를 들어 명령은 dnslint /d contoso.com /c smtp SMTP 포트(TCP 포트 25)만 선택해야 한다고 지정합니다.

명령 dnslint /d contoso.com /c pop, smtp는 SMTP 포트(TCP 포트 25) 및 POP 포트(TCP 포트 110)만 선택해야 한다고 지정합니다.

명령 dnslint /d contoso.com /c imap, pop은 IMAP 포트(TCP 포트 143) 및 POP 포트(TCP 포트 110)만 선택해야 한다고 지정합니다.

/ad 함수와 /s 함께 (서버) 스위치를 /d 사용할 수 있습니다. 스위치에는 /s 여러 가지 목적이 있지만 한 가지 유형의 데이터, 즉 DNS 서버의 유효한 IP 주소만 사용합니다(한 가지 예외 제외).

/s 지정/d하면 옵션은 DNSLint가 기본적으로 수행하는 InterNIC Whois 조회를 무시합니다. 따라서 DNSLint는 인터넷의 두 번째 수준 도메인보다 더 깊은 프라이빗 네트워크 및 도메인 이름에서 테스트를 실행할 수 있습니다. DNSLint는 InterNIC에서 지원되지 않는 도메인 이름을 테스트할 수도 있습니다. 이 문서가 작성되었을 때 InterNIC는 , , , .coop.int.com.net.edu.museum.info.org도메인.biz에 대한 조회를 지원 Whois 했습니다.

/s 사용하는 /ad경우 스위치는 Active Directory 포리스트 복제에 사용되는 DNS 레코드가 등록된 하위 도메인에 대해 신뢰할 수 있는 DNS 서버의 IP 주소를 지정하는 데 사용됩니다. 일반적으로 Active Directory 포리스트의 루트 아래에 있는 _msdcs 하위 도메인입니다. 예를 들어 Active Directory 포리스트의 루트가 인 myad.contoso.com경우 이 도메인을 호스트하는 DNS 서버도 영역에 대해 _msdcs.myad.contoso.com 신뢰할 수 있습니다. 영역에서 Active Directory 복제에 사용되는 DNS 레코드가 등록됩니다. 또는 영역이 _msdcs.myad.contoso.com 다른 DNS 서버에 위임될 수 있습니다. 그러나 DNS 인프라가 설계 /s 되었지만 이 옵션은 영역에 대해 신뢰할 _msdcs.myad.contoso.com 수 있는 DNS 서버를 지정하는 데 사용됩니다.

옵션은 /s 유효한 IP 주소를 지정해야 합니다. 이 규칙의 유일한 예외는 다음 조합입니다. dnslint /ad /s localhost

"localhost"는 유효한 IP 주소가 아닙니다. 이 매개 변수를 /ad /s 조합으로 지정하면 DNSLint는 로컬 시스템(DNSLint을 실행하는 시스템) 기능을 테스트하여 Active Directory 포리스트 복제에 사용되는 DNS 레코드를 resolve. 로컬 시스템이 Active Directory 포리스트 복제에 사용되는 DNS 레코드를 resolve 수 있는지 확인하기 위해 재귀 DNS 쿼리가 로컬 시스템의 구성된 DNS 서버로 전송됩니다. 특정 도메인 컨트롤러에서 Active Directory 복제 문제를 해결할 때 유용할 수 있습니다.

일반적으로 이 프로세스 중에 로컬 시스템의 구성된 모든 DNS 서버가 쿼리되는 것은 아닙니다. 기본 DNS 클라이언트 확인자 동작이 관찰됩니다. 로컬 시스템의 DNS 서버 목록 맨 위에 있는 DNS 서버가 응답하지 않으면 목록의 다음 서버가 사용됩니다.