X.400 接続のトラブルシューティング
X.400 コネクタは、多くの構成オプションを持つオブジェクトです。システム管理者の間の誤解によって起こる入力ミスや基本的な構成エラーが、X.400 に関係する転送問題の最も一般的な原因です。また、X.400 の通信パートナーの酷使 (たとえば、1988 年版の X.400 システムが 1984 年版の X.400 システムと通信したときに、1984 年版の規模の X.400 機能に戻らない場合) や、X.400 通信パートナによって発生する完全なプロトコル違反によっても、転送の問題が発生します。
次に示すのは、X.400 コネクタで発生するメッセージ転送問題の一般的な原因です。
接続試行がタイムアウトする Exchange MTA がリモート MTA との接続を確立できない場合は、リモート MTA のアドレス情報が正しいかどうかを確認します。X.25 を介して通信する場合は、EICON カードが接続を正常に確立できることを確認します。TCP/IP を介して通信する場合、名前解決が機能していることを確認し、Ping ツールを使用してリモート ホストの IP アドレスを調べます。リモート MTA の IP アドレスに ping を実行して失敗したら、一般的なネットワークの問題を解決する必要がある場合があります。リモート MTA の IP アドレスに ping を実行して成功したら、送信および受信のオープン システム相互接続 (OSI) アドレス情報 (つまり、T セレクタ、S セレクタ、および P セレクタ) が正しいかどうかを確認します。[OSI アドレス] ボタンをクリックして、OSI アドレス情報を MTA トランスポート スタックまたは X.400 コネクタの [スタック] タブに指定します。[T セレクタ](PSAP)、[S セレクタ](SSAP)、および [P セレクタ](PSAP) には、16 進数でもテキストでも入力できます。必須フィールドだけが、正しい形式で指定されていることを確認します。複数の X.400 コネクタが同じトランスポート スタックを使用して外部 X.400 MTA に接続する場合は、各コネクタが [T セレクタ] に指定された一意の値を持っていることを確認します。[T セレクタ] には、X.400 プロトコルのトランスポート層へのエントリ ポイントを指定するので、一意である必要があります。
注 : [P セレクタ] は、1984 年版のモードではサポートされていません。[S セレクタ] は、1988 年版の X.410 モードではサポートされていません。[T セレクタ] が X.400 MTA 全体で最も均等に使用されています。 接続試行が拒否される X.400 システムは、通信相手の MTA とセキュリティ情報が一致しないと、その通信を拒否します。セキュリティ情報は、リモート MTA 名とパスワードに加え、ローカル MTA 名とパスワードで構成されます。リモート パスワード フィールドとローカル パスワード フィールドでは大文字と小文字が区別され、接続を試みる MTA によって発信された情報と正確に一致する必要があります。リモート MTA 名とリモート パスワードは、コネクタの [全般] タブで指定します。Exchange MTA は、ローカル MTA 名に Exchange サーバーの名前を使用します。この名前を変更する必要があるか、ローカル MTA のパスワードを指定する必要がある場合は、コネクタの [優先] タブに切り替えて、[変更] をクリックします。
接続が切断される メッセージの転送中に接続が突然切断された場合は、ローカル MTA とリモート MTA の X.400 プロトコル パラメータが一致しないことを示します。コネクタの [詳細設定] タブで設定を確認します。リモート MTA の機能に従って、準拠する勧告 (1984 年版または 1988 年版) が正しく選択されていることを確認し、リモート MTA が Exchange システムでない場合は、[Exchange コンテンツを許可する] チェック ボックスをオフにします。[Exchange コンテンツを許可する] オプションによって、Exchange MTA は X.400 以外のボディ部を X.400 コネクタを介して送信しますが、Exchange 以外のシステムではこれをプロトコル違反として識別する場合があります。
注 : リモート MTA の準拠する勧告と一致するように X.400 コネクタを構成し、Exchange 以外の MTA と接続する場合は Exchange コンテンツを許可するためのオプションは必ず無効にする必要があります。また、一般的な Exchange 以外の MTA では、[双方向で交互に送受信する] チェック ボックスをオフにする必要があります。1984 年版の X.410 または 1988 年版の X.400 の MTA に送信する場合は、[BP-15 (BP-14 を含む) を許可する] を使用できます。 また、[その他の値] ボタンをクリックして、[優先] タブのコネクタの RTS (Reliable Transfer Service) 値も確認します。[チェックポイント サイズ (KB)]、[回復のタイムアウト (秒)]、および [ウィンドウ サイズ] 設定がリモート MTA の構成と一致することを確認します。たとえば、ウィンドウ サイズによって、ローカル MTA が確認応答なしに送信可能なデータ パケットの量が決定します。リモート MTA のウィンドウ サイズが大きすぎると、リモート MTA のウィンドウが超過すると同時にリモート MTA は接続を切断します。ウィンドウ サイズが小さすぎる場合、ローカル MTA が許容されるパケットをすべて送信してリモート MTA からの受信確認を待機していると、接続はタイム アウトになります。リモート MTA はより多くのデータ パケットを予期しているので、受信確認は決して送信されません。使用する RTS 値を決定する作業は、リモート MTA のシステム管理者と共に行ってください。
TPDU (Transport Protocol Data Unit) のサイズが大きすぎる Lotus Soft-Switch EMX などの一部の X.400 システムには、2 KB の TPDU サイズのサポートが必要です。この TPDU サイズをサポートするように Exchange MTA を構成するには、Windows レジストリ エディタを起動し、[Supports 2K TPDU] という REG_DWORD レジストリ キーの値を 0 から 1 に変更します。このレジストリ キーは、以下の場所にあります。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSExchangeMTA\Parameters
注意 : レジストリ エディタを正しく使用していない場合、オペレーティング システムの再インストールを余儀なくされるような重大な問題が発生する可能性があります。Microsoft は、レジストリ エディタの誤った使用方法によって発生した問題について、その解決を保証いたしません。レジストリ エディタはユーザーの責任において使用してください。 一方向のメッセージが転送されない 一方向のメッセージ転送は正しく動作していますが、反対方向のメッセージが正しく転送されません。これは、RTS 値が一致していないか、または名前解決の問題によって発生します。たとえば、ローカル MTA とリモート MTA が IP アドレスまたは NetBIOS 名ではなく完全修飾ドメイン名 (FQDN) で構成されている場合、ローカル MTA は受信接続の IP アドレスを完全修飾ドメイン名 (FQDN) に解決して、接続を行っている X.400 コネクタを識別できない場合があります。ローカル MTA は、IP アドレスをホスト名に解決しようとします。最初に、ローカル HOSTS ファイルを検索します。見つからないと、MTA は次に、ドメイン ネーム システム (DNS) にホスト名を照会します。また、この逆引き参照にも失敗すると、接続試行は終了します。
注 : 逆引き参照が成功するためには、DNS サーバーに、IP アドレスを FQDN に対応付ける、リモート MTA のポインタ (PTR) レコードを DNS に持たせる必要があります。
メッセージング接続をテストする
X.400 接続をテストする最適な方法は、Outlook から X.400 ユーザーにサイズの大きいファイルが添付された電子メール メッセージを送信することです。サイズの大きい添付ファイルをお勧めする理由は、たとえば、小さいテスト メッセージを送信しても RTS 値が不一致であることが明らかにならないからです。メッセージのアドレスを指定するには、電子メール メッセージの一時 X.400 アドレスを作成します。
電子メール メッセージで一時アドレスを作成するには、以下の手順を実行してください。
- Outlook を開いて、新しい電子メール メッセージを開始して、[宛先] をクリックします。
- [名前の選択] ダイアログ ボックスの [詳細設定] をクリックし、[新規作成] をクリックします。
- [エントリの作成] ダイアログ ボックスの [作成先] で [このメッセージのみ] チェック ボックスをオンにし、エントリの種類の一覧から [X.400 アドレス] を選択し、[OK] をクリックします (図 1)。
- [X.400 アドレスのプロパティ] ダイアログ ボックスで、受信者情報を指定します。正しい X.400 アドレスを形成するには、"表示名" フィールド、PRMD フィールド、ADMD フィールド、および "国/地域名" フィールドに加えて、"姓" フィールドなどの 1 つの追加フィールドに入力する必要があります。送信先ユーザーの X.400 アドレスに追加フィールドがある場合は、それらのフィールドも同様に指定する必要があります。
- [宛先] をクリックします。
注 : 別の方法として、[宛先] 行に直接、一時 X.400 アドレスを入力することもできます。例を次に示します (角かっこを含む文字列全体を入力してください)。 [x400:c=us;a=exchange;p=contoso;s=lastname]
メッセージ ルーティングが双方向で機能していることを確認してください。X.400 ユーザーに、メッセージに返信するよう依頼し、メッセージ転送が反対方向でも機能しているかどうかを確認します。
X.400 メッセージ フローを確認する
X.400 コネクタを介したメッセージの転送に使用される Exchange メッセージ キューは、Connector for Lotus Notes または Connector for Novell GroupWise の場合のキューと同じですが、違う点は、Exchange MTA が送信メッセージを、Exchange ストアの MTS-OUT フォルダではなく、ファイル システムの内部 MTA メッセージ キューに格納することです。図 2 は、Exchange Server 2003 から X.400 リモート MTA へのメッセージ フローを示しています。
Exchange 2003 から X.400 へのメッセージ フローを次の順序で確認します。
**Outlook クライアントの送信トレイ フォルダを調べる **別のユーザーにメッセージを送信すると、メールボックス ストアが送信元のクライアントからメッセージを受け取り、ストア ドライバがルーティングおよび転送を担当する SMTP サービスにメッセージを渡します。メッセージが送信トレイから送信されない場合は、メールボックス サーバーの SMTP サービスが実行しているかどうかを確認します。
SMTP トランスポート エンジンの内部メッセージ キューを確認する Exchange システム マネージャの [キュー] コンテナには、複数の SMTP メッセージ キューが含まれます。これらのキューには、ルーティング処理中のさまざまな段階のメッセージが含まれています。SMTP メッセージ キューの詳細については、このトピックの後で説明する「SMTP の接続に関するトラブルシューティング」を参照してください。
X.400 受信者側では、ルーティングは次のように行われます。- メッセージは SMTP サービスのアドバンスド キュー コンポーネントに渡され、そこで分類前キューに格納されます。
- カテゴライザが受信者および送信者のアドレスを解決し、メールが有効なグループがあれば展開します。X.400 受信者側では、メッセージは分類後のキューに格納されます。カテゴライザの詳細については、「Exchange 以外のメッセージング システムとの相互運用および Exchange Server 2003 への移行」を参照してください。
- メッセージはリモート受信者宛てなので、アドバンスド キュー エンジンはメッセージをルーティング前キューに移動します。
- ルーティング エンジンは、ルーティング前キューからメッセージを取得し、メッセージを配信するためのルートを決定します。受信者のアドレスの種類 (つまり X.400) を処理する X.400 コネクタ インスタンスをメッセージに割り当てます。Exchange MTA が X.400 コネクタを使用するので、ルーティング エンジンはメッセージを Exchange MTA に渡します。
Exchange MTA の [ルーティング待ちのメッセージ] キューを確認する このキューには、Exchange MTA によってルーティングされることを待っているメッセージが含まれています。このキューにメッセージが長期間残る場合、Exchange MTA に問題がある場合があります。
X.400 コネクタのメッセージ キューを確認する ルーティング エンジンがメッセージを Exchange MTA に渡すと、MTA はメッセージを内部のメッセージ キューに格納します。そのキューは MTA が Exchange ストアとは別にファイル システムに保持しています (\Program Files\Exchsrvr\Mtadata)。Microsoft Exchange MTA Stacks サービスが実行している場合、Exchange システム マネージャでは X.400 コネクタのキューのみを表示できます。[キュー] コンテナのキューの名前は、最初のコネクタの作成時に ([全般] タブの [名前] ボックスで) コネクタに割り当てた名前に対応しています。
注 : 壊れたメッセージが X.400 コネクタ メッセージ キューをブロックしていると疑われる場合、MTA チェック ツールを使用して MTA メッセージ キューの整合性を確認します。また、必要に応じて、MTA チェック ツールを使用して MTA メッセージ キューを修復することもできます。このツールをダウンロードするには、https://go.microsoft.com/fwlink/?LinkId=25924 を参照してください (このサイトは英語の場合があります)。 アプリケーション イベント ログおよびその他のプロトコル ログを調べて、Exchange MTA とリモート MTA との間の通信を確認する Exchange 2003 は、X.400 コネクタ用に別のコネクタ サービスは実行しません。代わりに、Exchange MTA はコネクタ構成オブジェクトを使用して、メッセージ転送に使用するプロトコル パラメータを決定します。リモート MTA と通信するのは、Exchange MTA 自体です。
X.400 通信を調べるために利用できるログは、次の 4 種類です。アプリケーション イベント ログ 既定では、Exchange MTA は最低限の情報のみをアプリケーション イベント ログに書き込みます。Exchange システム マネージャで、Exchange MTA のイベント ログの出力レベルを上げるには、ブリッジヘッド サーバーのプロパティを表示し、[診断ログ] タブに切り替えます。[サービス] の [MSExchangeMTA] を選択し、[分類] で [X.400 Service] など、MTA に属しているさまざまなカテゴリを選択します。最も詳細な情報を取得するには、ログ出力レベルを [最大] に設定します。X.400 コネクタに固有のサービスはないことに注意してください。すべてのログ出力は、Exchange MTA の動作に直接関連しています。
注 : 診断ログの出力レベルを [最大] に設定すると、非常に多数のイベントがアプリケーション イベント ログに書き込まれる可能性があります。このため、アプリケーションおよびシステムのイベント ログ サイズを 30 MB に設定し、必要に応じてイベントを上書きするオプションを有効にすることをお勧めします。コネクタのテストを終了した後には、忘れずに既定の設定である [なし] を再度適用してください。 EV0.log これは、Exchange MTA がアプリケーション イベント ログ以外に書き込むことができるテキスト ファイルです。このログには、イベント ビューアに表示される情報が格納されます。このファイルはテキスト ファイル形式なので、ワード プロセッサでイベントを簡単に表示することができます。このログ ファイルを有効にするには、Exchange MTA のレジストリ パラメータを設定する必要があります。[Text Event Log] という REG_DWORD パラメータの値を 0 (既定値) から 1 に変更します。Microsoft Exchange MTA Stacks サービスを再起動して、変更内容を有効にします。Exchange MTA は、EV0.log ファイルを \Program Files\Exchsrvr\Mtadata ディレクトリに作成します。
[Text Event Log] パラメータは、以下の場所にあります。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services \MSExchangeMTA\Parameters
注意 : レジストリ エディタを正しく使用していない場合、オペレーティング システムの再インストールを余儀なくされるような重大な問題が発生する可能性があります。Microsoft は、レジストリ エディタの誤った使用方法によって発生した問題について、その解決を保証いたしません。レジストリ エディタはユーザーの責任において使用してください。 AP0.log Interface カテゴリと Interoperability カテゴリの診断ログの出力レベルを [最大] に設定すると、APO.log ファイルが生成されます。このログ ファイルには、ローカル MTA とリモート MTA の接続の確立とデータの送信に関する情報が格納されます。MTA 間で交換されるプロトコル データ ユニットを調べる必要がある場合に、この情報が役立ちます。このファイルは、\Program Files\Exchsrvr\Mtadata ディレクトリにあります。
BF0.log X400 Service カテゴリと APDU カテゴリの診断ログの出力レベルを [中] または [最大] に設定すると、BF0.log ファイルが生成されます。このログ ファイルには、Exchange MTA が送受信したメッセージのバイナリ ダンプが格納されます。
また、X.400 システムから Exchange 2003 へのメッセージ転送を確認する必要がある場合も、アプリケーション イベント ログと追加のログ ファイルが役立ちます。図 3 は、X.400 システムから Exchange 2003 へのメッセージ転送の個々の段階を示したものです。
X.400 システムから Exchange 2003 へのメッセージ フローを次の順序で確認します。
- Exchange MTA の [ルーティング待ちのメッセージ] キューを確認する Exchange MTA は、リモート MTA からメッセージを受信した後で、Active Directory と通信してメッセージの送信先を特定する必要があります。メッセージは Exchange ユーザー宛てのものなので、Exchange MTA はメッセージを SMTP メールボックス ストア キューに格納します。Exchange システム マネージャでこのキューを表示するには、[キュー] コンテナの [ルーティング待ちのメッセージ] を選択し、[メッセージの検索] をクリックします。
- SMTP メールボックス ストア キューを確認する Exchange ストア ドライバは、このキューからメッセージを取得して、SMTP サービスに転送します。SMTP トランスポート エンジンは、メッセージを受信し、分類して、送信先の受信者にルーティングします。SMTP サービスを介したメッセージ転送の詳細については、「SMTP の接続に関するトラブルシューティング」を参照してください。
- アプリケーション イベント ログおよびその他のプロトコル ログを調べて、Exchange MTA とリモート MTA との間の通信を確認する これらのログを確認する方法については、既にここで紹介しました。