본문 바로가기

Microsoft/Windows Server 2003

에이징 및 청소 이해

에이징 및 청소 이해

업데이트 날짜: 01/21/2005

에이징 및 청소 이해

Windows Server 2003을 실행하는 DNS 서버는 에이징 및 청소 기능을 지원합니다. 이 기능은 영역 데이터에 계속 누적될 수 있는 부실 RR(리소스 레코드)의 정리 및 제거를 수행하기 위한 메커니즘으로 제공됩니다.

동적 업데이트를 사용하면 네트워크에서 컴퓨터가 시작될 때 RR이 영역에 자동으로 추가됩니다. 그러나, 경우에 따라서는 컴퓨터가 네트워크에서 연결을 끊을 때 이 RR이 자동으로 제거되지 않습니다. 예를 들어, 컴퓨터가 시작될 때 자신의 A(호스트) RR을 등록하고 나중에 네트워크에서 비정상적으로 연결이 끊기면 그 A(호스트) RR은 삭제되지 않을 것입니다. 네트워크에 이동 중인 컴퓨터와 사용자가 있으면 이러한 상황이 자주 발생할 수 있습니다.

부실 RR을 그대로 방치하면 영역 데이터에 남은 부실 RR로 인해 문제가 발생할 수 있습니다. 그 예는 아래와 같습니다.

서버 영역에 부실 RR이 많이 남아 있으면 이 RR이 서버 디스크 공간을 차지하게 되어 영역 전송이 불필요하게 길어질 수 있습니다.

부실 RR을 포함한 영역을 로드하는 DNS 서버는 만료된 정보를 사용하여 클라이언트 쿼리에 응답하므로 클라이언트가 네트워크에서 이름을 확인할 때 문제가 발생할 수 있습니다.

부실 RR이 DNS 서버에 누적되면 서버 성능과 응답 기능이 저하될 수 있습니다.

영역에 있는 부실 RR로 인해 다른 컴퓨터나 호스트 장치가 DNS 도메인 이름을 사용할 수 없게 되는 경우도 있습니다.

이 문제를 해결하기 위해 DNS 서버 서비스는 아래와 같은 기능을 제공합니다.

주 형식 영역에 동적으로 추가된 RR에 대해 서버 컴퓨터에 설정된 현재 날짜와 시간에 기반하여 시간 스탬프 기능을 제공합니다. 또한 에이징 및 청소가 사용할 수 있게 설정되어 있는 표준 주 영역에 시간 스탬프가 기록됩니다.

수동으로 추가하는 RR에는 시간 스탬프 값으로 0이 사용됩니다. 이 값은 RR이 에이징 프로세스의 영향을 받지 않으며 사용자가 시간 스탬프를 변경하거나 삭제하지 않으면 영역 데이터에 무제한 남을 수 있음을 나타냅니다.

적용 가능한 영역에 대해 지정된 새로 고침 시간에 기반하여 로컬 데이터의 RR을 에이징합니다.

이 프로세스는 DNS 서버 서비스가 로드하는 주 형식 영역에 대해서만 수행될 수 있습니다.

지정된 새로 고침 시간이 지나서 남아 있는 모든 RR을 청소하는 기능을 제공합니다.

DNS 서버는 청소 작업을 수행할 때 RR이 부실 레코드로 에이징되었는지 확인하고 영역 데이터에서 부실 리소스 레코드를 제거할 수 있습니다. 청소 작업을 자동으로 반복하도록 서버를 구성하거나 서버에서 청소 작업을 바로 시작할 수 있습니다.

자세한 내용은 부실 리소스 레코드 자동 청소 사용 또는 부실 리소스 레코드 즉시 청소 시작을 참조하십시오.

주의

기본적으로 DNS 서버 서비스의 에이징 및 청소 메커니즘은 사용할 수 없습니다. 모든 매개 변수를 완전히 이해하는 경우에만 이 메커니즘을 사용할 수 있게 설정해야 합니다. 그렇지 않으면 서버를 구성할 때 삭제하면 안되는 레코드를 실수로 삭제하게 될 수 있습니다. 레코드가 실수로 삭제되면 사용자가 그 레코드에 대한 쿼리를 확인할 수 없을 뿐 아니라 보안된 동적 업데이트를 사용하도록 구성된 영역에서도 모든 사용자가 레코드를 만들고 소유권을 가져올 수 있습니다.

