Active Directory サイトベースのルーティングについて

 

適用先: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007

トピックの最終更新日: 2007-08-20

Microsoft Exchange Server 2007 ハブ トランスポート サーバーは、組織内のメールボックスにメッセージをルーティングします。さらに、リモート ドメインに配信されるメッセージを、そのリモート ドメインへのメッセージ配信を処理するように構成されているコネクタにルーティングします。Exchange 2007 では、組織内のメッセージ ルーティング トポロジおよびルーティングの決定は、既存の Active Directory ディレクトリ サービスのサイト トポロジに基づきます。ここでは、Exchange 2007 で、同じ Exchange 組織内にあるトランスポート サーバー間で Active Directory サイトベースのルーティングを実装する方法について説明します。

Exchange 2007 のメッセージ ルーティングの概要

ルーティングの決定は、メッセージの分類時に行われます。カテゴライザは、Microsoft Exchange Transport サービスのコンポーネントで、すべての受信メッセージを処理し、指定された受信者に関する情報に基づいてメッセージに対する処理を決定します。カテゴライザは、いくつかの段階にわたってメッセージを処理し、メッセージの処理中に Microsoft Exchange Transport サービスの他のコンポーネントも使用します。メッセージが Exchange 2007 トランスポート サーバーで受信され、SMTP 受信時に発生する予備処理が完了した後で、メッセージは発信キューに配信されます。メッセージは、次の段階でカテゴライザを介して発信キューから移動されます。

  • 送信されたメッセージのエージェントによる処理   分類するメッセージを受信するときに、ハブ トランスポート サーバー上でエージェント処理が発生します。この段階で適用されるエージェントには、オプションの Forefront Security for Exchange Server ウイルス対策エージェントとジャーナリング エージェントがあります。
  • 受信者の解決   この段階では、受信者の電子メール アドレスが解決され、受信者が Exchange 組織内のメールボックスを持つのか、外部の電子メール アドレスを持つのかが判断されます。
  • ルーティング   受信者に関する情報が解決された後で、カテゴライザのルーティング コンポーネントは、メッセージの最終的な送信先とその送信先へのルートを決定し、メッセージ中継のために次のセグメント (ホップ) を選択し、次ホップ情報を物理的なサーバーおよび IP アドレスの一覧に解決します。
  • コンテンツ変換   メッセージが次ホップに中継される前に、受信者の読みやすい形式でメッセージが送信されるように、コンテンツ変換が行われます。コンテンツ変換では、メール フローまたはストレージのために (MAPI から MIME、UUEncode から Base64 エンコードなど)、または電子メール クライアントに固有の適切な表示のために (HTML から RTF、RTF からプレーン テキストなど)、電子メール メッセージをある形式から別の形式に変換します。
  • ルーティングされたメッセージのエージェントによる処理   特定のメッセージのルーティングが決定された後で、トランスポート ルール エージェントとジャーナリング エージェントがハブ トランスポート サーバーに適用されます。ジャーナリング エージェントは、メッセージの送信時とルーティング時の両方に適用されます。これにより、たとえば、配信先アドレスを変更するか、メッセージ固有のジャーナリングの要件を適用する場合に、トランスポート ルール エージェントによってメッセージに加えられたすべての変更が、ジャーナリング エージェントをバイパスしないようにできます。
  • メッセージのパッケージおよび DSN の生成   最終的な分類されたメッセージが構築され、配信キューに移動されます。この段階で、配信状態通知 (DSN) も生成される場合があります。

メッセージは、次に、SMTP 送信、ストア ドライバ、または外部のゲートウェイ接続ハンドラによって処理されます。これは最終的な送信先によって異なります。外部ゲートウェイ接続ハンドラは、外部コネクタ用に構成されたドロップ ディレクトリへのメッセージの配信を管理する、Microsoft Exchange Transport サービスのコンポーネントです。受信者へのルートが見つからない場合、メッセージは配信不能キューに置かれます。それぞれの配信キューは、次ホップの送信先を表します。

図 1 は、ルーティングの各段階でメッセージの処理がどのように発生するのか、また次ホップに送信されるメッセージがどのようにキューに入れられるのかを示しています。

図 1   メール フローのルーティング コンテキスト

メール フローのルーティング コンテキスト

note注 :
ここでは、分類のルーティング段階、および Active Directory サイト間でメッセージを中継するために使用されるトポロジ コンポーネントとロジックについて説明します。特定の受信者の種類へのメッセージ ルーティングの詳細については、以下のトピックを参照してください。
外部ドメインへのルーティング
内部のメッセージ ルーティング
共存環境でのメッセージ ルーティング
パブリック フォルダへのメッセージのルーティング

Exchange 2007 のルーティング トポロジおよびコンポーネントは、Exchange Server 2003 および Exchange 2000 Server のものとは大きく異なりますが、通常、次のように相互に関連しています。

  • Active Directory サイトは、Exchange 2003 および Exchange 2000 のルーティング グループと関連があります。
  • IP サイト リンクは、ルーティング グループ コネクタの概念と関連があります。
  • Exchange 2007 のハブ トランスポート サーバーの役割の機能は、Exchange 2003 と Exchange 2000 の専用ブリッジヘッド サーバーの機能と関連があります。

ただし、Exchange サーバーの各バージョンでは、ルーティング パスを決定するために使用する方法が異なります。Exchange Server の複数のバージョンが同じ組織内で展開されている場合に、これらの違いがルーティングに及ぼす影響の詳細については、「共存環境でのメッセージ ルーティング」を参照してください。

組織内のルーティング コンポーネント

Active Directory サイトベースのルーティングを実装するには、Exchange 2007 は Active Directory に格納されている構成情報にアクセスする必要があります。エッジ トランスポート サーバーでは、構成情報はローカル サーバー上の Active Directory アプリケーション モード (ADAM) ディレクトリ サービス インスタンスに格納され、ここからアクセスされます。Microsoft Windows および Exchange 2007 のサービスは、連動して構成データのマッピングを作成します。これらのマッピングは、ルーティング テーブル内にキャッシュされます。Exchange 2007 はルーティングを決定する際にこれらのテーブルを参照します。ルーティング トポロジが変更されると、キャッシュは更新されます。メッセージ転送時に使用される Exchange サービスは、ハブ トランスポート サーバーの役割とエッジ トランスポート サーバーの役割で共通です。ただし、エッジ トランスポート サーバーの役割は、Active Directory トポロジに関する情報をキャッシュしません。

