XADM: 디렉터리 서비스 서버 감지 및 DSAccess 사용

기술 자료 번역 기술 자료 번역
기술 자료: 250570 - 이 문서가 적용되는 제품 보기.
이 문서는 이전에 다음 ID로 출판되었음: KR250570
중요: 이 문서에서는 레지스트리 편집 방법을 설명합니다. 레지스트리를 편집하려면 문제가 발생한 경우 복원하는 방법을 알고 있어야 합니다. 복원 방법에 대한 자세한 내용은 Regedit.exe의 "레지스트리 복원" 도움말 항목 또는 Regedt32.exe의 "레지스트리 키 복원" 도움말 항목을 참조하십시오.

경고: 레지스트리 편집기를 잘못 사용하면 심각한 문제가 발생할 수 있으며 문제를 해결하기 위해 운영 체제를 다시 설치해야 할 수도 있습니다. Microsoft는 레지스트리 편집기를 잘못 사용하여 발생하는 문제에 대한 해결을 보증하지 않습니다. 레지스트리 편집기의 사용에 따른 모든 책임은 사용자에게 있습니다.

레지스트리를 편집하는 방법에 대한 자세한 내용은 레지스트리 편집기(Regedit.exe)의 "키 및 값 변경" 도움말 항목 또는 Regedt32.exe의 "레지스트리의 정보 추가 및 삭제" 및 "레지스트리 데이터 편집" 도움말 항목을 참조하십시오. 레지스트리를 편집하기 전에 먼저 백업해야 합니다. 또한 Windows NT 또는 Windows 2000을 실행하는 경우 ERD(응급 복구 디스크)를 업데이트해야 합니다.
모두 확대 | 모두 축소

이 페이지에서

요약

DSAccess는 디렉터리 정보에 액세스하고 저장하는 데 사용되는 Microsoft Exchange 2000 Server 내부 프로세스입니다. 이 문서는 Exchange 2000 서버가 있는 토폴로지에 존재할 수 있는 디렉터리 서비스를 정적 또는 동적으로 감지하도록 DSAccess를 구성하는 방법에 대해 설명합니다. 이곳에서 설명하는 모든 정보는 단일 Exchange 2000 서버에 적용됩니다. 레지스트리를 구성하는 경우 토폴로지에 있는 모든 Exchange 2000 서버에 적용해야 합니다. 마지막으로, 동적으로 감지한 디렉터리 서비스 서버 목록은 문제의 특정 Exchange 2000 서버에도 적용합니다. 이 동적 목록은 다중 Exchange 2000 환경에서 고유하지 않을 수도 있습니다.

Microsoft Exchange 2000 Server의 최신 서비스 팩에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
301378 XGEN: How to Obtain the Latest Exchange 2000 Server Service Pack

추가 정보

DSAccess에서는 사용 가능한 디렉터리 서비스 서버를 글로벌 카탈로그(GC) 서버, 도메인 컨트롤러(DC), 구성 도메인 컨트롤러(Config DC) 등 세 가지 범주(중복 가능)로 나눕니다.

거의 모든 Exchange 2000 사용자 컨텍스트 디렉터리 서비스 트랜잭션은 GC를 대상으로 합니다. 그러나 실행된 검색에서 요청 서비스가 요청된 사용자 개체의 위치를 충분히 인식하고 있는 경우 사용자 컨텍스트 요청으로 DC를 사용할 수 있습니다. GC에 사용되는 디렉터리 서비스 서버는 DC 자체이기도 하므로 이 서버는 두 종류의 디렉터리로 사용할 수 있습니다. DSAccess는 사용 가능한 GC 및 DC 목록을 생성하며 이 목록은 디렉터리 서비스 상태의 변경이 감지될 때마다 주기적으로 업데이트됩니다. 이 목록은 다른 디렉터리 소비자에게 공유될 수 있으며 다른 디렉터리 소비자는 디렉터리 서비스(예: 분류기, DSProxy, 시스템 수행자 서비스)에 액세스하기 위해 DSAccess를 게이트웨이로 사용할 필요는 없습니다. 그러나 차후 디렉터리 서비스 상태가 변경되면 이 목록을 요청하는 서비스에서 감지하게 됩니다.

