重要この資料には、レジストリを変更する方法に関する情報が含まれています。レジストリを変更する前に、必ずバックアップしてください。問題が発生した場合は、レジストリを復元する方法を知っていることを確認します。レジストリをバックアップ、復元、および変更する方法の詳細については、次のサポート技術情報番号をクリックしてください。
256986 Microsoft Windows レジストリの説明
現象
Microsoft インターネット セキュリティとアクセラレータ サーバー (ISA) 2004 ベースのコンピュータが負荷の高い状況で動作しているときに、CPU 使用率が高くなることがあります。たとえば、ISA Server コンピュータの CPU 使用率が 50% を超える場合があります。
原因
この現象は、ISA Server のインストール中に適用される TCP/IP 最大転送単位 (MTU) 設定が原因で発生することがあります。攻撃者が MTU 値を変更するのを防ぐために、ISA Server 2004 はパス MTU (PMTU) 検出を無効にします。この設定は、マイクロソフト セキュリティ情報 MS05-019 に記載されています。このセキュリティ情報を参照するには、次のマイクロソフト Web サイトを参照してください。
http://www.microsoft.com/technet/security/Bulletin/MS05-019.mspx注意事項
-
既定では、Windows は 1,480 バイトの MTU 設定を使用し、より小さいパケット サイズを要求するインターネット制御メッセージ プロトコル (ICMP) メッセージを受け入れます。
-
Windows ベースのサーバーで MTU 検出が無効になっている場合、サーバーは 576 バイトの MTU 設定を使用します。
解決方法
警告レジストリ エディタまたは別の方法を使用してレジストリを誤って変更すると、深刻な問題が発生する可能性があります。これらの問題により、オペレーティング システムの再インストールが必要になる場合があります。マイクロソフトは、これらの問題が解決できることを保証できません。レジストリは自己責任で変更してください。ISA Server のインストール中に構成された MTU 設定が原因で発生する現象を解決するには、次の手順を実行します。重要Windows Server 2003 Service Pack 1 (SP1) または次のマイクロソフト サポート技術情報資料に記載されている修正プログラムをインストールしている場合は、このレジストリを変更する必要があります。
898060セキュリティ更新プログラム MS05-019 または Windows Server 2003 Service Pack 1 をインストールした後、クライアントとサーバー間のネットワーク接続が失敗することがある
-
[スタート] ボタンをクリックし、[ファイル名を指定して実行]をクリックします。
-
次のレジストリ サブキーを見つけて右クリックします。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\EnablePMTUDiscovery値の種類: REG_DWORDValue: 0、 1 (False、True) ISA の既定値: 0 (False)注有効PMTU ディスカバリーエントリが使用できない場合は、エントリを作成します。
-
必要に応じて、次の情報に従って値を設定または変更します。
-
値 = 1EnablePMTUDiscoveryを 1 に設定すると、TCP はリモート ホストのパスで MTU または最大パケット サイズを検出しようとします。TCP は、異なる MMT を使用するネットワークを接続するパス内のルーターで断片化を取り除くことができます。TCP は、パス MTU を検出し、TCP セグメントをこのサイズに制限することによってこれを行います。断片化は TCP スループットに悪影響を及ぼします。
-
値 = 0EnablePMTUDiscoveryを 0 に設定すると、ローカル サブネット上のホストに関連しないすべての接続に対して 576 バイトの MTU が使用されます。この値を 0 に設定しないと、攻撃者は MTU 値を非常に小さい値に強制し、スタックを過剰に処理する可能性があります。メモ
-
EnablePMTUDiscoveryを 0 に設定すると、TCP/IP のパフォーマンスとスループットが影響を受けます。この値を 0 に設定する前に、パフォーマンスのスループットを十分に認識する必要があります。
-
ISA Server 2004 または ISA Server 2004 サービス パック 1 をインストールすると、この値も 0 にリセットされます。
-
ISA Server 2004 サービス パック 2 では、 EnablePMTUDiscoveryの値は変更されません。
-
-
-
検出プロセスに参加するには、ISA Server の ICMP MTU アクセス ルールを作成します。これを行うには、構成に応じて、次のセクションで説明する手順に従います。
-
レジストリ エディターを終了し、コンピューターを再起動します。
ISA Server 2004、スタンダード エディション
-
[スタート] をクリックして [プログラム] をポイントし、[Microsoft ISA Server] をクリックして [ISA Server の管理] をクリックします。
-
左側のウィンドウで[ArrayName]を展開し、[ファイアウォール ポリシー]をクリックします。
-
作業ウィンドウの [ツールボックス]タブをクリックし、[プロトコル]をクリックします。
-
[プロトコル]の [新規作成]をクリックし、[プロトコル]をクリックします。
-
[プロトコル定義名]ボックスに「ICMP MTU 探索」と入力し、[次へ]をクリックします。
-
[新規作成]をクリックし、[プロトコルの種類]ボックスの一覧の[ICMP]をクリックします。
-
[方向]ボックスの一覧の [受信の送信]をクリックします。
-
[ICMPコード]ボックスに「4」と入力し、[ICMP の種類]ボックスに「3」と入力して、[OK] をクリックします。
-
[次へ]をクリックし、[完了]をクリックします。
-
左側のウィンドウで、[ファイアウォール ポリシー]を右クリックし、[新規作成]をクリックして、[アクセス ルール]をクリックします。
-
[アクセス ルール名]ボックスに「ICMP MTU 探索を許可する」と入力し、[次へ]をクリックします。
-
[許可]をクリックし、[次へ]をクリックします。
-
[この規則の適用先]ボックスの一覧の [選択したプロトコル]をクリックし、[追加]をクリックします。
-
[プロトコル]ボックスの一覧の [ユーザー定義]を展開します。
-
[ICMP MTU 探索]をクリックし、[追加]をクリックします。
-
[追加] をクリックします。
-
[ネットワーク エンティティ]ボックスの一覧の [ネットワーク]を展開します。
-
[外部]をクリックし、[追加]をクリックします。
-
[内部]をクリックし、[追加]をクリックします。
-
[追加] をクリックします。
-
[ネットワーク エンティティ]ボックスの一覧の [ネットワーク]を展開します。
-
[ローカル ホスト]をクリックし、[追加]をクリックします。
-
[完了]をクリックし、[適用]をクリックします。
ISA Server 2004、エンタープライズ エディション
ISA Server 2004 の場合、エンタープライズ エディションは ICMP MTU 検出プロセスに参加し、エンタープライズ レベルで ICMP プロトコルを作成し、アレイ レベルで ICMP MTU アクセス ルールを作成します。
エンタープライズ レベルで ICMP プロトコルを作成する方法
-
[スタート] をクリックして [プログラム] をポイントし、[Microsoft ISA Server] をクリックして [ISA Server の管理] をクリックします。
-
左側のウィンドウで [エンタープライズ]を展開し、[エンタープライズ ポリシー]をクリックします。
-
作業ウィンドウの [ツールボックス]タブをクリックし、[プロトコル]をクリックします。
-
[プロトコル]の [新規作成]をクリックし、[プロトコル]をクリックします。
-
[プロトコル定義名]ボックスに「ICMP MTU 探索」と入力し、[次へ]をクリックします。
-
[新規作成]をクリックし、[プロトコルの種類]ボックスの一覧の[ICMP]をクリックします。
-
[ICMPコード]ボックスに「4」と入力し、[ICMP の種類]ボックスに「3」と入力して、[OK] をクリックします。
-
[次へ]をクリックし、[完了]をクリックします。メモルール作成ウィザードを使用する場合、ユーザー定義の ICMP プロトコルに対してエンタープライズ アクセス ルールを作成することはできません。
ISA Server 2004、エンタープライズ エディションのポリシーでユーザー定義の ICMP プロトコルを使用する方法の詳細については、次のサポート技術情報番号をクリックしてください。
902348ユーザー定義の ICMP プロトコルは、ISA Server 2004 エンタープライズ エディションの新しいアクセス ルール ウィザードに表示されません。
ネットワークに単一のアレイがある場合に ICMP MTU アクセス ルールを手動で作成する方法
-
[スタート] をクリックして [プログラム] をポイントし、[Microsoft ISA Server] をクリックして [ISA Server の管理] をクリックします。
-
左側のウィンドウで [配列]を展開し、[配列名]を展開します。
-
[ファイアウォールポリシー]を右クリックし、[新規作成]をクリックします。
-
[アクセス ルール名]ボックスに「ICMP MTU 探索を許可する」と入力し、[次へ]をクリックします。
-
[許可]をクリックし、[次へ]をクリックします。
-
[この規則の適用先]ボックスの一覧の [選択したプロトコル]をクリックし、[追加]をクリックします。
-
[プロトコル]ボックスの一覧の [ユーザー定義]を展開します。
-
[ICMP MTU 探索]をクリックし、[追加]をクリックします。
-
[追加] をクリックします。
-
[ネットワーク エンティティ]ボックスの一覧の [ネットワーク]を展開します。
-
[外部]をクリックし、[追加]をクリックします。
-
[内部]をクリックし、[追加]をクリックします。
-
[追加] をクリックします。
-
[ネットワーク エンティティ]ボックスの一覧の [ネットワーク]を展開します。
-
[ローカル ホスト]をクリックし、[追加]をクリックします。
-
[完了]をクリックし、[適用]をクリックします。
ネットワークに複数のアレイ メンバーがある場合に ICMP MTU アクセス ルールを作成する方法
方法 1
-
最初のアレイに ICMP MTU アクセス ルールを手動で作成します。これを行うには、説明されている手順に従って、単一のアレイのアクセス ルールを作成します。
-
ICMP MTU アクセス ルールをコピーします。これを行うには、次の手順を実行します。
-
[スタート] をクリックして [プログラム] をポイントし、[Microsoft ISA Server] をクリックして [ISA Server の管理] をクリックします。
-
左側のウィンドウで [配列]を展開し、[配列名]を展開します。配列名は、ICMP MTU アクセス ルールを作成した最初のアレイです。
-
[ファイアウォール ポリシー]をクリックし、[ファイアウォール ポリシー ルール] の[ICMP MTU 検出を許可する]ルールを右クリックして、[コピー]をクリックします。
-
-
ICMP MTU アクセス ルールを各アレイに貼り付けます。これを行うには、次の手順を実行します。
-
ISA Server 管理 Microsoft 管理コンソール (MMC) で、ICMP MTU アクセス規則を貼り付けるアレイを展開し、[ファイアウォール ポリシー]をクリックします。
-
中央のウィンドウで、ICMP MTU アクセス ルールの直後に配置するアレイ ポリシー ルールを右クリックし、[貼り付け]をクリックします。メモアレイ ポリシー ルールが存在しない場合は、ICMP MTU アクセス ルールをアレイ ポリシーに貼り付ける前に、新しいアレイ ポリシー ルールを作成する必要があります。
-
[適用]をクリックします。
-
-
すべてのアレイ・メンバーの ICMP MTU アクセス・ルールをコピーするまで、ステップ 3a から 3c を繰り返します。
方法 2
-
最初のアレイに ICMP MTU アクセス ルールを手動で作成します。これを行うには、記載されている手順に従って、単一アレイの ICMP MTU アクセス ルールを作成します。
-
ICMP MTU アクセス ルールをエクスポートします。これを行うには、次の手順を実行します。
-
ISA Server 管理 MMC で、ICMP MTU アクセスルールを作成したアレイを展開し、[ファイアウォール ポリシー]をクリックします。
-
[ファイアウォール ポリシールール] の[ICMP MTU 検出を許可する]ルールを右クリックし、[選択したファイルのエクスポート]をクリックします。
-
エクスポートウィザードで、[次へ]をクリックします。
-
[エクスポートの基本設定]ページで、[次へ]をクリックします。
-
[エクスポート ファイルの場所]ページで、[参照]をクリックします。
-
ICMP MTU 検出ルールをエクスポートする場所を選択し、[ファイル名]ボックスに「MtuDiscoveryRule」と入力し、[開く]をクリックします。
-
[次へ]をクリックし、[完了]をクリックしてウィザードを終了します。
-
進行状況インジケーターに構成が正常にエクスポートされたことを示すメッセージが表示されたら、[OK] をクリックします。
-
-
ICMP MTU アクセス ルールを各アレイにインポートします。これを行うには、次の手順を実行します。
-
ISA Server 管理 MMC で、ICMP MTU アクセス規則をインポートするアレイを展開し、[ファイアウォールポリシー]を右クリックします。
-
[インポート]をクリックします。
-
インポート ウィザードで、[次へ]をクリックします。
-
[参照]をクリックし、手順 2f でMtuDiscoveryRuleファイルを保存したフォルダを見つけます。
-
[MtuDiscoveryRule]ファイルをクリックし、[開く]をクリックします。
-
[次へ]を 2 回クリックします。
-
[完了] をクリックします。
-
進行状況インジケーターに構成が正常にインポートされたことを示すメッセージが表示されたら、[OK] をクリックします。
-
[適用]をクリックします。
-
参照情報
Microsoft Windows 2000 の PMTU 検出レジストリ設定の詳細については、次のサポート技術情報番号をクリックしてください。
315669 Windows 2000 でサービス拒否攻撃に対して TCP/IP スタックを強化する方法Microsoft Windows Server 2003 の PMTU 検出レジストリ設定の詳細については、次のサポート技術情報番号をクリックしてください。
324270 Windows Server 2003 でサービス拒否攻撃に対して TCP/IP スタックを強化する方法