次の構成およびサービス コンポーネントは、内部のメッセージ ルーティングにとって重要です。

  • Active Directory サイト   Active Directory サイトは、ハブ トランスポート サーバーのルーティング境界を表します。ハブ トランスポート サーバーは、メールボックス サーバー、配布グループの展開サーバー、およびローカル Active Directory サイト内のコネクタの送信元サーバーとそのサイトで購読されているエッジ トランスポート サーバーに直接配信します。ただし、ハブ トランスポート サーバーは、リモート Active Directory サイトにある受信者の別のハブ トランスポート サーバー、展開サーバー、およびコネクタにメッセージを中継する必要があります。ハブ トランスポート サーバーの役割を、他の Exchange 2007 サーバーの役割が含まれているすべての Active Directory サイトに展開する必要があります。
  • Active Directory IP サイト リンク   Active Directory IP サイト リンクは、Active Directory サイト間の論理パスを定義します。Exchange 2007 は、IP サイト リンク オブジェクトを参照して、リモート Active Directory サイトへの最小コストのルーティング パスを決定します。
  • 送信コネクタ   送信コネクタは、アドレス スペースにメッセージをルーティングするために使用されます。メッセージが外部ドメインに送信される場合、通常、ルーティングの送信先は送信コネクタになります。複数の電子メール ドメインのメッセージを受け付ける Exchange 組織では、各アドレス スペース専用の送信コネクタを作成することが適切な場合があります。送信コネクタの選択の詳細については、「外部ドメインへのルーティング」を参照してください。
  • ルーティング グループ   ルーティング グループは、Exchange 2003 と Exchange 2000 のルーティング境界を表します。Exchange 2007 が既存の組織内に展開されている場合、ルーティングでは、以前のバージョンの Exchange Server に存在するメールボックスまたはコネクタにメッセージを送信するために、ルーティング グループ内のサーバーの場所を考慮する必要があります。以前のバージョンの Exchange Server との互換性を確立するために、組織内に展開された Exchange 2007 を実行しているすべてのコンピュータは単一のグローバル ルーティング グループに属します。
  • ルーティング グループ コネクタ   ルーティング グループ コネクタは、Exchange ルーティング グループ間の論理パスを定義します。Exchange 2007 が既存の Exchange 2003 または Exchange 2000 組織内に展開されている場合、メッセージはルーティング グループ コネクタを介してサーバーのバージョン間でルーティングされます。最初のハブ トランスポート サーバーが展開されると、セットアップ プロセスによって、グローバル Exchange 2007 ルーティング グループから従来のルーティング グループへのルーティング グループ コネクタを作成するよう求められます。Exchange Server の複数のバージョンが展開されている環境でのメッセージ ルーティングの詳細については、「共存環境でのメッセージ ルーティング」を参照してください。
  • Microsoft Exchange Transport サービス   Microsoft Exchange Transport サービスは、Exchange 2007 の SMTP (簡易メール転送プロトコル) プロバイダで、SMTP IN から SMTP OUT まで、メッセージ処理のすべてのコンポーネントを制御します。一連の構成可能な SMTP 受信エージェントは、さまざまな SMTP イベントによって開始されます。Microsoft Exchange Transport サービスは、これらのエージェントを有効にして、メッセージが SMTP トランスポートを通過し、カテゴライザに送信される前にスパム対策、ウイルス対策、およびその他のタスクを実行することによってメッセージを処理します。
    受信者の解決、ルーティング、およびコンテンツの変換は、分類中に実行されます。追加のエージェントも、トランスポート パイプラインのこの時点で開始されます。Microsoft Exchange Transport サービスは、Exchange トポロジ検出用のトポロジ検出モジュールを使用します。Microsoft Exchange Transport サービスで提供されるコンポーネントおよび処理の詳細については、Microsoft Exchange Server 2007 トランスポート アーキテクチャの図に関するページを参照してください (このサイトは英語の場合があります)。
  • Microsoft Exchange Active Directory トポロジ サービス   Microsoft Exchange Active Directory トポロジ サービスは、Exchange 2007 が Active Directory から構成および受信者データを取得するために使用できる、ドメイン コントローラとグローバル カタログ サーバーを見つけます。また、Microsoft Exchange Active Directory トポロジ サービスは、Exchange 2007 サーバーを最新の状態に保つために Active Directory サイトの類似性を保持します。
  • ルーティング テーブル   ルーティング テーブルは、ルーティング コンポーネントがルーティングを決定するために使用する情報を保持します。ルーティング テーブルには、トポロジ コンポーネントのマップとそれらの相互関係が含まれています。
  • DNS    Exchange 2007 は、Microsoft Exchange Transport サービスのコンポーネントである、拡張ドメイン ネーム システム (DNS) クライアントを使用して、次ホップの選択を接続先サーバー名の一覧に解決します。標準の DNS クライアントは、サーバー名の一覧を IP アドレスに解決するために使用されます。拡張 DNS は、ラウンド ロビンを使用して Exchange 2007 トランスポート サーバーの負荷分散機能を提供します。
  • SMTP   SMTP は、メッセージが SMTP サーバー間で中継される場合に通信のために使用されます。SMTP サーバーは、ハブ トランスポート サーバー、エッジ トランスポート サーバー、Exchange 2000 サーバー、Exchange 2003 サーバー、またはスマート ホストにもすることができます。ハブ トランスポート サーバーは、リモート プロシージャ コール (RPC) を使用して、そのハブ トランスポート サーバーと同じ Active Directory サイト メンバシップを持つメールボックス サーバーに直接メッセージを配信します。

Active Directory サイト

Active Directory サイトは、ネットワークの物理面に基づいた論理的な構成コンポーネントです。Active Directory サイトを作成する主な目的は、ネットワーク内のどのサブネットが Active Directory レプリケーション トラフィックの制御を最適化できる方法で接続されているのかを定義することです。Active Directory サイトのレプリケーション トラフィックは、コネクタを使用したりスケジュールしたりしなくても機能します。ただし、レプリケーション トラフィックが Active Directory サイト間を流れる必要がある場合は、Active Directory サイト リンクの構成によって制御されます。Active Directory サイトは、複数のドメインからサーバーをホストできます。ドメインは、複数の Active Directory サイトで表示できます。

Active Directory サイトは、Exchange 2007 のルーティング境界を表します。ハブ トランスポート サーバーの役割がインストールされているコンピュータは、Active Directory サイト トポロジに基づいてルーティングを決定します。

サイト メンバシップの確認

既定では、Active Directory フォレストには 1 つの Active Directory サイトが含まれます。この Active Directory サイトの既定の名前は、Default-First-Site-Name です。その他の Active Directory サイトを作成しない場合、フォレスト内のすべてのドメイン メンバ コンピュータは、Default-First-Site-Name のメンバになります。この場合、サブネットとサイトの関連付けを構成する必要はありません。追加の Active Directory サイトを作成する場合は、その Active Directory サイトに割り当てるサブネットを指定する必要があります。

各 Active Directory サイトは、1 つ以上の IP サブネットに関連付けられます。管理者は Active Directory サイト メンバシップを、ドメイン コントローラおよびグローバル カタログ サーバーとして構成されているコンピュータに割り当てます。Exchange サーバーなどの他のドメイン メンバ コンピュータは、Active Directory サイトに関連付けられている IP サブネット内にある IP アドレスを使用するよう構成されると、自動的に Active Directory サイト メンバシップを割り当てられます。同じ Active Directory サイト メンバシップを持つコンピュータは、ネットワーク接続が良好であると仮定されます。常に、サーバーは単一の Active Directory サイトのメンバになります。

アプリケーションが、インストールされているコンピュータおよびフォレスト内にある他のコンピュータの Active Directory サイト メンバシップを確認し、通信フローを制御するために情報を使用できる場合、それはサイト対応のアプリケーションです。サイト対応のアプリケーションがドメイン コントローラやグローバル カタログ サーバーなどの別のサーバーのサービスを使用する必要がある場合、それらのサービスを要求しているコンピュータと同じ Active Directory サイト メンバシップを持つサーバーが優先されます。

Exchange 2007 は、サイト対応のアプリケーションであり、Active Directory トポロジを使用して、メッセージ ルーティングや、他の Exchange 2007 サーバーの役割がインストールされているコンピュータで実行されているサービスとの通信を行います。Active Directory サイトは、ルーティング境界であるだけではありません。サービス検出の境界でもあります。

ドメイン メンバ コンピュータのサイト メンバシップの確認は、ローカル IP アドレスと定義されたサブネットを比較してから、適切なサイト メンバシップの関連付けを確認するため、一連の DNS クエリによって異なります。DNS クエリに関連するオーバーヘッドを減らすために、Exchange 2007 Active Directory スキーマの追加には Exchange サーバー オブジェクトの msExchServerSite 属性が含まれています。この属性の値は、Exchange サーバーの Active Directory サイトの識別名です。この属性は、各 Exchange サーバー オブジェクトのプロパティです。サイト メンバシップの類似性がサーバー オブジェクトの属性として格納されている場合、DNS クエリに依存するのではなく、現在のトポロジを Active Directory から直接読み取ることができます。また、サイト メンバシップの関連付けは、購読済みエッジ トランスポート サーバーなどのドメイン以外のコンピュータに対して有効になります。

msExchServerSite 属性の値は、Active Directory トポロジ サービスによって入力され、最新の状態に保たれます。Windows ベースのコンピュータが起動されると、Net Logon サービスはそのコンピュータのサイト メンバシップを確認します。Net Logon サービスはこの情報を使用して、ローカル コンピュータと同じ Active Directory サイト内にあるドメイン コントローラを見つけ、それらのサーバーに対して承認および認証要求を発行します。Microsoft Exchange Active Directory トポロジ サービスは、DsGetSiteName API 呼び出しを使用して、Net Logon サービスからサイト メンバシップの値を取得し、Active Directory サイトの識別名を、Active Directory 内の Exchange サーバー オブジェクトの msExchangeServerSite 属性に書き込みます。