사용 가능한 각 디렉터리 서비스 서버의 경우 DSAccess는 DSAccess를 사용하는 각 프로세스를 대신하여 전용 LDAP 연결을 엽니다. DSAccess는 감지한 디렉터리 상태 정보(Up, Slow 또는 Down)와 이 상태 정보를 기반으로 한 채널 요청을 사용하여 LDAP 연결을 업데이트합니다. DC와 GC에 사용할 수 있는 LDAP 연결 집합 및 관련된 상태가 프로세스의 프로필을 구성합니다. 안정성과 확장성을 위해 DSAccess는 이러한 LDAP 연결 간에 라운드 로빈 방식으로 사용자 컨텍스트 디렉터리 서비스 요청을 배포하는 로드 균형 조정 메커니즘을 지원합니다. 디렉터리 서비스 서버의 특정 집합만 사용하도록 레지스트리의 모든 프로필을 정적으로 구성할 수 있습니다. 그러나 이런 연결에서의 실제 상태와 로드 균형 조정은 프로세스(프로필)마다 다를 수 있습니다. 이것은 구성 컨텍스트 요청의 경우는 해당되지 않습니다.

DSAccess가 모든 구성 컨텍스트 요청에 대해 단일 DC만 사용하는 경우는 Microsoft Windows 2000의 아키텍처와 함께 존재하는 다중 마스터 디렉터리 서비스 환경으로 인한 복제 대기 시간 문제를 줄이고 다른 DC에 부분적으로 디렉터리가 추가되거나 수정되지 못하도록 하기 위해서 입니다. 모든 프로필에서 이 단일 Config DC를 공유합니다.

DSAccess 정적 디렉터리 서비스 서버 사용

DSAccess를 정적으로 구성하면 디렉터리 서비스 로드를 특정 디렉터리 서비스 서버 집합으로 전달할 수 있습니다. 이 작업은 레지스트리에서 수행됩니다. 다른 수정 작업과 마찬가지로 레지스트리를 업데이트할 때는 주의해야 합니다. 다른 Exchange Server 서비스의 동작과 비슷하게 DSAccess는 레지스트리에 지정된 디렉터리 서비스 서버의 유효성을 확인하지 않으며 맞춤법이나 오류를 인식하지 못합니다. 초기화되면 DSAccess는 먼저 레지스트리를 읽어 DC 또는 GC가 정적으로 구성되었는지 확인합니다. DC 또는 GC가 정적으로 구성된 경우 DC는 동적으로 감지되지 않습니다. 반대로 레지스트리에 정적 구성을 하지 않은 경우 DSAccess는 토폴로지에서 이러한 디렉터리 서비스 서버를 동적으로 감지합니다("동적 서버 감지 및 사용" 절 참조). 이 문서에서 설명하는 레지스트리 키는 기본적으로 제공되지 않습니다.

DSAccess가 정적으로 구성되면 다시 변경되지 않으며 동적으로 감지될 수 있는 다른 DC나 GC도 사용하지 않습니다. 결과적으로 정적으로 구성된 모든 DC나 GC가 정지되면 어떤 DSaccess 작업도 성공하지 못합니다. GC가 정적으로 구성되었지만 레지스트리에 DC가 지정되지 않은 경우에는 사용 가능한 DC가 동적으로 감지되고 사용됩니다. 마찬가지로 DC가 정적으로 구성되었지만 레지스트리에 GC가 지정되지 않은 경우에는 사용 가능한 GC가 동적으로 감지되고 사용됩니다. Config DC가 정적으로 구성되지 않은 경우 Config DC를 사용 가능한 DC 목록에서 취할 수 있는데 이 목록은 구성 여부에 따라 동적 또는 정적으로 발견됩니다. 앞에서 언급했듯이 사용자 컨텍스트 요청에 사용되는 DC와 GC는 프로필에 따라 다릅니다. 이런 이유로 이 설정을 위한 레지스트리의 위치는 Profiles\Default 하위 키에 지정됩니다. 이러한 트랜잭션에 원하는 포트 번호를 지정할 수 있습니다. 그러나 SSL(Secure Sockets Layer)을 사용하려면 먼저 필요한 모든 인증 서비스가 구성되어 있어야 합니다. DSAccess에서 사용하도록 DC와 GC 서버를 정적으로 구성하려면 다음 레지스트리 키가 필요합니다.
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSExchangeDSAccess\Profiles\Default\UserDC1 (UserDC2 등)

