2011-06-30 4 views
0

私は数日間Googleを検索しましたが、回答は出ていません。 1週間前に、サーバーの移行を行いました。我々は(と私はそれが私たちの非クラスタ化された開発環境のための私のローカルマシン上で動作させることはできません)次のコードは、1台のサーバー上で動作するクラスタ環境を持っているが、他のではない:LDAPで「サーバーが動作しない」エラーの原因

rootDSE = New DirectoryEntry("LDAP://nonfullyqualifieddomain/RootDSE") 

私がしようとした場合上記の質問タイトルに記載されている一般的なエラーが出ます(もう一度、サーバーの1つで動作しますが、他のサーバーでは動作しません)。

私はこれを行う際にDirectoryEntryオブジェクトがインスタンス化されるしかし、:

rootDSE = New DirectoryEntry("LDAP://fully.qualified.domain", adUserId, adPassword, AuthenticationTypes.Secure) 

私がオンライン見たものに基づいて、私の最高の推測では、それが権限または構成とは何かを持っているということですが、私はありませんアプリケーションのサーバー管理サイドに精通しています。任意の提案をいただければ幸いです!

+0

「サーバーは動作していません」というエラーメッセージが表示されますか?あなたが全体のエラーメッセージを提供してくださいできない場合は? –

+0

"Server not operational"メッセージでSystem.Runtime.InteropServices.COMExceptionを生成します。 –

+0

この例外にはErrorCodeプロパティも必要です(http://msdn.microsoft.com/en-us/library/af1y26ew%28v=80.aspxによる)。それが何であるかを確認してください。 –

答えて

1

悪いアドレスにLDAPサーバーを接続しようとしていたため、私が作業していたインフラストラクチャの中で「サーバーが機能していません」というメッセージが表示されました。

  • 悪いDNS解決
  • 悪いNetBIOS解決
  • ファイアウォールのフィルタリング

私のアドバイスそれは生産およびテスト環境用にDNS解決を使用すると、直接IPアドレスを使用する:これが起因していました開発環境のために。

使用しているアドレスに389(または636)ポートがバインドされていることを確認してください。接続することができます。 Windows Server 2008でLDP.EXEはLDAP接続をテストするための優れたツールです(W2K3リソースキットにあります)。開発用コンピュータでは、Apache Directory Studioを使用します。これは、ディレクトリ接続とコンテンツをテストするための優れたツールです。

0

従来のアプリケーションで同じエラーが発生しました。これはメモリリークの問題です。この問題を回避するために、一度コードを使用してDirectoryエントリを破棄していることを確認しました。次のようなメッセージが表示されます。

using (System.DirectoryServices.DirectoryEntry OUEntry 
    = new DirectoryEntry(domain, userName, userPassword)) 
{ 
    // your code here 
} 
関連する問題