表 1 に、組織で Active Directory サイトを定義する方法を示します。この例では、3 つの Active Directory サイトが定義され、各 Active Directory サイトは複数の IP サブネットに関連付けられます。

表 1   Active Directory サイトとサブネットの関連付けの例

Active Directory サイト名 関連付けられた IP サブネット

サイト A

192.168.1.0/24

192.168.2.0/24

サイト B

192.168.3.0/24

192.168.4.0/24

サイト C

192.168.5.0/24

192.168.6.0/24

HubTransportA という名前のサーバーの IP アドレスが 192.168.1.1 である場合、このサーバーはサイト A のメンバになります。サーバーの IP アドレスを変更することにより、サイトのメンバシップを変更できます。HubTransportA の IP アドレスを 192.168.2.1 に変更した場合、このサブネットもサイト A に関連付けられているため、サーバーの Active Directory サイト メンバシップは変更されません。ただし、サーバーを移動し、IP アドレスを 192.168.3.1 に変更した場合、サーバーはサイト B のメンバであると見なされます。

サブネットと Active Directory サイトの関連付けを変更した場合にも、サイト メンバシップに変化が生じる可能性があります。たとえば、サブネット 192.168.3.0 をサイト B との関連付けから削除し、サイト A に関連付けると、IP アドレスが 192.168.3.1 のサーバーのサイト メンバシップもサイト A に変わります。サイト メンバシップの変化が生じた場合は、Exchange 2007 がルーティングを決定する際にこれらの変更が考慮されるように、常に Exchange 2007 で構成データを更新する必要があります。Active Directory サイト メンバシップの変更が生じてから、トポロジの変更が完全に伝達されるまでに、待ち時間が生じる可能性があります。次の通信は、トポロジの変更を伝達するために次の順序で行われる必要があります。

  1. サイト メンバシップの変更はドメイン コントローラに書き込まれます。更新された情報は、フォレスト内の各 Active Directory サイトのドメイン コントローラ間でレプリケートされます。フォレスト全体に変更が伝達されるまでに要する時間は、サイト リンクによって定義される Active Directory レプリケーション トポロジとスケジュールによって異なります。
  2. Net Logon サービスは、すべての Windows ベースのコンピュータ上で実行され、Active Directory サイト メンバシップの変更を定期的にポーリングします。Net Logon サービスは、5 分間隔でポーリングを実行します。したがって、ローカル ドメイン コントローラが更新を受信してから 5 分以内に、Net Logon サービスによって変更が検出されます。
  3. Microsoft Exchange Active Directory トポロジ サービスは、15 分間隔で Net Logon サービスを照会して、ローカル Exchange サーバーの Active Directory サイト メンバシップを確認します。変更が検出されると、Microsoft Exchange Active Directory トポロジ サービスは MsExchServerSite 属性を更新します。
  4. Exchange サーバー構成オブジェクトの変更されたサイト属性値は、続いて組織全体にレプリケートされます。組織内の Exchange サーバーはこの変更を検出します。次に、新しい Active Directory サイト メンバシップ属性値によってルーティング テーブルが更新されます。

Active Directory サイト メンバシップの変更が有効になってから、更新された情報が別の Exchange 2007 サーバーで使用可能になるまでに、待ち時間が生じる可能性があります。Exchange 2007 でこのような構成の変更が処理される方法の詳細については、後の「再ルーティングと到達不能キュー」を参照してください。

IP サイト リンク

サイト リンクは、Active Directory サイト間の論理パスです。サイト リンク オブジェクトは、指定したサイト間トランスポートを通じて均一なコストで通信できるサイトのセットを表します。サイト リンクは、物理的なネットワーク上のネットワーク パケットによって選択される実際のパスには対応していません。ただし、管理者によってサイト リンクに割り当てられるコストは、通常、基盤となるネットワークの信頼性、速度、および使用可能な帯域幅に関連しています。たとえば、Active Directory 管理者は、速度が 10 Mbps のネットワーク接続よりも、速度が 100 Mbps のネットワーク接続に低いコストを割り当てます。

サイト リンクの既定のコストは 100 です。有効なサイト リンクのコストは、1 から 99,999 までの数字で指定できます。冗長なリンクを指定した場合、低いコストが割り当てられているリンクが常に優先されます。

既定では、すべてのサイト リンクは推移的です。つまり、サイト A にサイト B へのリンクがあり、サイト B にサイト C へのリンクがある場合、サイト A は推移的にサイト C にリンクされます。サイト A とサイト C の間の推移的なリンクは、サイト リンク ブリッジとも呼ばれます。

Active Directory サイト リンクは、通信のトランスポート プロトコルとして IP または SMTP のどちらかを使用して構成できます。Exchange 2007 では、ルーティングを決定する際に IP サイトのみを考慮します。SMTP サイト リンクは、プロトコルを使用してレプリケートできるデータの種類に制限があり、信頼性の高いネットワーク リンクのない Active Directory サイト間のレプリケーションのためにストア アンド フォワード機構を提供するように設定されています。IP サイト リンクでは、レプリケートできるデータの種類に制限がありません。Exchange 2007 では、ルーティング トポロジを確認するために IP サイト リンクのみを使用します。IP サイト リンクに割り当てられているコストは、ルーティング テーブルを計算する際に、Exchange 2007 のルーティング コンポーネントによって考慮されます。これらのコストは、メッセージの最終的な送信先への最もコストの低いルーティング パスを計算するために使用されます。

note注 :
IP サイト リンクには、スケジュールとレプリケーション間隔を割り当てることもできます。これらの属性は、Exchange 2007 メール フローには影響しません。

すべての Active Directory サイトは、少なくとも 1 つの IP サイト リンクに関連付けられる必要があります。DEFAULTIPSITELINK という名前の既定の IP サイト リンクが 1 つあります。Active Directory サイトを作成する場合は、サイトを IP サイト リンクと関連付ける必要があります。追加の IP サイト リンクを作成して目的のトポロジを実装するか、すべての Active Directory サイトを DEFAULTIPSITELINK に関連付けることができます。IP サイト リンクの一部になっているそれぞれの Active Directory サイトは、均一なコストでそのリンク内の他のすべてのサイトと直接通信できます。IP サイト リンクでは、常に、双方向のサーバー間通信が可能です。追加の IP サイト リンクが作成されておらず、すべての Active Directory サイトが DEFAULTIPSITELINK に関連付けられている場合、このトポロジはフル メッシュ トポロジと呼ばれます。フル メッシュ トポロジは、各ネットワーク セグメントが物理的または論理的なポイント ツー ポイントの接続を介して、他のすべてのネットワーク セグメントに直接到達できるネットワーク アーキテクチャです。

図 2 では、フォレスト内に 4 つの Active Directory サイトが構成されています。すべてのサイトは、DEFAULTIPSITELINK に関連付けられています。したがって、各 Active Directory サイトは、同じコスト メトリックを使用して、他のすべてのサイトと直接通信します。複数の通信パスが示されていますが、定義されている IP サイト リンクは 1 つだけです。

図 2   単一の IP サイト リンクによるフル メッシュ トポロジ

単一の IP サイト リンクによるフル メッシュ トポロジ

図 3 では、フォレスト内に 4 つの Active Directory サイトが構成されています。このトポロジでは、管理者は IP サイト リンクを構成して、Active Directory サイトのハブとスポークのトポロジを作成しています。それぞれのスポーク サイトは、中央のサイトと直接通信でき、推移的な IP サイト リンクを使用して相互に通信することができます。

図 3   Active Directory IP サイト リンクのハブとスポークのトポロジ

IP サイト リンクのハブとスポークのトポロジ