서버는 각 RR에 특정한 시간 스탬프 내용과 함께 사용자가 조정하거나 구성할 수 있는 다른 에이징 및 청소 속성을 사용하여 레코드 청소 시점을 결정합니다.

에이징/청소에 필요한 조건

DNS의 에이징 및 청소 기능을 사용하기 위해서는 아래와 같은 몇 가지 조건이 충족되어야 합니다.

1.

DNS 서버 및 영역 모두에서 청소와 에이징을 사용할 수 있게 설정해야 합니다.

기본적으로 리소스 레코드의 에이징 및 청소는 사용할 수 없습니다.

2.

리소스 레코드를 영역에 동적으로 추가하거나 수동으로 수정해야 리소스 레코드가 에이징 및 청소 작업에 사용될 수 있습니다.

일반적으로는 DNS 동적 업데이트 프로토콜을 사용하여 동적으로 추가한 리소스 레코드에 대해서만 에이징 및 청소를 수행할 수 있습니다. 자세한 내용은 동적 업데이트를 참조하십시오.

그러나 동적이지 않은 방법으로 추가된 다른 리소스 레코드에 대해 청소를 사용할 수 있습니다. 다른 DNS 서버의 텍스트 기반 영역 파일을 로드하거나 영역에 수동으로 레코드를 추가하는 등, 동적이지 않은 방법으로 영역에 추가된 레코드에 대해서는 시간 스탬프가 0으로 설정됩니다. 이 값은 이러한 레코드에 에이징 및 청소 작업이 적용되지 않게 합니다.

이 기본값을 변경하기 위해 이러한 레코드를 개별적으로 관리하여 레코드를 재설정하고 현재(0이 아닌) 시간 스탬프 값을 사용하게 허용할 수 있습니다. 이렇게 하면 이 레코드를 에이징하거나 청소할 수 있습니다.

자세한 내용은 지정한 리소스 레코드의 청소 및 에이징 속성 다시 설정을 참조하십시오.

참고

표준 주 영역에서 Active Directory 통합 영역으로 영역을 변경하는 경우 영역에 있는 기존의 모든 리소스 레코드에 대해 청소를 사용할 수 있게 설정하는 것이 좋습니다. 영역에 있는 모든 기존 리소스 레코드에 에이징을 사용할 수 있게 설정하려면 dnscmd 명령줄 도구에서 제공하는 AgeAllRecords 명령을 사용합니다. 자세한 내용은 Dnscmd를 사용하여 서버 관리를 참조하십시오.

에이징 및 청소 용어

아래 표에는 특히 에이징 및 청소 기능을 논의할 때 도움이 될 수 있는 새 용어와 수정된 용어가 나와 있습니다.

용어 설명

RR(리소스 레코드) 시간 스탬프

DNS 서버가 에이징 및 청소 작업을 수행할 때 리소스 레코드를 제거할 시점을 결정하는 데 사용하는 날짜와 시간 값입니다.

현재 서버 시간

DNS 서버의 현재 날짜와 시간입니다. 이 숫자는 특정 시점의 정확한 숫자 값으로 표현될 수 있습니다.

새로 고치지 않음 간격

각 영역에 대해 결정되는 시간 간격이며 아래와 같은 두 이벤트에 연결됩니다.

1.

마지막으로 레코드를 새로 고치고 시간 스탬프를 설정한 날짜와 시간

2.

다음에 레코드를 새로 고치고 시간 스탬프를 다시 설정할 수 있는 날짜와 시간

이 값은 Active Directory 데이터베이스에 대한 쓰기 작업 수를 줄이는 데 필요합니다. 기본적으로 이 간격은 7일로 설정됩니다. 에이징 및 청소 기능의 효과가 손실되거나 떨어질 수 있으므로 이 값을 너무 높은 수준으로 올리지 않는 것이 좋습니다.

새로 고침 간격

각 영역에 대해 결정되는 시간 간격이며 아래와 같은 별개의 두 이벤트에 연결됩니다.

1.

레코드를 새로 고치고 시간 스탬프를 재설정할 수 있는 가장 가까운 날짜와 시간

