メイン コンテンツに進む
  • すばやく簡単にご注文が可能
  • 注文内容の表示、配送状況をトラック
  • 会員限定の特典や割引のご利用
  • 製品リストの作成とアクセスが可能
  • 「Company Administration(会社情報の管理)」では、お使いのDell EMCのサイトや製品、製品レベルでのコンタクト先に関する情報を管理できます。

NetWorker: 이름 해석 문제 해결 모범 사례

概要: NetWorker의 DNS(Domain Name Space) 관련 문제에 대한 문제 해결 가이드입니다.

この記事は自動翻訳されたものである可能性があります。品質に関するフィードバックがある場合は、このページの下部にあるフォームを使用してお知らせください。

文書の内容


手順

NetWorker는 이름 해석에 따라 달라집니다. 이름 해석이 올바르지 않고 완전히 일관되지 않으면 NetWorker의 여러 작업에서 문제가 발생할 수 있습니다. NetWorker는 잠재적인 기밀 데이터를 관리하므로 상호 작용하는 호스트의 ID를 다양한 방법으로 확인해야 합니다.
 
NetWorker의 이름 해석이 불완전하여 NetWorker에서 증상이 나타날 수 있습니다.
  • 정방향 또는 역방향 이름 조회 문제를 나타내는 오류 메시지입니다.
  • 백업 중에는 클라이언트를 검사할 수 없습니다.
  • 클라이언트가 서버에 수동으로 저장하거나 복구할 수 없습니다.
  • 스토리지 노드 디바이스의 클론 생성 또는 액세스에 문제가 있습니다.
  • 탐색 또는 미디어 데이터베이스 레코드 문제입니다.
  • 서버 또는 스토리지 노드가 시작 시 또는 정상 작동 중에 응답하지 않습니다.
  • 이름이 잘못되었거나 중첩된 인덱스 디렉토리입니다.
  • 잘못 구성된 클라이언트 오류입니다.
이름 해석은 다음과 같은 다양한 메커니즘과 다양한 수준에서 수행됩니다.
  • NetWorker 이름 캐시
  • 로컬 호스트 해석기 캐시
  • 로컬 호스트 파일 항목
  • DNS 서버 조회


이름 해석 방법


1. NetWorker 캐싱: NetWorker는 내부 이름 캐시를 유지하며 서비스를 재시작하지 않고 이름 해석 문제를 해결하기 위해 수행된 환경 변경 사항을 반영하지 않는 경우가 있습니다. NetWorker에는 모든 클라이언트 인스턴스에 대해 전역으로 사용되는 구성 가능한 필드인 'Aliases'도 있습니다. 이 필드는 여러 유형의 문제를 방지하기 위해 해당 클라이언트 인스턴스에 대해 해석할 수 있는 모든 이름을 반영해야 합니다. 필요한 이름이 NetWorker의 내부 캐시에 있으면 해당 캐시에서 사용되며 호스트 해석기 캐시는 참조되지 않습니다. NetWorker 서버 데몬(nsrd)에는 해석된 이름 캐시를 daemon.raw에 덤프하거나, 캐시를 플러시하거나, 이름을 플러시하고 다시 해석할 수 있는 기능이 있습니다.
  • dbgcommand -n nsrd PrintDnsCache=1(daemon.raw에 덤프)
  • dbgcommand -n nsrd FlushDnsCache=1(플러시)
  • dbgcommand -n nsrd FlushDnsCache=9(플러시 및 해석)
  • 위 명령의 경우 "-n process name" 또는 "-p PID"를 사용할 수 있습니다. PID를 사용하려면 먼저 다른 명령을 실행하여 PID를 가져와야 합니다. 예를 들어 "ps -ef | grep nsr"(Linux) 또는 "tasklist | findstr nsr"(Windows) 
2. 해석기 캐시: 모든 호스트와 운영 체제에는 호스트 파일이나 DNS 서버에 의존하지 않고 호스트 해석 및 속도를 지원하는 로컬 해석기 캐시가 있습니다. 이 캐시는 일반 운영 체제 이름 해석 규칙에 따라 다음으로 검사되며 호스트 레코드가 있는 경우(오래되었거나 잘못되었더라도) 다른 데이터 소스를 쿼리하기 전에 사용됩니다. 해석기 캐시 항목은 첫 번째 '성공' 확인 시도 시 캐시에 입력되며 미리 정해진 시간 동안 유지됩니다. 일부 운영 체제는 해석기 캐시 콘텐츠를 표시할 수 있으며(예: Windows 호스트는 ipconfig/displaydns를 실행할 수 있음) 모든 운영 체제는 이를 강제로 지우거나 플러시하는 메커니즘을 가지고 있습니다.
  • Linux에서 DNS를 플러시하는 것은 설치된 Linux 배포 및 패키지에 따라 다를 수 있습니다. 공급업체 설명서를 참조하십시오. 
  • Windows: ipconfig /flushdns