Active Directory 管理者は、フォレストの接続および通信要件に最も対応したトポロジを実装します。同じトポロジが Exchange 2007 によって使用されるため、現在のトポロジが効率的なメッセージング通信に対応していることを確認する必要があります。Exchange 組織管理者は、Exchange 固有のコストを IP サイト リンクに割り当てることができます。Exchange コストが IP サイト リンクに割り当てられている場合、このコストが Exchange 2007 によって使用されます。コストが割り当てられていない場合は、Active Directory コストが使用されます。IP サイト リンクに Exchange コストを設定する方法の詳細については、後の「IP サイト リンクのコストの制御」を参照してください。Enterprise Administrators グループのメンバシップを持つ管理者は、追加の IP サイト リンクを作成できます。

Active Directory サイト構成の詳細については、サイト トポロジの設計についてのページを参照してください (このサイトは英語の場合があります)。

トポロジ検出

Exchange 2007 トポロジは、Active Directory サイト トポロジに依存しており、自身の構成はありません。Active Directory トポロジは、次の必要な要素によって Exchange 2007 で使用可能になります。

  • Microsoft Exchange Active Directory トポロジ サービス 
  • Microsoft Exchange Transport サービス内のトポロジ検出モジュール

Microsoft Exchange Active Directory トポロジ サービスは、エッジ トランスポート サーバーの役割を除く、すべての Exchange 2007 サーバーの役割で実行されます。これらの Exchange 2007 サーバーは、Microsoft Exchange Active Directory トポロジ サービスを使用して、Exchange サーバーが Active Directory データの読み取りおよび書き込みに使用できるドメイン コントローラとグローバル カタログ サーバーを検出します。Exchange 2007 は、Microsoft Exchange が Active Directory での読み取りおよび書き込みを行う必要のある、識別されたディレクトリ サーバーにバインドします。

トポロジ検出モジュールは、Microsoft Exchange Transport サービスの一部で、Active Directory トポロジに関する情報を Exchange サーバーに提供します。この API は、組織内の Exchange サーバーと役割を検出し、Active Directory 構成オブジェクトとの関係を確認します。構成データは、Active Directory から取得され、そのコンピュータで実行されている Exchange サービスがアクセスできるようにキャッシュされます。

トポロジ検出モジュールは、次の手順を実行して、Exchange ルーティング トポロジを生成します。

  1. データが Active Directory から読み取られます。次のすべてのオブジェクトが取得されます。
    • Active Directory サイト。
    • IP サイト リンク。
    • すべての Exchange サーバー。これらのサーバーに展開されている Exchange 2007 サーバーの役割に関する情報が含まれます。
  2. 手順 1. で取得されるデータは、初期トポロジを作成し、関連する構成オブジェクトのリンクおよびマッピングを始めるために使用されます。
  3. Exchange サーバーは、Active Directory に格納されている Exchange サーバー オブジェクトからサイト属性値を取得することにより、Active Directory サイトと整合されます。
  4. ルーティング テーブルは、取得された情報の集合によって更新されます。

この処理によって、すべての Exchange 2007 サーバーは、組織内の他の Exchange サーバーを認識し、Exchange サーバーの互いの距離を把握します。

Exchange 2007 ルーティング テーブル

Microsoft Exchange Transport サービスは開始すると、Active Directory から取得される情報のスナップショット、または ADAM からエッジ トランスポート サーバーに基づいて一連のルーティング テーブルを計算します。ADAM に格納されている構成情報には、使用可能なコネクタと承認済みドメインが含まれますが、トポロジ データは含まれません。

ルーティング コンポーネントは、ルーティング テーブルを参照し、メッセージを受信者にルーティングする方法を決定します。構成が変更されると、ルーティング テーブルは再構築されます。新しいルーティング テーブルは、新しい受信メッセージをルーティングするために使用されます。ルーティング コンポーネントが構成の変更によって影響を受けることを確認すると、リモート配信キュー内のメッセージも再ルーティングされます。メッセージ ルーティングに関する詳細については、後の「再ルーティングと到達不能キュー」を参照してください。

次の構成データは、Active Directory から取得され、ハブ トランスポート サーバーのルーティング コンポーネントで使用できるようになります。

  • Active Directory サイト
  • Active Directory IP サイト リンク
  • Exchange サーバーおよび Active Directory サイトとそれらの関係
  • SMTP コネクタ
  • SMTP コネクタ以外 (Exchange 2003 または Exchange 2000 によってホストされている Exchange 2007 外部コネクタとすべての SMTP 以外のコネクタを含みます)
  • ルーティング グループ
  • ルーティング グループ コネクタ
  • メールボックス ストア (プライベート メッセージ データベース [MDB])
  • パブリック フォルダ ストア (パブリック MDB)
  • パブリック フォルダ階層

このデータに基づいて、Microsoft Exchange Transport サービスのルーティング コンポーネントは、ルーティング テーブルの値を設定し、ルーティングの決定を効率化します。ルーティング テーブルは、データを相互に関連付けて、トポロジ マップを作成します。このトポロジ マップには、次の要素が含まれます。

  • リンクされたコネクタのマップ   このマップは、ローカル サーバー上の受信コネクタの ID をリンクされた送信コネクタと関連付けます。
  • サーバー マップ   サーバー マップには、組織内のすべての Exchange 2007 ハブ トランスポート サーバー、エッジ トランスポート サーバー、メールボックス サーバー、および Exchange 2000 サーバーと Exchange 2003 サーバーが含まれます。このマップは、各 Exchange サーバーの識別名をサーバー ルーティング データと関連付けます。これには、サーバーに到達するための総コストが含まれます。
  • 従来のサーバー マップ   従来のサーバー マップには、組織内のすべての Exchange 2007 ハブ トランスポート サーバー、エッジ トランスポート サーバー、メールボックス サーバー、および Exchange 2000 サーバーと Exchange 2003 サーバーが含まれます。このマップは、各 Exchange サーバーの従来の識別名をサーバー ルーティング データと関連付けます。これには、サーバーに到達するための総コストが含まれます。このマップは、ストア優先機能をサポートします。ストア優先機能は、パブリック フォルダに固有です。詳細については、「パブリック フォルダへのメッセージのルーティング」を参照してください。
  • MDB マップ   組織内のすべての MDB は、MDB マップに含まれます。このマップは、各 MDB サーバーの識別名をサーバー ルーティング データと関連付けます。これには、サーバーに到達するための総コストが含まれます。
  • Active Directory サイト マップ   このマップは、各 Active Directory サイトを、ローカル サイトからすべての他のサイトへの最小コストのルーティング パスを含む構造に関連付けます。マップには、最小コストのルーティング パス上にあるすべてのハブ サイトが含まれます。各ルーティング パス ホップは、拡張 DNS コンポーネントによって使用されるサイト内のすべてのハブ トランスポート サーバーも識別します。
  • ルーティング グループ マップ   このマップは、Exchange 2007 ルーティング グループから従来のルーティング グループそれぞれへの最小コストのルーティング パスに、総コストと最初のホップ ルーティング グループ コネクタを関連付けます。
  • 送信コネクタ マップ   このマップは、組織内で構成されている送信コネクタと、各コネクタの接続元サーバーを識別します。

ルーティング テーブルは、トランスポート サーバーが起動されるたびに構築され、構成の変更を受信したときに再計算されます。構成の変更は、次のいずれかの方法で検出できます。

  • Active Directory 変更通知   通知が受信されてから、変更がルーティング テーブルに書き込まれるまでに遅延時間があります。この遅延時間によって、ルーティング コンポーネントは変更を一括で行い、複数の変更を 1 回の操作で処理できます。既定では、各通知は、ルーティング コンポーネントによる処理を 5 秒間隔で遅らせます。たとえば、前の通知の後に 1 秒で 5 つの通知を受信する場合、ルーティングでは変更の処理が合計で 9 秒遅れます。
  • サービス管理コマンドによる構成の再読み込み   ルーティング コンポーネントは、Microsoft Exchange Transport サービスが再起動されると、構成データを再読み込みします。
  • Active Directory の通知によってサポートされない変更を追跡するための定期的な再読み込み   既定では、ルーティングは、すべての変更を確実に追跡するために、構成データを定期的に再読み込みします。構成の再読み込みは、6 時間間隔で実行されます。