IsGC = REG_DWORD 0x0
HostName = REG_SZ DC_DomainName.CompanyName.com
PortNumber = REG_DWORD (기본적으로 0x185 또는 SSL의 경우 0x27C)
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSExchangeDSAccess\Profiles\Default\UserGC1 (UserGC2 등)

IsGC = REG_DWORD 0x1
HostName = REG_SZ GC_DomainName.CompanyName.com
PortNumber = REG_DWORD (기본적으로 0xCC4 또는 SSL의 경우 0xCC5)
DSAccess에서 사용하는 Config DC는 다음 세 가지 방식으로 설정할 수 있습니다.
  • 레지스트리에 정적으로 구성
  • 동적으로 감지
  • SetConfigDCName() 함수 호출 방식
Config DC를 설정하는 처음 두가지 방식은 다음 레지스트리 참조 후에 설명됩니다. SetConfigDCName()은 DSAccess 지원 함수로서, 같은 컴퓨터에 있지만 DSAccess를 사용하지 않는 다른 디렉터리 서비스 소비자를 구성 컨텍스트 요청(예: 시스템 수행자)에 사용되는 DC와 일치시키기 위해 설계되었습니다. 이 호출은 Exchange 2000의 설치 단계에서 특히 중요합니다. Config DC(예: SetConfigDCName() 또는 DsctxGetContextEx2())를 무시하는 프로그래밍 방식 호출은 DC가 Config DC가 되도록 레지스트리에 정적으로 구성된 경우에는 무시됩니다. DSAccess에서는 정적 Config DC 구성을 제안 사항으로 취합니다. 다시 말하면, Config DC가 정적으로 구성된 경우 DSAccess에서는 초기에 구성 컨텍스트 요청에 대해 이 DC를 사용합니다. 이 DC를 사용할 수 없게 되면 대체 DC가 사용 가능한 DC 목록에서 선택됩니다. 이런 경우 DSAccess는 먼저 정적으로 구성된 DC를 대상으로 지정하려고 시도하여 Config DC에 장애가 발생합니다. 정적으로 구성되지 않은 DC가 있으면 DSAccess는 기존 DC를 동적으로 감지하려고 시도합니다. 앞에서 언급했듯이 Config DC는 모든 프로필이 공유합니다. 이런 이유로 Config DC의 레지스트리 설정은 다음 예와 같이 \Instance0 하위 키에 지정됩니다. 정적으로 구성된 다른 디렉터리 서비스 서버와 마찬가지로 구성 컨텍스트 요청에 원하는 포트 번호를 지정할 수 있습니다.
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSExchangeDSAccess\Instance0

ConfigDCHostName = REG_SZ configDC_DomainName.CompanyName.com
ConfigDCPortNumber = REG_DWORD (기본적으로 0x185 또는 SSL의 경우 0x27C)

DSAccess 동적 DS 서버 감지 및 사용

초기화되고 난 후 DSAccess가 레지스트리에서 정적으로 구성된 DC나 GC의 집합을 찾지 못한 경우 토폴로지에서 사용 가능한 디렉터리 서비스 서버를 동적으로 감지합니다. 감지 알고리즘은 DSAccess가 DC 또는 GC를 감지하는지 여부에 따라 다르며 Exchange 2000 서버의 위치에 따라 다릅니다.