3. 호스트 파일: 호스트 해석을 위한 레거시 메커니즘은 IP 주소를 명시적으로 입력한 다음 해당 주소로 해석하려는 이름을 공백으로 구분하여 별도의 줄에 입력하는 것입니다. Windows에서는 기본적으로 DNS 이전에 확인되며 Linux 해석 소스 순서는 일반적으로 /etc/nsswitch.conf 또는 /etc/netsvc.conf로 구성될 수 있습니다. 호스트 파일은 쿼리되는 첫 번째 일치 항목에 대해서만 구문 분석되므로 이름을 해석하려고 할 때 IP 주소 또는 호스트 이름의 두 번째 인스턴스가 짧거나 길게 검색되지 않습니다. 모든 이름이 해당 IP 주소의 동일한 줄에 입력되어야 하므로 각 이름 또는 IP는 한 번만 표시되어야 합니다.
  • Unix/Linux: /etc/hosts
  • Windows: %systemroot%\System32\drivers\etc\hosts
참고: 다른 파일과 마찬가지로 호스트 파일도 손상될 수 있습니다. 확실하지 않은 경우 기존 호스트 파일의 이름을 바꾸고 새 파일을 만든 다음 해석기 캐시를 지운 후 다시 시도하십시오.

4. 정방향 해석: 이름이 제공되었을 때 외부 호스트와 통신하려면 호스트가 TCP/IP 통신을 위해 외부 호스트의 IP 주소를 찾을 수 있어야 합니다. DNS를 사용할 때는 정방향 조회 영역에서 해당 호스트 이름에 대해 쿼리를 수행하여 IP 주소를 검색해야 합니다. 클라이언트에서 사용할 DNS 호스트를 여러 개 구성할 수 있습니다. Windows 시스템에서는 ipconfig /all을 사용하여 DNS 이름을 가져오고 Linux/UNIX 운영 체제에서는 /etc/resolv.conf가 일반적으로 DNS 서버 순서를 따릅니다. nslookup은 DNS를 쿼리하는 가장 일반적인 툴이며 모든 플랫폼에 있지만 자주 오용됩니다. 정방향 영역을 쿼리하려면 다음을 수행합니다.
  • 대화형 프롬프트를 입력하려면 인수 없이 nslookup을 실행합니다.
  • 조회할 이름을 반복 입력하고 키를 눌러 연결된 DNS 서버에서 정방향 레코드를 검색합니다.
  • 동일한 이름을 두 번 더 입력하여 이름 레코드가 서로 다른 호스트 간에 자동으로 라운드 로빈되는지 아니면 동일한 데이터를 반환하는지 확인합니다.
  • 호스트가 다른 호스트에 의해 호출되거나 자신을 동일한 IP 주소로 간주하는 이름의 인스턴스에 대해 동일한 프로세스를 반복합니다.
  • server next_dns_server를 입력하여 호스트가 잠재적 사용을 위해 구성된 다른 DNS 서버에 대해서도 동일한 프로세스를 반복합니다.
참고: 반환되는 모든 레코드는 서로 일치하고 관리자가 올바르다고 파악한 내용과 일치해야 하며 알려진 모든 이름을 설명하고 확인해야 합니다.

 5. 역방향 해석: IP 주소가 제공될 때 외부 호스트와 통신하려면 호스트가 호스트의 이름을 찾을 수 있어야 합니다. DNS를 사용할 때는 역방향 조회 영역에 대해 쿼리를 수행하여 해당 IP 주소의 호스트 이름을 찾습니다. 다시 강조하지만 이 방법은 자주 오용됩니다. nslookup IP_Address를 입력하거나 nslookup에 IP 주소를 입력해도 역방향 조회 영역을 쿼리하지 않습니다.
  • 대화형 프롬프트를 입력하려면 인수 없이 nslookup을 실행합니다.
  • set q=ptr을 입력하여 쿼리 유형을 역방향 영역으로 변경합니다.
  • 역방향으로 해석하려는 IP 주소를 입력하고 키를 누릅니다.
  • 역방향 레코드에서 반환되는 이름이 정방향 레코드 이름/IP와 일치하는지 확인합니다.
[root@linux_a~]# nslookup linux_a
Server:         1.2.3.4
Address:        1.2.3.4#53
Name:   linux_a.domain.com
Address: 5.6.7.8
         
[root@linux_a~]# nslookup 5.6.7.8
Server:         1.2.3.4
Address:        1.2.3.4#53
Name:   linux_a.domain.com
Address: 5.6.7.8
         
[root@linux_a~]# nslookup
> set q=ptr
> 5.6.7.8
Server:         1.2.3.4
Address:        1.2.3.4#53
Non-authoritative answer:
8.7.6.5.in-addr.arpa        name = linux_a.domain.com.
위의 예에서 nslookup을 비대화형으로 실행하면 역방향 조회 영역을 쿼리하지 않습니다.