ルーティング テーブル内の情報は、ルーティング ログに記録されます。既定で、これらのログは C:\Program Files\Microsoft\Exchange Server\TransportRoles\Logs\Routing フォルダに格納されています。ルーティング テーブルが計算されるたびに、新しいログが生成されます。何らかの理由でハブ トランスポート サーバーが Active Directory と通信できない場合、データが最新のものではない可能性があるとしても、現在キャッシュされているデータに基づいてルーティングが決定されます。詳細については、「ルーティング テーブル ログ出力の管理」を参照してください。

最終的な送信先の確認

メッセージは、次のいずれかの送信元から、ハブ トランスポート サーバーによって受信できます。

  • メッセージを組織内に中継しているエッジ トランスポート サーバー
  • メールボックス サーバー発信
  • ピックアップ ディレクトリまたは再生ディレクトリ
  • ユニファイド メッセージング サーバー
  • DSN などの内部で生成されるシステム メール
  • 別のハブ トランスポート サーバー
  • Exchange 2003 または Exchange 2000 サーバー
  • ピックアップ ディレクトリに送信する外部ゲートウェイ
  • サード パーティ製の SMTP サーバー

メッセージがハブ トランスポート サーバーによって受信されると、メッセージは分類される必要があります。メッセージの分類の最初の段階は、受信者の解決です。受信者が解決された後に、最終的な送信先を決定できます。次の段階のルーティングでは、送信先への最適な到達方法を決定します。単一の確定的なルートが選択されます。このルートは、ルーティングの構成が変更されない限り、再計算されることはありません。

送信側サーバーの観点からすると、各配信キューは特定のメッセージの送信先を表します。ハブ トランスポート サーバーまたはエッジ トランスポート サーバーがメッセージの送信先を選択すると、送信先は受信者に NextHopSolutionKey 属性としてスタンプされます。単一のメッセージが複数の受信者に送信されている場合、各受信者は NextHopSolutionKey 属性を持ちます。受信側サーバーでもメッセージの分類を実行し、メッセージを配信用のキューに入れます。メッセージがキューに入れられた後には、特定のキューの配信の種類を確認して、次ホップの送信先への到達時にメッセージが再度中継されるかどうかを確認できます。

メッセージの送信先は、次の配信の種類のいずれかに分類されます。

  • DNS コネクタ配信   ローカル サーバーが送信元サーバーである SMTP 送信コネクタを使用して、外部の受信者に送信するキューにメッセージが入れられます。コネクタは、DNS を使用して受信者のアドレスを解決するように構成されます。
  • SMTP 以外のゲートウェイ配信   ローカル サーバーが送信元サーバーである外部コネクタを使用して、外部の受信者に送信するキューにメッセージが入れられます。この配信の種類は、メッセージがローカル サーバーの外部コネクタ ドロップ ディレクトリに配信されている場合にのみ使用されます。
  • スマート ホスト コネクタ配信   ローカル サーバーが送信元サーバーである SMTP 送信コネクタを使用して、外部の受信者に送信するキューにメッセージが入れられます。コネクタは、スマート ホストを使用して配信するように構成されます。
  • Active Directory サイトでのエッジ トランスポート サーバーへの SMTP 中継   送信元サーバーがローカルの Active Directory サイトで購読されているエッジ トランスポート サーバーである SMTP 送信コネクタを使用して、外部の受信者に配信するキューにメッセージが入れられます。
  • MAPI 配信   ローカルの Active Directory サイト内のメールボックス サーバー上にある受信者のメールボックス、パブリック フォルダ、またはパブリック フォルダ ストアに配信するキューにメッセージが入れられます。 
  • Active Directory サイトでの SMTP 中継   同じ Active Directory サイトにローカル サーバーとして存在しているハブ トランスポート サーバーに配信するキューにメッセージが入れられます。送信先サーバーは、送信コネクタまたは外部コネクタの送信元サーバー、ルーティング グループ コネクタの送信元、または配布グループの展開サーバーにすることができます。
  • リモート Active Directory サイトへの SMTP 中継   リモート Active Directory サイト内にあるハブ トランスポート サーバーに配信するキューにメッセージが入れられます。リモート Active Directory サイト内の送信先サーバーは、次のいずれかです。
    • 外部の受信者にメッセージを転送するように構成されたコネクタの送信元サーバー
    • ルーティング グループ コネクタの送信元サーバー
    • 配布グループの展開サーバー
    • リモート Active Directory サイト内にあるメールボックス サーバー
      メッセージは、送信先サイトのハブ トランスポート サーバーのいずれかに配信されます。受信側サーバーは、必要に応じて Active Directory サイト内でメッセージを中継します。
  • 従来のルーティング グループへの SMTP 中継   Exchange 2003 または Exchange 2000 ルーティング グループに到達するために使用される、最初のホップ ルーティング グループ コネクタに配信するキューにメッセージが入れられます。送信先サーバーは次のいずれかです。
    • コネクタの送信元サーバー
    • 展開サーバー
    • ルーティング グループ内に存在するメールボックス受信者宛てのメッセージを配信する Exchange 2003 ブリッジヘッド サーバー
  • 到達不能   受信者へのルートを決定できませんでした。メッセージは到達不能キューに入れられます。

最も安価なルーティング パスの確認

送信先に対して複数のルーティング パスが存在する場合、Exchange 2007 ルーティングでは、確定的なアルゴリズムを使用して、メッセージをルーティングする単一の確定的なルーティング パスを選択します。個々のメッセージ ルーティング シナリオによっては、次の要因が最小コストのルーティング パスの選択に影響を与える可能性があります。

  • リンクされたコネクタ   メッセージを受信する受信コネクタが送信コネクタにリンクされている場合、コストに関係なくその送信コネクタにメッセージがルーティングされます。この構成は、常に優先されます。
  • 送信先に到達するために通過する必要のある IP サイト リンクとルーティング グループ コネクタに割り当てられるコスト   送信元サーバーと送信先サーバーの間に複数のルーティング パスが存在している場合、総コストが最も低いルーティング パスが選択されます。
  • Active Directory サイトに割り当てられる名前   複数のルーティング パスが同じ総コストになる場合、ルーティング コンポーネントでは、各ルーティング パス上で送信先サイトの前にある Active Directory サイトの名前の英数字を比較します。送信先に最も近い Active Directory サイトの名前が英数字順で最下位になるルーティング パスが使用されます。
  • ルーティング グループ コネクタに割り当てられる名前   複数のルーティング パスが同じ総コストになる場合、ルーティング コンポーネントでは、各ルーティング パス上で目的の送信先の前にあるルーティング グループ コネクタの名前の英数字を比較します。送信先に最も近いルーティング グループ コネクタの名前が英数字順で最下位になるルーティング パスが使用されます。
  • 送信コネクタに割り当てられたアドレス スペース   送信先と最も一致する特定のアドレス スペースを持つ送信コネクタが選択されます。
  • 送信コネクタで構成されているアドレス スペースに割り当てられたコスト   複数の送信コネクタが同じアドレス スペースに割り当てられている場合、ルーティング コンポーネントは、アドレス スペースに割り当てられているコストを比較します。最もコストの低い送信コネクタが選択されます。
  • コネクタの状態   Exchange 2007 ルーティング コンポーネントは、ルーティング パスを計算するときに有効になっているコネクタのみを考慮します。ただし、以前のバージョンの Exchange Server はコネクタの状態を考慮しません。詳細については、「共存環境でのメッセージ ルーティング」を参照してください。
  • コネクタのスコープ   コネクタの使用を、コネクタの送信元トランスポート サーバーと同じ Active Directory サイト内にある Exchange 2007 サーバーに限定することができます。以前のバージョンの Exchange Server では、コネクタのスコープを、同じルーティング グループ メンバシップを持つサーバーに限定することができました。
  • メッセージ サイズの制限   コネクタで指定されるメッセージ サイズの制限は、ルーティングされるメッセージのサイズよりも大きく設定する必要があります。メッセージ サイズの制限がメッセージのサイズよりも小さく設定されているコネクタは、ルーティングで考慮されません。
  • 送信側サーバーへの送信先の近さ   ルーティングでは、次の順で最も近いサーバーが優先されます。ローカル サーバー、同じ Active Directory サイト内のサーバー、リモート Active Directory サイト内のサーバー、またはルーティング グループ。