2.

레코드를 청소하고 영역 데이터베이스에서 제거할 수 있는 가장 가까운 날짜와 시간

이 값은 모든 클라이언트가 자신의 레코드를 새로 고칠 수 있도록 충분히 큰 값이어야 합니다. 기본적으로 이 간격은 7일로 설정됩니다. 에이징 및 청소 기능의 효과가 손실되거나 떨어질 수 있으므로 이 값을 너무 높은 수준으로 올리지 않는 것이 좋습니다.

청소 시작 시간

숫자로 표시되는 특정 시간입니다. 이 시간은 서버가 영역을 청소할 수 있는 시점을 결정할 때 사용합니다. 자세한 내용은 에이징 및 청소 이해를 참조하십시오.

청소 기간

서버에서 자동 청소를 사용할 수 있으면 이 기간은 자동 청소 과정이 반복되는 시간을 나타냅니다. 기본값은 7일입니다. DNS 서버의 성능이 저하되지 않는 이 기간의 최소 허용 값은 1시간입니다.

레코드 새로 고침

레코드의 다른 특성은 수정되지 않고 리소스 레코드 시간 스탬프만 수정될 때 리소스 레코드에 대해 DNS 동적 업데이트가 수행되는 때입니다.

새로 고침은 주로 아래와 같은 경우에 발생합니다.

1.

네트워크에서 컴퓨터가 다시 시작될 때 그 이름과 IP 주소 정보가 컴퓨터 종료 전에 사용된 이름 및 주소 정보와 일치하면 컴퓨터는 새로 고침을 보내어 그 연결된 리소스 레코드에서 이 정보를 갱신합니다.

2.

컴퓨터는 실행 중에 주기적으로 새로 고침을 전송합니다.

Windows XP 및 Windows Server 2003 DNS 클라이언트 서비스는 클라이언트 리소스 레코드의 DNS 등록을 24시간마다 갱신합니다. 이 동적 업데이트가 발생할 경우 동적 업데이트 요청으로 DNS 데이터베이스가 수정되지 않으면 리소스 레코드 업데이트가 아닌 새로 고침으로 간주됩니다.

3.

클라이언트 주소 임대를 갱신하는 DHCP 서버, 클러스터의 레코드를 등록 및 업데이트하는 클러스터 서버 및 Active Directory 도메인 컨트롤러가 사용하는 리소스 레코드를 등록 및 업데이트할 수 있는 Net Logon 서비스 등의 새로 고침을 다른 네트워크 서비스에서 시도합니다.

레코드 업데이트

시간 스탬프 외에 다른 레코드 특성도 수정될 때 리소스 레코드에 대해 DNS 동적 업데이트가 수행되는 것을 말합니다.

업데이트는 주로 아래와 같은 경우에 발생합니다.

1.

네트워크에 새 컴퓨터가 추가되면 그 컴퓨터가 시작될 때 업데이트를 보내어 그 구성된 영역에 처음으로 자신의 리소스 레코드를 등록합니다.

2.

영역에 기존 레코드가 있는 컴퓨터에서 IP 주소가 변경되면 DNS 영역 데이터에서 이름 대 주소 매핑을 수정하기 위해 업데이트가 전송됩니다.

3.

Net Logon 서비스가 새 Active Directory 도메인 컨트롤러를 등록하는 경우에 동적 업데이트가 발생합니다.

서버 청소

영역 청소 수행이 사용 설정된 DNS 서버의 제한된 IP 주소 목록을 지정할 수 있게 하는 선택적인 고급 영역 매개 변수입니다.

이 매개 변수를 지정하지 않으면 기본적으로 디렉터리 통합 영역을 로드하는 청소 사용이 설정된 모든 DNS 서버가 영역 청소를 시도합니다. 디렉터리 통합 영역을 로드하는 일부 서버에서만 청소를 수행하는 것이 적합한 경우 이 매개 변수가 유용할 수 있습니다.

이 매개 변수를 설정하려면 영역의 ScavengingServers 매개 변수에 영역 청소를 사용하도록 설정된 서버의 IP 주소 목록을 지정해야 합니다. Windows DNS 서버 관리를 위한 명령줄 기반 도구인 dnscmd 명령을 사용하여 이 목록을 지정할 수 있습니다. 자세한 내용은 Dnscmd를 사용하여 서버 관리를 참조하십시오.