초기에 레지스트리를 검사한 후에 DSAccess는 DsGetDCName()에 대한 Win32 API 호출을 사용하여 Exchange 2000 서버(또는 DsctxGetContextEx2() 호출에서 호출자가 전달한 경우 특정 DC)의 로컬 도메인에서 모든 DC에 DsBind를 실행합니다. DSAccess는 이 DC에 대해 DsListServersForDomainInSite() Win32 API 호출을 실행합니다. 이 호출은 로컬 도메인과 사이트에 있는 모든 DC 목록을 제공합니다. DSAccess는 각 프로필에 최대 10개의 DC를 저장하고 각 프로세스마다 프로필 간의 로드 균형은 라운드 로빈 방식으로 조정됩니다. GC 감지 알고리즘은 약간 다릅니다.

DSAccess는 GC 감지의 경우 위와 같은 DC 연결을 사용합니다. DsListServersInSite()는 DSAccess 내부 API로서, 이것을 호출하면 사이트에 있는 모든 "서버"가 나열됩니다.

참고: DsListServersInSite에서 "Server"는 위 호출과 Win32 API 호출에서 그 의미가 다르며 이것은 API 정의의 버그입니다. 현재 디렉터리 서비스 감지를 위한 모든 Win32 API는 도메인과 관련된 것입니다. Exchange 2000은 GC에 상당히 의존하기 때문에 느린 링크로 연결된 도메인이 여러 사이트에 펴져 있어 발생할 수 있는 지연 문제를 피하기 위해 DSAccess는 자체 사이트 관련 디렉터리 서비스 감지 메커니즘을 만들었습니다.

DSAccess가 바인딩되는 현재 DC에 대한 LDAP 연결을 사용하여 Exchange 2000 서버의 로컬 사이트에 있는 각 디렉터리 서비스 서버(있는 경우)에 대한 NTDS 설정 개체의 Options 속성을 읽습니다. 서버는 Options 속성이 있고 GC 플래그가 설정된 경우에만 GC로 간주됩니다. DSAccess가 현재 사이트에서 GC를 발견하지 못하면 Win32 API DsGetDCName()을 호출하여 사용 가능한 단일 GC를 반환합니다. DSAccess는 단일 "원격" GC만 선택하는데 이것은 이 GC가 느린 링크 종단에 있다고 여겨지기 때문입니다. 이 시나리오에서는 원하는 로드 균형 조정의 확장성을 얻지 못합니다.

DSAccess는 Kerberos 티켓이 시간 초과된 경우(기본 기간은 10시간), 구성을 수정한 경우(새로운 GC나 DC가 토폴로지에 추가된 경우) 또는 모든 GC나 DC가 정지된 경우에 전체 네트워크를 다시 감지합니다. 일반 작업에서 GC나 DC는 정지될 수 있으며 이러한 경우 DSAccess는 사용 가능한 다른 서버가 있는 경우 네트워크를 다시 감지하지 않습니다. 단순히 특정 디렉터리 서비스를 "Down"으로 플래그 지정하며 이후에는 5분마다 핑(ping)합니다. 이 정지된 디렉터리 서비스가 다시 온라인으로 복구되면 다시 한번 사용됩니다.

DSAccess에서 사용하는 Config DC는 DSAccess가 초기에 동적으로 감지한 DC와 GC 중에서 처음으로 바인딩된 것과 동일한 DC로 기본 설정됩니다. DC나 GC가 정적으로 구성되고 명시적으로 구성된 Config DC가 없으면 DSAccess는 DC 구성 목록에서 첫번째 DC를 Config DC로 사용합니다. DSAccess에서 사용하는 Config DC를 사용할 수 없게 되면 사용 가능한 DC 집합에서 다른 Config DC가 선택됩니다. Config DC가 수정되면 DSAccess는 같은 컴퓨터의 모든 프로세스에 변경 사항을 전파합니다.

속성

기술 자료: 250570 - 마지막 검토: 2002년 2월 14일 목요일 - 수정: 1.0
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft Exchange 2000 Server Standard Edition
키워드:?
kbinfo kbexchange2000sp2fix KB250570

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com