前に説明したように、Exchange 2007 は、確定的なアルゴリズムを使用して、コストが最小となるルーティング パスを選択します。次のロジックによってルーティング パスが選択されます。

  • まず、送信先に到達するために通過する必要のある IP サイト リンクおよびすべてのルーティング グループ コネクタのコストを追加して、最小コストのルーティング パスを計算します。送信先がコネクタである場合、選択されたコネクタに到達するために、アドレス スペースに割り当てられたコストが追加されます。複数のルーティング パスが考えられる場合、総コストが最も低いルーティング パスのみが使用されます。
  • 複数のルーティング パスが同じ総コストになっている場合、各パスのホップ数が評価され、ホップ数の最も少ないルーティング パスが使用されます。
  • それでも複数のルーティングパスが使用可能である場合、送信先の前にある Active Directory サイトまたはルーティング グループ コネクタに割り当てられている名前が考慮されます。送信先に最も近い Active Directory サイトの名前が英数字順で最下位になるルーティング パスが使用されます。評価されたすべてのルーティング パスで送信先に最も近いサイトが同じであった場合、さらに前のサイトの名前が考慮されます。

図 4 に、Exchange 組織のルーティング トポロジを示します。このトポロジは次の例で、最小コストのルーティング パスを選択するルーティング アルゴリズムで使用されるロジックを示すために使用されています。

図 4   Exchange 2007 ルーティング トポロジ

Exchange ルーティングでの最小コスト ルート選択

例 1   サイト A からサイト D に中継されるメッセージは、次の 2 つの考えられるルーティング パスに従います。サイト A - サイト B - サイト D およびサイト A - サイト C - サイト D というルーティング パスです。メッセージのルーティングの総コストを判断するために、IP サイト リンクに割り当てられているコストが追加されます。この例では、サイト A - サイト B - サイト D というルーティング パスは、総コストが 20 です。サイト A - サイト C - サイト D というルーティング パスは、総コストが 10 です。サイト A - サイト C - サイト D のルーティング パスが選択されます。

例 2   メッセージはサイト B からサイト D に中継されます。考えられるルーティング パスは 3 つあります。コストが 15 になるサイト B - サイト D、コストが 15 になるサイト B - サイト E - サイト C - サイト D、コストが 15 になるサイト B - サイト A - サイト C - サイト D というルーティング パスです。複数のルーティング パスが同じコストになっているので、サイト B - サイト D というルーティング パスが選択されます。このルーティング パスはホップ数が最も少なくなります。

例 3   メッセージはサイト A からサイト E に中継されます。考えられるルーティング パスは 2 つあります。コストが 10 になるサイト A - サイト B - サイト E と、コストが 10 になるサイト A - サイト C - サイト E というルーティング パスです。どちらのルーティング パスも同じコストで、同じホップ数になっています。サイト E の直前にある Active Directory サイトの英数順が比較されます。サイト B はサイト C よりも英数字順が低くなります。したがって、サイト A - サイト B - サイト E というルーティング パスが選択されます。

最小コストのルーティング パスが決定された後、Exchange 2007 ルーティング コンポーネントは代替ルーティング パスを考慮しません。

ハブ トランスポート サーバーが展開されていない Active Directory サイトは、ルーティングで認識されず、Exchange トポロジに参加しません。ただし、このようなサイトが、ハブ トランスポート サーバーが展開されているサイト間の最小コストのルーティング パス上に存在している場合、サイトを接続しているリンクの IP サイト リンク コストは、最小コストのルーティング パスを計算する際に考慮されます。

ここでは、最小コストのルーティング パスが決定される方法の概要について説明します。特定のメール フロー シナリオのルーティング パスの選択の詳細については、以下のトピックを参照してください。

次ホップの選択

Exchange 2007 ハブ トランスポート サーバーは、最小コストのルーティング パスに沿う各 Active Directory サイトに中継しません。ルーティング パスが決定された後、メッセージは送信元サーバーから次ホップに直接中継されます。次ホップの選択では、最終的な送信先のできるだけ近くにメッセージを配信しようと試みます。最終的な送信先に到達するために、さらにサイト内での中継が必要になる場合があります。従来のルーティング グループにルーティングする場合、最初のホップ ルーティング グループ コネクタの送信元サーバーのある Active Directory サイトへの直接中継が発生します。メッセージが従来の環境に中継された後、標準的な従来のルーティングが発生します。

図 5 は、単純な Exchange トポロジと、多くの Exchange ルーティング コンポーネントを示しています。

図 5   Exchange トポロジとルーティング コンポーネント

次ホップの選択に使用されるトポロジとコンポーネント

図 5 を参考にすると、サイト A のメールボックス 1 から外部の受信者 joe@contoso.com に送信されるメッセージは、次のように処理されます。

  1. メールボックス 1 で実行されている Microsoft Exchange メールボックス発信サービスは、同じ Active Directory サイト内にあるハブ トランスポート サーバーに新しいメール アイテムのトランスポートについて通知します。
  2. RPC を使用して、同じ Active Directory サイト内のハブ トランスポート サーバー上にあるストア ドライバ コンポーネントは、メッセージを取得し、ローカル サーバー上の発信キューに置きます。
  3. メッセージは、発信キューから分類に進みます。カテゴライザは、まず、受信者の解決を行い、joe@contoso.com が外部の受信者であることを確認します。
  4. ルーティング コンポーネントは、メッセージをルーティングするのに最も適したコネクタを選択し、そのコネクタへの最小コストのルーティング パスを計算します。この例では、送信コネクタはアドレス スペース *.contoso.com を持ち、ルーティング コンポーネントによって選択されたコネクタです。この送信コネクタのすべての送信元サーバーは、サイト B 内にあります。
  5. ルーティング コンポーネントは、送信コネクタの送信元サーバーに到達するために必要な次ホップを決定します。サイト A 内のハブ トランスポート サーバーは、サイト B への SMTP 配信用のキューにメッセージを入れます。
  6. サイト B の受信側のサーバーが送信コネクタの送信元サーバーである場合、送信コネクタに配信するキューにメッセージを入れます。受信側のサーバーが *.contoso.com 送信コネクタの送信元サーバーではない場合は、SMTP を使用して、コネクタの送信元サーバーであるサイト B のハブ トランスポート サーバーにメッセージが中継されます。

表 2 に、図 5 で示したトポロジに基づく複数の受信者用の次ホップの選択例を示します。

表 2   図 5 での次ホップの選択例

受信側サーバー 最終的な送信先 次ホップ キュー配信の種類

ハブ 1

メールボックス 1

メールボックス 1

MAPI 配信

ハブ 1

メールボックス 2

サイト B

リモート Active Directory サイトへの SMTP 中継

ハブ 1

メールボックス 3

ルーティング グループ コネクタ 1

従来のルーティング グループへの SMTP 中継

ハブ 1

Recipient@fourthcoffee.com

ハブ 3

Active Directory サイトでの SMTP 中継

ハブ 1

Recipient@contoso.com

サイト B

リモート Active Directory サイトへの SMTP 中継

ハブ 2

メールボックス 1

サイト A

リモート Active Directory サイトへの SMTP 中継

ハブ 2

メールボックス 2

メールボックス 2

MAPI 配信

ハブ 2

メールボックス 3

サイト A

リモート Active Directory サイトへの SMTP 中継

ハブ 2

Recipient@contoso.com

送信コネクタ 2

DNS コネクタ配信

ハブ 2

Recipient@fourthcoffee.com

サイト A

リモート Active Directory サイトへの SMTP 中継

ハブ 3

メールボックス 1

メールボックス 1

MAPI 配信

ハブ 3

Recipient@fourthcoffee.com

送信コネクタ 1

スマート ホスト コネクタ配信

