느린 연결이 OAB 생성 프로세스에 미칠 수 있는 영향
최초 문서 게시일: 2011년 9월 14일 수요일
Exchange 내에서 느린 연결을 포함하는 메일 그룹이나 전자 메일 사용 가능 보안 그룹은 오프라인 주소록(OAB) 생성 프로세스에 영향을 줘서 OAB가 제대로 복제되지 않도록 합니다. 이 문제는 Windows 2000에서 AD가 시작된 이후로 계속되어 왔지만 잘 알려지지 않은 문제이며 오프라인 주소록(OAB) 생성 프로세스의 작동 방법과 관련되어 있습니다.
이 문제를 해결하기 위한 두 가지 옵션이 있습니다. 영향을 받는 그룹을 삭제하고 다시 만들거나, 느린 연결이 있는 그룹을 포함하는 Active Directory 파티션을 다시 호스팅해야 합니다.
느린 연결이란?
먼저 Active Directory에서 ‘연결’이 무엇을 뜻하는지 이해하면 도움이 될 것입니다.
Active Directory에 있는 일부 개체 간 참조는 사용 편의성과 관리 목적 모두를 위해 역참조를 필요로 합니다. 예를 들어 managedBy가 개체 특성인 경우 ObjectA를 살펴보면 ObjectA가 ObjectB에 의해 관리되고 있는 것을 확인할 수 있습니다. 마찬가지로 때로는 ObjectB를 살펴봄으로써 ObjectB가 관리하는 개체를 확인하는 것도 유용합니다(예: managedObjects 특성의 값). Active Directory는 디렉터리 트리에서 한 개체가 이동할 때 해당 개체와 다른 개체 간의 참조가 유지되도록 서로를 참조하는 개체 간의 참조 무결성을 유지합니다. 이 참조는 연결된 특성을 통해 이루어집니다.
연결된 두 특성은 스키마에서 같은 연결-쌍 식별자를 가진 것으로 표시됩니다. 하나는 정방향 연결로 표시되고, 다른 하나는 역방향 링크로 표시됩니다. 예를 들어 managedBy / managedObjects 연결 쌍에서는 managedBy가 정방향 링크입니다. 따라서 사용자 개체에 대한 managedObjects 특성을 조정하려면 사용자의 managedObjects 값에서 추가하거나 제거할 개체로 이동하고 각 개체의 managedBy 값을 수정해야 합니다. 역방향 연결 특성은 사용자 작업에 의해 요청될 때 계산됩니다.
ObjectB가 관리하는 모든 개체를 찾기 위해 연결 쌍이 managedBy / managedObjects이고 역방향 링크 특성이 ObjectB를 식별하는 모든 레코드에 대해 연결을 조사합니다. 이들 레코드의 연결 쌍은 ObjectB에 의해 관리되는 모든 레코드(개체)의 데이터베이스 식별자를 제공합니다.
메일 그룹 구성원은 정방향 연결 및 역방향 연결 쌍 모두로 구현됩니다. 역방향 연결 개체는 isMemberOfDl 특성을 저장하는 개체가 됩니다. 정방향 member 특성은 사용자가 여러 메일 그룹의 구성원이 될 수 있도록 하는 다중 값 특성입니다. 다양한 개체에 대한 연결을 만드는 사람을 제한하는 것은 불가능하기 때문에 역방향 연결은 항상 다중 값 연결이어야 합니다.
느린 연결은 더 이상 Active Directory에 존재하지 않는 개체의 고유 이름(DN)을 포함하는 역방향으로 연결된 특성입니다. 이러한 문제는 글로벌 카탈로그 서버(및 GC에 있는 읽기 전용 파티션)가 문제가 있는 도메인의 쓰기 가능 도메인 컨트롤러로부터 안정적인 복제를 받지 못하기 때문에 발생합니다. 일반적으로 GC가 끊어진 느린 연결 값을 보관하고, 쓰기 가능 DC에서 문제가 발생하지 않을 수도 있는 것은 바로 이러한 이유 때문입니다.
문제 증상
OAB 생성 프로세스는 QueryRows 함수를 사용하여 Active Directory로부터 특성 값을 반환합니다. 잘못된 데이터가 반환된 경우에는 응용 프로그램 이벤트 뷰에서 오류 이벤트가 반환된 것일 수 있으며 OABGen 프로세스가 완료되지 않습니다.
이 문제와 연관된 오류 이벤트:
이벤트 원본 |
이벤트 ID |
이벤트 문자열 |
MSExchangeSA |
9126 |
주소 목록 '\Global Address List'에 대한 오프라인 주소 목록을 계산하는 동안 OABGen에서 8004010e 오류가 발생했습니다. |
MSExchangeSA |
9330 |
'\Global Address List'에 대한 Active Directory ContosoHUB03에 액세스하는 동안 OALGen에서 8004010e 오류(내부 ID 500139c)가 발생했습니다. |
MSExchangeSA |
9339 |
'\Global Address List'에 대한 오프라인 주소 목록을 생성하는 동안 Active Directory ‘HubServer’ 에서 8004010e 오류를 반환했습니다. Active Directory에서 반환한 마지막 받는 사람은 'UserName'입니다. 이 오프라인 주소 목록이 생성되지 않습니다. |
최근에 게시된, Justin Turner가 작성한 아래의 KB 문서를 통해 느린 연결이 Exchange에 어떻게 작용하는지에 대한 자세한 정보를 볼 수 있습니다.
느리거나 잘못된 데이터를 포함하고 있는 특성에 의해 발생한 Exchange 오프라인 주소록(OAB) 생성 오류: 8004010e 오류가 표시되는 이벤트 9126, 9330 및 9339
https://support.microsoft.com/kb/2553698/ko-kr(영문일 수 있음)
문제 해결
내부에서 Active Directory 엔지니어들은 repadmin 명령줄 도구를 사용하여 느린 개체를 주기적으로 정리합니다. 이것은 꽤 간단한 프로세스입니다. Microsoft ADRAP(AD Risk Assessment Program(영문일 수 있음), 프리미어 고객을 위한 서비스)는 Active Directory 환경에 느린 연결이 있는 경우 이를 보고합니다. 느린 개체를 정리하는 것은 잘 알려진 프로세스인 반면, 느린 연결은 AD 측에서 쉽게 식별되지 않습니다. 하지만 느린 연결을 식별할 수 있는 Exchange 도구인 oabvalidate.exe(https://oabvalidate.codeplex.com/(영문일 수 있음))가 있습니다. 이 도구의 제작자(Bill Long)는 Codeplex에서 도구를 활발하게 업데이트하고 있습니다. OABValidate 도구는 작고(800kb 미만) 지정된 DC에 대해 실행되고, 대개 실행하는 데 오래 걸리지 않으며(AD 환경에 있는 개체 수에 따라 걸리는 시간이 다름), 해결해야 하는 느린 연결이 들어 있는 그룹을 목록으로 제공합니다.
작업 환경에 느린 연결이 있는데 Exchange를 설치하고 실행하면 어떻게 될까요? 이 경우 해결해야 하는 느린 연결이 있다는 것을 알려 주는 OAB 생성 오류가 나타나게 됩니다.
Mike O’Neill
이 문서는 번역된 블로그 게시물입니다. 원본 문서는 How Lingering Links can impact OAB generation process...를 참조하십시오.