참고: NetWorker는 완벽하고 일관된 역방향 해석과 표준 정방향 해석에 크게 의존합니다. 이것은 NetWorker의 인증 프로세스의 일부이며, IP 스푸핑 또는 백업 데이터를 훔치려는 다른 유형의 공격을 방지하기 위해 의도적으로 이러한 방식으로 설계됩니다.

해석

모든 NetWorker 호스트는 데이터 영역 역할에 따라 서로 통신하는 모든 호스트에 대해 정방향 및 역방향 이름 해석이 일관되게 이루어져야 합니다. NetWorker 관리자가 모든 호스트 해석 문제를 즉각적이고 완벽하게 해결하는 것은 매우 중요합니다.
이름 해석 문제를 해결하거나 NetWorker 데이터 영역에서 제외하려면 다음을 수행합니다.
    1. 서버, 클라이언트, 스토리지 노드 등 실패한 작업과 관련된 모든 호스트를 찾습니다.
   2. 각각에 대해 로컬로 구성된 IP 주소와 해당 IP에 대해 예상되는 해석 가능 이름을 모두 확인합니다.
    3. 호스트 해석을 위해 DNS보다 먼저 호스트 파일을 사용하도록 모든 호스트를 구성합니다.
    4. 한 호스트의 호스트 파일의 시작 부분에서 각 IP에 대해 하나의 항목을 구성합니다. 이때 해당되는 모든 이름은 같은 줄에 있습니다.
    5. 첫 번째 호스트에서 관련된 다른 호스트의 호스트 파일로 해당 줄을 정확하게 복사합니다.
    6. 원하는 IP에 해당하는 별칭을 정확하게 사용하도록 NetWorker 클라이언트 오브젝트를 편집합니다.
    7. 관련된 모든 호스트에서 NetWorker를 종료합니다.
    8. 적절한 운영 체제 메커니즘을 사용하여 각 호스트에서 해석기 캐시를 지웁니다.
    9. NetWorker를 재시작하고 문제가 있는 작업을 다시 시도합니다.

지정된 호스트에서 이름이 해석되고 있음을 증명하려면 다음 테스트를 사용합니다.
    1. nsradmin -s remote_host -p nsrexec를 사용하여 첫 번째 NetWorker 호스트(예: 클라이언트)에서 두 번째 호스트(예: 서버)에 연결합니다(세션은 열린 상태로 유지).
    2. 동일한 호스트에서 nsradmin에 대한 프로세스를 확인합니다(예: Windows, tasklist | findstr nsradmin)
    3. netstat를 실행하여 해당 프로세스와 연관된 소켓을 표시합니다(예: Windows, netstat -ao | findstr process_id)
    4. 해당 호스트에서 연결 소켓을 확인합니다(출력에서 가장 왼쪽에 있는 IP:port 페어링)
    5. 원격 호스트에서 :calling_port_from_first_host에 대해 netstat -a 및 findstr/grep을 실행합니다(이제 오른쪽에 나타납니다)
    6. 콜론 왼쪽에 나타나는 호스트 이름은 두 번째 호스트가 인바운드 연결을 다음으로 해석하는 첫 번째 호스트의 이름입니다.
    7. netstat 명령에 -n 스위치를 추가하고 다시 실행하여 동일한 소켓의 IP를 확인하고 IP/경로가 예상되는지 확인합니다.
    8. 동일한 테스트를 역방향으로 수행하여 두 번째 호스트가 예상 매개변수 내에서 첫 번째 호스트를 해석하도록 합니다.

その他の情報

 
savegroup과 같은 많은 NetWorker 작업에서 서로 다른 여러 TCP 소켓을 사용합니다. savegroup 예에서는 제어 세션, 데이터, 인덱스 업데이트에 각각 하나씩 사용됩니다. 기술적으로 정확하지만 일관되지 않는 이름을 사용하는 세션이 있으면 작업에 실패할 수 있습니다.
  • 라운드 로빈은 의도적으로 사용되고 구성되기도 하지만, 일반적으로 예기치 않은 상황이므로 피해야 합니다.
  • netstat -a는 외부 호스트의 OS 해석 이름을 표시하는 개방형/활성 TCP 소켓을 표시하며 문제를 식별하는 데 사용될 수 있습니다.
  • 네트워크 트래픽이 예상치 못한/원치 않는 어댑터를 사용하는 경우 정적 라우팅이 필요할 수 있으며, 이로 인해 나중에 이름 해석 문제가 발생할 수 있습니다.

다음 문서도 참조:
KB 463606: DNS 및 이름 해석 문제 해결

文書のプロパティ


影響を受ける製品

NetWorker

最後に公開された日付

26 9月 2023

バージョン

3

文書の種類

How To