最小コストのルーティング パスが計算され、次ホップの送信先が選択された後、Exchange 2007 ルーティングはメッセージを送信先に直接中継しようと試みます。ただし、構成シナリオによっては、直接中継は発生しません。たとえば、Exchange 管理者は、ネットワーク セキュリティまたは接続の制限が原因で Active Directory サイト間の直接通信が不可能な状況で、特定の Active Directory サイトを通じて中継するためにメッセージの配信を強制するように Active Directory ハブ サイトを構成できます。詳細については、後の「ハブ サイトの実装」を参照してください。

また、複数の受信者に配信されるメッセージは中間サイトを通じて中継できます。Exchange 2007 は、ネットワーク帯域幅の使用量を最小限に抑えるように設計されています。この設計の特徴の 1 つは、配信パスの分岐点に達するまで、異なる送信先の受信者に配信するメッセージの複数のコピーの生成を遅らせる機能です。この機能を、遅延ファンアウトといいます。詳細については、後の「遅延ファンアウト」を参照してください。

障害点におけるキュー

最小コストのルーティングパスの計算は、次ホップへのメッセージ配信が失敗した場合にバックオフ パスを決定するために使用されます。Exchange 2007 のバックオフは、ネットワークの問題やサーバーがオフラインになったなどの理由で直接の中継ができなくなった場合に、最小コストのルーティング パス上の中間ホップでメッセージを配信するために使用されるメカニズムです。ルーティング コンポーネントは、接続が確立されるまで最小コストのルーティング パス上で 1 ホップずつバックオフして、できるだけ送信先の近くにメッセージを配信しようと試みます。まず、送信先の Active Directory サイト内の各ハブ トランスポート サーバーに対する接続が試行されます。Active Directory サイト内のどのハブ トランスポート サーバーも応答しない場合は、配信サイトからバックオフを開始する方法を特定するために、最小コストのルーティング パスが確認されます。この目的は、送信先のできるだけ近くにメッセージを配信し、その Active Directory サイト内のハブ トランスポート サーバーでメッセージをキューに入れることです。この動作は、障害点におけるキューと呼ばれます。通信に障害が発生した配信パスのポイントでメッセージがキューに入れられている場合、このことは、メッセージの配信が失敗した理由を特定するために役立ちます。

図 6 では、メッセージがサイト A とサイト D の間で配信される場合、最小コストのルーティング パスはサイト A - サイト B - サイト C - サイト D である可能性があります。最初に、サイト A からサイト D に直接配信しようとします。サイト D のハブ トランスポート サーバーが応答しない場合、サイト C のハブ トランスポート サーバーへの配信が試みられます。この処理は、ハブ トランスポート サーバーがメッセージを受け付けるまで続けられます。すべての中間サイトが利用できない場合、メッセージは送信元サイトでキューに入れられます。メッセージがサイト C 内でキューに入れられている場合、まずは、サイト D のハブ トランスポート サーバーまたはサイト C とサイト D の間の接続に障害がないかどうかを調べることができます。メッセージが障害点でキューに入れられている場合、キューは再試行状態に置かれ、配信が成功するかメッセージの有効期限が切れるまで、メッセージの再試行の間隔に基づいて引き続き配信が試行されます。既定の間隔である 12 時間後に、キューは再分類のために自動的に再送信されます。次ホップの送信先としてコネクタを持つキューは、再送信を引き起こす構成の変更が生じない限り、自動的に再送信されることはありません。詳細については、「メッセージの再ルーティングと到達不能キュー」を参照してください。

メール フローの問題を診断するために、Exchange メール フロー トラブルシューティング ツールを使用できます。このツールは、Microsoft Exchange トラブルシューティング アシスタントのコンポーネントで、Exchange 管理コンソールのツールボックスから実行できます。

図 6 では、メッセージがサイト A から送信され、サイト D に配信されます。サイト D のハブ トランスポート サーバーはオフラインになっています。そのため、メッセージはサイト C でキューに入ります。

図 6   障害点におけるキュー

障害点におけるキュー

より複雑なトポロジでは、2 つの Active Directory サイト間の最小コストのルーティング パスに、多くの中間 Active Directory サイトを含めることができます。ルーティング パスの初期のある地点で新しいネットワークの問題が発生した場合、端からサイトごとにバックオフし、すべての中間サイトに配信しようと試みることは効率が低すぎます。ルーティング パスのホップ数が 4 よりも多い場合、残りのサイトが 4 以下になるまでバイナリ バックオフが実行されます。バイナリ バックオフとは、ルーティング パスの中間点で、次の接続試行が行われることです。たとえば、Active Directory サイト A からサイト Q への最小コストのルーティング パスが A - B - C - D - E - F - G - H - I - J - K - L - M - N - O - P- Q である場合、サイト B とサイト C 間のリンクでネットワーク障害が発生すると、最初の接続試行はサイト Q のすべてのハブ トランスポート サーバーに対して試行されます。この接続の試行が失敗した場合は、次にサイト I のすべてのハブ トランスポート サーバーに対して試行されます。これはサイト Q への中間点です。接続の試行が失敗した場合、次の接続の試行は、サイト E のすべてのハブ トランスポート サーバーに対して行われます。これはサイト A とサイト I の中間点です。この接続の試行が失敗した場合は、送信元サイトまでのリンク数が 4 よりも小さいため、サイト D、サイト C、およびサイト B に対して接続の試行が行われます。最終的に、B - C リンクの接続が復元されるまで、サイト B のハブ トランスポート サーバーのキューにメッセージが入れられます。

ハブ サイトの実装

Exchange 組織において、すべてのメッセージ配信を特定の Active Directory サイトで強制的に中継する必要がある場合があります。このシナリオでは、接続性の関係で、サイト間での直接の SMTP 中継ができない場合があります。このため、メッセージを送信先に送信する前に中間サイトで中継する必要があります。管理者は、Exchange 組織の内部ポリシーに従うために、すべてのメッセージを特定のサイトで中継する必要がある場合もあります。Exchange 管理シェル タスクを使用して、Active Directory サイトをハブ サイトとして指定することができます。Active Directory サイトをハブ サイトに指定すると、メッセージ配信に関係するサーバーの数が増えるためオーバーヘッドが増加します。たとえば、サイト A からサイト E に送信されるメッセージを考えます。最小コストのルーティング パスがサイト A - サイト B - サイト C - サイト D - サイト E で、サイト C をハブ サイトとして指定する場合、メッセージはサイト A からサイト C に中継されてから、サイト C からサイト E に中継されます。

Active Directory サイトをハブ サイトとして指定するには、Set-ADSite コマンドレットを使用します。メッセージ配信の最小コストのルーティング パス上にハブ サイトが存在する場合、メッセージは、最終的な送信先に中継される前にキューに入れられ、ハブ サイトのハブ トランスポート サーバーによって処理されます。サイト C をハブ サイトとして設定するには、Exchange 管理シェルで次のコマンドを実行します。

Set-AdSite -Identity "Site C" -HubSiteEnabled $true

最小コストのルーティング パスが選択された後で、ルーティング パス上にハブ サイトがあるかどうかが確認されます。ハブ サイトが構成されている場合、メッセージは宛先へ中継される前にハブ サイトのハブ トランスポート サーバーを通過します。最小コストのルーティング パス上に複数のハブ サイトがある場合、メッセージはルーティング パス上の各ハブ サイトを通過します。

このような中継のルーティングは、ハブ サイトが最小コストのルーティング パスに存在する場合にのみ有効であることに注意してください。図 7 に、ハブ サイトの正しい使用方法を示します。この図で、サイト B はハブ サイトとして構成されています。サイト A からサイト D に中継されるメッセージは、サイト D に配信される前にサイト B に中継されます。

図 7   ハブ サイトによるメッセージの配信

ハブ サイトによるメッセージの配信

図 8 は、IP サイト リンクのコストがハブ サイトへのルーティングにどのように影響するかを示しています。このシナリオで、サイト B はハブ サイトとして指定されています。ただし、サイト B は他のサイト間の最小コストのルーティング パス上に存在していないため、送信先に配信されるまでサイト B のキューは発生しません。Active Directory サイトは、他の 2 つのサイト間の最小コストのルーティング パス上にない場合、ハブ サイトとして使用されません。

図 8   誤って構成されたハブ サイト

誤って構成されたハブ サイト

