» 윈도우 서버+가상화 » 역방향 조회 영역에 PTR(포인터) 레코드 추가하기(하나씩 또는 한번에 여러 개)

역방향 조회 영역에 PTR(포인터) 레코드 추가하기(하나씩 또는 한번에 여러 개)

capture_022

클라이언트 도메인 가입을 쭉 하다 보니 AD DC의 DNS에 역방향 조회 영역(Reverse Lookup Zone)을 업데이트해야 한다는 이야기를 들었다.

20140512

새로운 일을 시작한지 얼마 되지 않아(4월부터 시작했으니 이제 6개월이 조금 넘었다.) 역방향 조회를 추가하라는 이야기가 어떤 말인지 잘 이해되지 않았다.

“192.168.1.20을 사용하는 컴퓨터의 DNS 이름을 알려주시겠습니까?” TechNet에 아래와 같이 친절하게 설명되어 있다.

대부분의 DNS(Domain Name System) 조회에서 일반적으로 클라이언트는 호스트(A) 리소스 레코드에 저장된 다른 컴퓨터의 DNS 이름을 기반으로 검색하는 정방향 조회를 수행합니다. 이 쿼리 유형에서는 반환된 응답의 리소스 데이터로 IP 주소를 기대합니다. DNS에서는 클라이언트가 알려진 IP 주소를 사용하고 이 주소를 기반으로 컴퓨터 이름을 조회하는 역방향 조회 프로세스도 제공합니다. 역방향 조회에서는 “IP 주소 192.168.1.20을 사용하는 컴퓨터의 DNS 이름을 알려주시겠습니까?”와 같은 질문 형식을 사용합니다. DNS는 원래 이러한 쿼리 유형을 지원하도록 설계되지 않았습니다. 역방향 쿼리 프로세스를 지원하는 경우의 한 가지 문제점은 DNS 네임스페이스가 이름을 구성하고 인덱싱하는 방법과 IP 주소가 할당되는 방법에 차이가 있다는 것입니다. 위의 질문에 대답하는 유일한 방법이 DNS 네임스페이스의 모든 도메인을 검색하는 것이면 역방향 쿼리에 너무 많은 시간과 처리가 필요하므로 역방향 쿼리는 유용하지 않을 것입니다. 이 문제를 해결하기 위해 특수 도메인 in-addr.arpa가 DNS 표준에 정의되고 인터넷 DNS 네임스페이스에 예약되어 역방향 쿼리를 수행하기 위한 실제적이고 안정적인 방법을 제공합니다. 역방향 네임스페이스를 만들려면 점으로 구분된 십진수 IP 주소 표시에서 숫자의 순서를 역으로 정렬하여 in-addr.arpa 도메인 내에 하위 도메인을 구성합니다.

역방향 조회 이해 – Microsoft TechNet

지난 5월로 돌아가보니… 역방향 조회 영역을 무작정 만들어봤었구나…

다시 역방향 조회 영역을 추가하라는 이야기를 듣고, 당시에 찍어 놓았던 스크린샷들을 살펴보게 되었다.

capture_023

DNS 관리자에서 ‘역방향 조회 영역’의 [새 영역]을 추가.

capture_025

주 영역 만들기.

  • 주 영역: DNS 서버가 호스트하는 영역이 주 영역인 경우 이 DNS 서버가 해당 영역에 대한 정보의 기본 출처이고 로컬 파일이나 AD DS에 영역 데이터의 마스터 복사본을 저장합니다. 영역이 파일에 저장되는 경우 기본적으로 주 영역 파일은 zone_name.dns라는 이름이 지정되어 서버의 %windir%\System32\Dns 폴더에 저장됩니다.
  • 보조 영역: DNS 서버가 호스트하는 영역이 보조 영역인 경우 이 DNS 서버가 해당 영역에 대한 정보의 보조 출처입니다. 이 서버에 있는 영역은 해당 영역을 호스트하는 다른 원격 DNS 서버 컴퓨터에서 얻어야 합니다. 이 DNS 서버는 영역에 대한 업데이트된 정보를 제공하는 원격 DNS 서버에 네트워크를 통해 액세스할 수 있어야 합니다. 보조 영역은 다른 서버에 호스트된 주 영역의 복사본에 불과하기 때문에 AD DS에 저장될 수 없습니다.
  • 스텁 영역: DNS 서버가 호스트하는 영역이 스텁 영역인 경우 이 DNS 서버가 해당 영역에 대한 권한이 있는 이름 서버 정보의 유일한 출처입니다. 이 서버에 있는 영역은 해당 영역을 호스트하는 다른 원격 DNS 서버 컴퓨터에서 얻어야 합니다. 이 DNS 서버는 영역에 대한 권한이 있는 이름 서버 정보를 복사하기 위해 원격 DNS 서버에 네트워크를 통해 액세스할 수 있어야 합니다.