청소를 시작할 수 있는 때

청소를 사용 설정하기 위해 필요한 모든 조건이 충족되면 현재 서버 시간이 영역의 청소 시작 시간 값보다 클 때 서버 영역에 대해 청소를 시작할 수 있습니다.

서버는 아래와 같은 이벤트 중 하나가 발생할 때 개별 영역별로 청소 시작 시간 값을 설정합니다.

영역에 동적 업데이트가 사용할 수 있게 설정됩니다.

부실 리소스 레코드 청소 확인란의 상태 변경이 적용됩니다. DNS 콘솔을 사용하여 적용 가능한 DNS 서버 또는 그 주 영역 중 하나에서 이 설정을 수정할 수 있습니다.

DNS 서버가 청소 사용이 설정되거나 청소할 수 있는 주 영역을 로드합니다.

서버 컴퓨터가 시작되거나 DNS 서버 서비스가 시작되는 경우가 여기에 해당합니다.

영역이 일시 중지된 서비스를 다시 시작합니다.

위와 같은 이벤트가 발생하면 DNS 서버는 아래와 같이 합을 계산하여 청소 시작 시간 값을 설정합니다.

현재 서버 시간 + 새로 고침 간격 = 청소 시작 시간

이 값은 청소 작업 중에 비교 기준으로 사용됩니다.

예제 레코드의 에이징 및 청소 프로세스 예

서버에서 수행되는 에이징 및 청소 프로세스를 이해하기 위해, 이 프로세스가 적용된 서버와 영역에 단일 리소스 레코드가 추가되었다가 에이징되어 데이터베이스에서 제거되는 일련의 과정을 살펴봅니다.

1.

예제 DNS 호스트인"host-a.example.microsoft.com" com"은 에이징 및 청소가 사용 설정된 영역의 DNS 서버에 호스트(A) 리소스 레코드를 등록합니다.

2.

레코드를 등록할 때 DNS 서버는 현재 서버 시간에 기준하여 이 레코드에 시간 스탬프를 기록합니다.

레코드 시간 스탬프가 기록된 후 DNS 서버는 영역의 새로 고치지 않음 간격 동안 이 레코드에 대한 새로 고침을 허용하지 않습니다. 그러나 그 시간 이전에는 업데이트를 받을 수 있습니다. 예를 들어, "host-a.example.microsoft.com"의 IP 주소가 변경된 경우 DNS 서버가 업데이트를 받을 수 있습니다. 이 경우 서버는 레코드 시간 스탬템프도 업데이트(재설정)합니다.

3.

새로 고치지 않음 기간이 만료되면 서버는 이 레코드에 대한 새로 고침 시도를 허용하기 시작합니다.

이 레코드에 대한 초기 새로 고치지 않음 기간이 끝나면 바로 새로 고침 기간이 시작됩니다. 새로 고침 기간 동안 서버는 남은 시간에 레코드를 새로 고칠 수 있게 허용합니다.

4.

레코드의 새로 고침을 받으면 서버는 새로 고침 기간 중이나 후에 이것을 처리합니다.

새로 고침이 처리되면 2단계에서 설명한 방법에 따라 레코드의 시간 스탬프가 다시 설정됩니다.

5.

이후로 서버가 "example.microsoft.com" 영역에 청소를 수행할 때 서버는 다른 모든 영역 레코드와 함께 이 영역 레코드를 검사합니다.

아래와 같은 시간 합계를 기준으로 각 레코드를 현재 서버 시간과 비교하여 레코드의 제거 여부가 결정됩니다.

레코드 시간 스탬프 + 영역의 새로 고치지 않음 간격 + 영역의 새로 고침 간격

이 합이 현재 서버 시간보다 크면 다른 동작이 수행되지 않고 레코드가 영역에서 계속 에이징됩니다.

이 합이 현재 서버 시간보다 작으면 현재 서버 메모리에 로드되어 있는 영역 데이터 및 디렉터리에 통합된 "example.microsoft.com" 영역을 위한 Active Directory의 해당 DnsZone 개체 저장소 모두에서 레코드가 삭제됩니다.