すべての Active Directory サイトをハブ サイトとして構成できます。ただし、この構成が正しく機能するためには、ハブ サイト内の少なくとも 1 つのハブ トランスポート サーバーで展開する必要があります。

IP サイト リンクのコストの制御

Exchange 管理者として、Active Directory サイト トポロジが Exchange ルーティングにどのような影響を及ぼすかを評価する際には、組織の Active Directory 管理者と密接に連携する必要があります。Active Directory IP サイト リンクのコストは、ワイド エリア ネットワーク内のすべてのネットワーク速度と比較した相対的なネットワーク速度に基づいており、信頼性が高く効率的なレプリケーション トポロジが得られるように設計されています。そのため、既存の IP サイト リンクのコストは、Exchange 2007 のメッセージ ルーティングでも適切に動作します。ただし、既存の Active Directory サイトおよび IP サイト リンクのトポロジを文書化した後に、その Active Directory IP サイト リンクのコストおよびトラフィック フローのパターンが Exchange 2007 に最適でないことが確認された場合は、Microsoft Exchange によって評価されたコストに調整を加えることができます。Exchange 管理者が Active Directory ツールを使用して、IP サイト リンクに割り当てられたコストを変更することはできません。代わりに、Exchange 管理シェルで Set-ADSiteLink コマンドレットを使用して、Exchange 固有のコストを IP サイト リンクに割り当てます。たとえば、メッセージ ルーティング用に IP サイト リンク SITELINKAB に別のコストを設定するには、Exchange 管理シェルで次のコマンドを実行します。

Set-AdSiteLink -Identity SITELINKAB -ExchangeCost 25

Exchange コストが IP サイト リンクに割り当てられている場合、メッセージ ルーティングについては Active Directory のコストよりも Exchange のコストが優先され、最小コストのルーティング パスを評価する際には Exchange のコストのみがルーティングで考慮されます。コストが割り当てられていない場合、Active Directory レプリケーション コストが使用されます。

メッセージ ルーティング トポロジを Active Directory レプリケーション トポロジに分岐させる必要がある場合には、IP サイト リンクのコストの調整が役立ちます。Exchange コストは、ハブ サイトを使用するようにすべてのメッセージのルーティングを強制するために使用できます。Exchange コストは、Active Directory サイトへの通信が失敗した場合にどのキューにメッセージを入れるかを制御するためも使用できます。図 9 は、4 つのサイトによる Active Directory トポロジを示しています。

図 9   IP サイト リンク上で構成された Exchange のコストによるトポロジ

IP サイト リンク上の Exchange のコストによるトポロジ

図 9 では、サイト C とサイト D の間のネットワーク接続は、Active Directory レプリケーション用にのみ使用される帯域幅の狭い接続です。ただし、Active Directory IP サイト リンクのコストによって、他のすべての Active Directory サイトからサイト D への最小コストのルーティング パスにそのリンクが含まれます。そのため、メッセージはサイト C 内のサイト D のキューに配信されます。一方、Exchange 管理者は、サイト D が利用できなくなった場合にメッセージがサイト B でキューに入るように、最小コストのルーティング パスにサイト B を含めるように設定します。サイト C とサイト D の間の IP サイト リンク上で Exchange のコストを高くして、サイト D への最小コストのルーティング パスに IP サイト リンクが含まれないように構成することができます。

Exchange 2007 Service Pack 1 の新機能

Exchange 2007 Service Pack 1 (SP1) は、Active Directory IP サイト リンクに対する最大メッセージ サイズ制限の構成のサポートを提供します。既定では、Exchange 2007 では、異なる Active Directory サイトにあるハブ トランスポート サーバー間で中継されるメッセージに対して最大メッセージ サイズは制限されません。Set-AdSiteLink コマンドレットを使用して Active Directory IP サイト リンクに最大メッセージ サイズを構成した場合、メッセージが最も安価なルーティング パスの Active Directory サイト リンクに構成されている最大メッセージ サイズ制限を越えると、そのメッセージに対して配信不能レポート (NDR) が生成されます。これは、帯域幅が狭い接続を介して通信する必要があるリモート Active Directory サイトに送信されるメッセージのサイズを制限するのに有効です。詳細については、「内部ルーティングのメッセージ サイズの制限を構成する方法」を参照してください。

遅延ファンアウト

単一の電子メール メッセージに、複数の受信者を指定することができます。これらの受信者は、内部メールボックスを持つ受信者か、外部の受信者になります。単一のメッセージを複数の受信者にルーティングするには、次の手順が行われます。

  1. 受信者の解決   メッセージの各受信者は、配信先に解決されます。
  2. ルーティング   各受信者の最小コストのルーティング パスが決定されます。これにはハブ サイトが構成されているかどうかが含まれます。
  3. メッセージの分割   配信場所の異なる受信者にメッセージをルーティングするには、メッセージを複数のコピーに分割する必要があります。

各受信者が解決され、それぞれの配信先のルーティング パスが決定されると、Exchange 2007 は各受信者のルーティング パスを比較します。帯域幅を維持するために、ルーティング パスの分岐点に達するまで、分割 (メッセージの複数のコピーへの分割) は行われません。

たとえば、単一のメッセージの複数の受信者が、最小コストのルーティング パスの一部またはすべてを共有している場合は、ルーティング パス上で分岐が生じるポイントにメッセージが達するまで、メッセージの単一のコピーが送信されます。ルーティング パス上で分岐が発生すると、メッセージは分割され、各受信者用に別々のコピーが作成されます。

図 10 では、単一のメッセージがサイト A からサイト C、サイト D、およびサイト E 内の受信者に送信されています。メッセージがサイト B に達するまでは、最小コストのルーティング パスが共有されます。このシナリオでは、すべての受信者を含むメッセージの単一のコピーがサイト B に中継されます。これは、ルーティング パスの最初の分岐点を表します。サイト B から、単一のメッセージ コピーがサイト D の受信者にルーティングされ、単一のコピーがサイト C に中継されます。サイト C で、メッセージが再度分割されます。メッセージのコピーはサイト C の受信者に配信されます。また、メッセージのコピーがサイト E に中継され、サイト E 内の受信者に配信されます。

図 10   遅延メッセージ ファンアウト

68e0eaa9-e98d-4343-b1d9-61a51cf47484

再ルーティングと到達不能キュー

何らかの理由により、有効な受信者へのルートを決定できなかった場合、メッセージは到達不能キューに置かれます。構成の変更が処理され、ルーティング テーブルが再計算されると、到達不能キュー内のメッセージは再ルーティングされます。メッセージは、次のシナリオではルーティングされません。代わりに、配信不能レポート (NDR) が送信者に返されます。

  • 受信者が SMTP 以外のアドレスを持っており、アドレス スペースに適したコネクタが見つからない。
  • メッセージが一致するコネクタのメッセージ サイズの制限を満たしていない。

ストア ドライバは、次の条件を満たしている場合、ルーティングのためにメッセージを再送信します。

  • メッセージが MAPI 配信キュー内にある。
  • 次ホップが選択されてから、メッセージを配信する準備ができるまでの間に、メッセージが別のメールボックス サーバーに移動されている。

拡張 DNS の解決時に、ルーティングではキューを再ルーティングする必要があるかどうかを検出しようとします。この段階では、NextHopSolutionKey 属性が接続先の一覧に解決されます。これにより、NextHopSolutionKey 属性を無効にしたり変更したりする構成の変更がすべて自動的に検出されます。構成の変更でキュー内のメッセージのルーティングが必要になっていることが検出された場合、影響を受けるキュー内のメッセージは、ルーティングするためにカテゴライザに再送信されます。

すべての構成の変更でキュー内のメッセージの再送信が必要になるわけではありません。たとえば、コネクタのスマート ホストの一覧への変更は自動的に検出されます。メッセージの再ルーティング方法の詳細については、「メッセージの再ルーティングと到達不能キュー」を参照してください。

詳細情報

詳細については、以下のトピックを参照してください。

参照している情報が最新であることを確認したり、他の Exchange Server 2007 ドキュメントを見つけたりするには、Exchange Server TechCenter を参照してください。