영역 종류 이해 – TechNet

하아… 아직도 어렵다.

capture_026

3번째 옵션이 Windows 2000용임을 감안하면, 첫번째와 두번째 옵션은 포리스트 단위와 도메인 단위라는 점이 틀린 것 같다.

capture_027

일단은 IPv4로.

capture_028

역방향 조회 영역을 만들 네트워크 영역을 지정해준다.

capture_029

동적 업데이트… 변경된 점이 있을 때 DNS 클라이언트에서 서버로 동적으로 업데이트해주는 기능이라고 한다. 기본값은 [보안 동적 업데이트’만’ 허용]인데, AD DS에 통합된 경우에만 DNS 보안 업데이트를 사용할 수 있다고 한다. 도메인 환경이므로 이것을 선택.

capture_030

역방향 조회 영역이 만들어졌다.

capture_032

이렇게 생겼음.

새 PTR 포인터 만들기(역방향): 한땀 한땀 하나씩 추가

capture_046

역방향 조회 영역에 PTR 포인터를 만든다.

capture_047

호스트의 IP 주소를 넣어준다. 호스트 이름의 경우 직접 입력할 수도 있지만, DNS에 미리 추가된 호스트의 경우 ‘찾아보기’로 선택 가능하다.

capture_049

GUI가 참 편하다.

capture_054

역방향 PTR 레코드를 조회하면?

capture_052

nslookup을 실행해서 set type=ptr 로 설정한 뒤, 방금 전 등록한 IP를 입력해 호스트 컴퓨터의 이름이 반환되는지 확인하면 된다.

capture_056

역방향 조회 영역에 추가했던 PTR 레코드를 삭제해봤다.

capture_058

도메인 환경의 서버와 클라이언트 모두에서 방금 삭제한 IP에 대한 호스트 이름을 반환하지 못했다. 제대로 된 것 같다. ^^

capture_20141106(2342)Surface (2)

PTR 레코드가 많다면~ 여러 주소를 한 방에 처리해 보자.

한땀 한땀 추가하는 것도 좋지만, 많은 사용자들을 한 번에 추가할 때에는 해당 목록을 명령 프롬프트로 추가하면 빠르고 편하다.

capture_20141107_015(PC)

기본 명령어는 아래와 같다.

dnscmd \\서버명 /RecordAdd 역방향조회영역.in-addr.arpa IP끝번호 호스트명.도메인명

위 명령어를 쭉 반복시키면 여러 PTR 레코드를 한방에 추가할 수 있는데,

ptr_record

5 ad01.archmond.kr
6 AD02.archmond.kr
145 ArchWTP.archmond.kr
140 VM-WIN7-TEST.archmond.kr
40 WSUS01.archmond.kr

위와 같이 IP끝번호와 호스트명을 띄어쓰기로 구분한 텍스트 파일로 저장해 놓고 아래의 명령을 입력하면 된다.

for /f “tokens=1-2” %i in (c:\텍스트파일주소.txt) do dnscmd %LOGONSERVER% /RecordAdd 0.168.192.in-addr.arpa %i PTR %j

위에서 텍스트파일 주소와 0.168.192 주소는 내 환경에 알맞게 수정하면 OK.

capture_20141107_015(PC)

실제로 위 명령을 동작시키면 위와 같은 느낌으로 지저분하게(?) 수행된다.

capture_20141107_016(PC)

여러 PTR 레코드가 쫙 추가된 것을 확인하니 기분이 좋다.

이 방법을 찾은 사이트는 DNS bulk PTR records creation – iSiek’s blog about Microsoft Windows services 이다. PTR 레코드를 추가하는 방법이 아주 깔끔하게 정리되어 있다.

아직도 궁금해…

역방향 조회 영역을 추가해 사용하는 근본적인 이유가 궁금하다. 이 작업을 하지 않으면 무엇인가 동작을 하지 않게 되는 것인지? 아니면 뭔가 네트워크 속도가 빨라지는 것인가? 여러 질문이 머릿속에 맴돈다.

이것도 살펴보세요!

Azure Cloud Shell(Linux Bash)

에헹? Azure Portal에서 Linux Bash가? 콘솔 버튼이 생겼다! 아마 Bash or PowerShell로 적용 가능할 것 …

답글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다.