ASP のトラブルシューティングします。NET

文書翻訳 文書翻訳
文書番号: 891032
ASP。ASP NET サポート音声列: をトラブルシューティングします。NET
この列には、お客様のニーズをカスタマイズするには、表示し問題関心のあるトピックに関するアイデアをナレッジ ベースの記事や音声のサポート列将来の対処を提出するに招待します。アイデアおよびフィードバックを使用して送信することができます、 それを要求します。 フォームです。また、この列の下部にあるフォームへのリンクです。
すべて展開する | すべて折りたたむ

目次

はじめに

こんにちはをもう一度しサポート音声列の 11 月 ' 04 エディションへようこそ。感謝します。 Jim Cheshire 、サポート エンジニアここで ASP をサポートします。NET では、彼の貢献をします。Jim サポート音声列の優れたアイデアがあるし、それらを共有したいです。Jim の貢献は、数か月で、探して、いつでもお客様のご意見は今後のコラムでをご。ありがとう Jim!

鈴木さんの 6 年間、FrontPage、VB、および ASP にしてきました。NET のチーム。その間、彼は、オフィスのデベロッパー センターの MSDN では、執筆し、彼の本を FrontPage の作成者である、 Microsoft Office の FrontPage 2003 を使用して、特別版.Jim は彼を空きアドインでは、Web 開発者は、マイクロソフト製品の作成を有効にするのには、FrontPage が提供する Web サイトもあります。その Web サイトのアドレスは次のとおりです。
http://www.jimcosoftware.com
ため、プルをください、椅子のシューズ、開始し、ASP のトラブルシューティングに関するコラムを読みます。Net を起動して、アイデアを内のすべての列が含まれている"IT の質問"のリンクを使用して公開を送信することができます注意をしてください。

高橋

ASP のトラブルシューティングします。NET

ムービー Shrek を見たか。ムービー、Shrek の星、ハッカーは、醜く緑現世で非常に衛生習慣です。事前に、人で映画、Shrek 複雑さの ogres"ogres と同様であると言ってあります。たまねぎ。これは、レイヤーがある。」

ASP。NET は、ハッカーと同様にずっとです。多くはレイヤー: Web クライアント、プロキシ サーバー、Web のような中間デバイスサーバーが、ネットワーク、およびその他のリソース アプリケーション接触しています。すべてのこれらのレイヤーは ASP を確認します。NET 限り、解決することは困難にどのツールを使用して、このツールを正しく使用する方法を知っています。

危険に自分で使われていないことをこのシリーズの使用方法を説明します、ツールに PSS を使用して問題を解決するのには。私いくつかの使用方法に行き、晴れなかったら本当にいいなどのツール。
  • ネットワーク モニター
  • Fiddler
  • Filemon と Regmon
  • Windows (Windbg) 用のデバッグ ツール
  • SOS (マネージ コードのデバッグ、Windbg 拡張)
  • DBGClr
私がこれらのツールを使用しての深い詳細に行きたがらないため、これらのツールを使用して上での強固な基盤を提供します。発生する可能性があります多くの問題の根本原因にドリル ダウンします。

スニッファ

このシリーズの最初の部分は、ネットワーク スニッファで対応いたします。右ここでいきましょうで。

問題の例:

ASP は、あります。NET アプリケーションで Windows 統合認証を使用すると、"anonymous"がオフになっています。ユーザーの 1 つは、サイトにアクセスすることがないことが報告されています。代わりに、繰り返し、ユーザー名とパスワードを要求は。アクセス許可がこのユーザーに対して正しいかと考えています。

この種の問題は、最適です。ネットワーク スニッファを使用してトラブルシューティングします。スニファーを確認できます。かどうかに関係なく、クライアントの認証情報をサーバーに送信しています。マイクロソフトでを使用してネットワーク スニファーはネットワーク モニターです。

ネットワーク モニター

有効期限のバージョンのネットワーク モニターは、次のマイクロソフト FTP サイトからダウンロードできます。
ftp://ftp.microsoft.com/PSS/Tools/Netmon/Netmon2.zip
は、この Zip ファイルをパスワードします。 トレース.ネットワーク モニターをインストールするを行いますクリックしてを検索します。 管理ツール、[ ネットワーク分析ツール.
取得するネットワーク インターフェイスを選択します。
ネットワーク モニターを初めて起動すると、必要がありますまずは使用するネットワーク カードを選択する、ダイアログ ボックスは図 1 に示します。
元に戻す画像を拡大する
図 1: ネットワーク内でネットワークを選択します。モニター

図 1: ネットワーク モニターでネットワークを選択します。

図 1 では、選択したインターフェイスであることに注意してください、ダイヤルアップ接続または VPN アダプターのプロパティで示されているように、インターフェイスです。ほとんどの場合、他のインターフェイスのいずれかを選択する必要ダイヤルアップまたは VPN 接続をより。VPN のスクリーン ショットを使用することを選択しました。アダプターは、明確に表示する必要があるので選択する方法識別されていました。ほとんどの場合、アダプターでもう一度、図 1 の図は、いずれかのように表示されないを選択します。

キャプチャする、ネットワーク カードを変更する必要がある場合は、クリックして、これを行うには、ダイアログ ボックスにアクセスできます、 ネットワーク オプションは、 キャプチャ メニューです。
バッファー サイズを設定します。
ネットワーク モニターは、1 MB の既定キャプチャ バッファーがあります。つまり、1 MB のネットワーク データを収集すると、上書きを起動します。トレースします。多くの場合、バッファーを大きくことができます。これを行うには、クリックしてください。 キャプチャバッファーの設定.これが表示されます、 キャプチャ バッファーの設定 ダイアログ ボックスでバッファーのサイズを大きくことができます。サイズを指定します。依存するネットワーク トラフィック量がネットワーク上が表示されます。は、ですぐに関心のあるフレームを生成するを実行します。キャプチャを開始すると、2 〜 3 MB のバッファーで十分なはずです。

そのことがわかります、 キャプチャ バッファーの設定ダイアログ ボックスも、フレームのサイズを変更できます。これは、場合に便利です、送信されたヘッダーのみを取得します。フレームを落としサイズ、バッファー内のいくつかのスペースを節約できが、ヘッダーをキャプチャ、必要があります。この記事では詳しく詳しく説明しません。
キャプチャを開始します。
バッファー セットを取得した後は、準備ができたあなたデータのキャプチャを開始します。いくつかの異なる方法でのキャプチャを開始することができます。
  • F10 キーを押します。
  • クリックしてください。 キャプチャ、し 開始 メニューからします。
  • クリックして、 キャプチャを開始します。 (このボタンをクリック ツールバーのボタン再生ボタンのようになります)。
ネットワーク モニターがパケットをキャプチャすると、わかります、メートルを移動して、図 2 に示すように、変更する統計情報。そうしない場合は、参照してください何もキャプチャする場合に発生、可能性があります変更する必要があります、ネットワーク カードがキャプチャされます。
元に戻す画像を拡大する
ネットワーク モニターのキャプチャ中に図 2:パケット

図 2: 中にパケットをキャプチャするネットワーク モニター

ネットワーク モニターでキャプチャを開始した後は、再現します。キャプチャ、しをクリックして、キャプチャを停止する必要のある問題、 停止 ボタンをクリックすると、ネットワーク モニター キャプチャ、[ 停止、または F11 キーを押すがキーボード。キャプチャされたデータを確認する準備ができました。

メモ ネットワーク モニターをネットワーク経由で送信するデータだけを収集します。したがっては、通常、要求に対して Web アプリケーションをキャプチャできません。コンソールで参照します。場合によっては、コンピューターの IP アドレスを使用して参照または完全修飾のドメイン名は、ローカル コンピューターに取得することができます。
キャプチャしたデータを確認します。
キャプチャが停止した後、表示できます、クリックして、キャプチャしたデータ キャプチャ、[ キャプチャしたデータを表示します。、または、キーボードの f12 キーを押すことによって。で既定は、としてをキャプチャしたときに回線で発生したすべてのデータを表示します。図 3 に示します。
元に戻す画像を拡大する
図 3: ネットワーク データのキャプチャモニター

図 3: データをネットワーク モニターのキャプチャ

この例では、それだけで表示できると便利です。HTTP パケット。取得したデータにフィルターを使用して簡単に行われますHTTP プロトコルのみが表示されます。キャプチャされたデータをフィルター処理する. します。 キャプチャ、し フィルター、または F8 キーを押しますキーボード、またはじょうごのように見える、ツールバーのボタンをクリックします。

で、 ディスプレイ フィルター ダイアログ ボックスをダブルクリックし、 プロトコルすべて = = フィルターを表示するのには ダイアログ ボックス図 4 に示すように。
元に戻す画像を拡大する
図 4: 式] ダイアログ ボックス強力なフィルタ リング機能を提供します。

図 4: 強力なフィルタ リング機能は、[式] ダイアログ ボックスが用意されています

既定では、ネットワーク モニターのすべてのプロトコルを示しています。だけを表示するのにはまた、HTTP プロトコルをクリックして すべてを無効にします。は、HTTP プロトコルをダブルクリックします。を選択し、をクリックしてください [OK].ネットワーク モニターが HTTP のみが表示されます。プロトコルです。

メモ それをキャプチャする前にネットワーク モニターをフィルタ リングできますのみ、設定するフィルターに一致するフレームをキャプチャします。ほとんどの場合、I したいです。キャプチャ後にフィルターを適用します。

そのため、キャプチャされたパケットをフィルター処理後そののみ HTTP プロトコルが表示されます、ネットワーク モニターがそれぞれ表示フレームがキャプチャされた HTTP データ。フレームをダブルクリックすると、確認できます。そのパケットの詳細については。扱っているシナリオではクライアントは認証を受け取ったかどうかするかを決定します。Web サーバーへの情報です。図 5 に示すキャプチャ応答を示しています。ASP は、GET 要求から。NET のページです。Web サーバーがあることに注意してください。戻る 401 ステータス コードへのアクセスが拒否されたこと示すで応答Web ページです。
元に戻す画像を拡大する
図 5: ネットワーク モニターの表示を認証が必要な場合の「アクセス拒否」の応答

図 5: ネットワーク モニターの認証が必要な場合は、「アクセス拒否」の応答を表示します。

WWW 認証ヘッダーを見ればの表示します。図 5 の Web サーバー (ネゴシエート) の Kerberos と NTLM の両方を受け入れる認証します。したがって、当社クライアントの認証に送信することに期待します。後、"アクセスが拒否されました"というメッセージに自動的に情報を私たちを参照してください。ここでは。
シーケンス番号
示すように、パケットに対するクライアントの応答を検索するには図 5 は、この応答の番号順序を確認する必要があります。シーケンスの概念数値をネットワーク モニターのレビューでは、頻繁に誤解されてトレースします。これらのことが発生した順序を理解するキーです。

図 5 の中央のウィンドウでは、わかります、HTTP のプロトコルすべての HTTP ヘッダーを表示する展開されています。HTTP の上プロトコル TCP プロトコルがあり、シーケンス番号と、ack がわかりますTCP セグメントの数です。シーケンス番号 (seq に表さTCP パケット) が特定の TCP セグメントを確認する方法を提供します。各 TCPシーケンス、確認、または ack、そのシーケンスによって行わなければなりません。

スニペットは、HTTP GET 要求のトレースからは、次のとおりです。
11 4294967263.4294633595 LOCAL 00045A420DBC HTTP GET Request 
(from client using port 3134) DADATOP 192.168.0.4 IP 
TCP: .AP..., len: 402, seq:3410290480-3410290882, ack:1947093623, win:17520, src: 3134 dst:  80 
最後のシーケンス番号は 3410290882 です。したがって、検索するのにはサーバーの応答は、そのシーケンスを確認フレームを見つける必要があります。つまり、3410290882 の ack で応答を探しています。ここでそのフレームです。
12 4294967263.4294636605 00045A420DBC LOCAL HTTP Response (to client using port 3134) 192.168.0.4 DADATOP IP 
TCP: .A...., len: 1460, seq:1947093623-1947095083, ack:3410290882, win:65133, src:  80 dst: 3134
これらの数値回のとき、ネットワーク モニター トレースを要求する前に、応答が表示されますがあるため重要です。するには特定のパケットがこれらを使用して、セグメントを確認するのには数値。

後トレースで、クライアントかどうかを探しています。認証情報を送信する、私たちの TCP セグメントを追跡する使用できます、HTTP GET 要求およびサーバーからの応答します。ここでは、スニペットをクライアントから認証情報を送信するフレーム。
23 4294967263.4294641621 LOCAL 00045A420DBC HTTP GET Request (from client using port 3135) 192.168.0.2 192.168.0.4 IP 
HTTP: GET Request (from client using port 3135)
  HTTP: Request Method = GET
  HTTP: Uniform Resource Identifier = /webapplication1/webform1.aspx
  HTTP: Protocol Version = HTTP/1.1
  HTTP: Accept = image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.
  HTTP: Accept-Language = en-us
  HTTP: Accept-Encoding = gzip, deflate
  HTTP: User-Agent = Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 
  HTTP: Host = alien
  HTTP: Connection = Keep-Alive
  HTTP: Authorization = Negotiate TlRMTVNTUAABAAAAB4IIogAAAAAAAAAAAAAAAAAAAAAFASgKAAAA
44 77 3D 3D 0D 0A 0D 0A         AAADw==....   
どのようなこれはわかりますか。私たちはわかりますが承認ヘッダーは、"Negotiate"に設定し、そのヘッダーに送信される文字の長い文字列がわかります。この応答は、NTLM の接続のクライアントとサーバーのネゴシエーションを示しています。最初の文字であるため NTLM 認証をここで使用されていることを知っている、'「"t"」その"Y"である場合、Kerberos があります。ヘッダーは、"NTLM"の代わりに"Negotiate"に設定されてこれは、「認証方法をネゴシエートする"されできる場合は、まず Kerberos をしますが、Kerberos または NTLM を使用するわけではありません。Kerberos を使用できない場合、NTLM を使用します。

図 6 は、表示されるフレームのスクリーン ショットです。見ることができますように上、認証情報は送信されます。メモここでわかるように、HTTP ヘッダー、中央フレームで、展開されていること各ヘッダーの詳細。
元に戻す画像を拡大する
図 6:認証情報が含まれているフレーム

図 6: 認証の情報が含まれるフレーム。

このフレームは、クライアントが明らかであるを示します認証情報を送信します。ユーザーにアクセスを取得する場合ユーザーがリソースへのアクセス許可を持たないため、いずれかがまたは、ある時点で認証情報が変更されることが原因です。ネットワーク経由で。
フィルターを適用する別の方法
多くの場合、トラブルシューティングすることができます、大量のトラフィックを持つサーバーです。このような場合に、多くの、、、HTTP フレーム、右側のものを見つけることが困難があります。詳細を使用してフィルタ リング条件式は、簡単に正しいフレームに適切な参照できます。

クリックして、 フィルター ボタン、またはキーボードの F8 キーを押して、起動するには ディスプレイ フィルター ダイアログ ボックスです。右側にある、クリックしてください。 新しい式を追加します。2 つ異なるフィルターがありますこの状況では使用する: IP アドレスによるフィルターHTTP ステータス ・ コードでフィルタ リングします。

IP アドレスによってフィルター処理するをクリックして、 プロパティ タブと左側のウィンドウでが表示されるまで下にスクロール IP.展開 IPをクリックし、表示されるまで下にスクロール [発信元アドレス.選択 == 関係、および ip アドレスを入力します。図 7 に示すように、クライアント コンピューターのアドレスです。その後、入力した IP アドレスから送信されたフレームだけが表示されます。
元に戻す画像を拡大する
図 7: による IP のフィルタ リングアドレス

図 7: IP アドレスのフィルタ リング

多くの場合、IP アドレスを確認することが重要です。最高のプロパティのトレースをフィルター処理することがあります。多くの場合ユーザーをします。ルーターまたはファイアウォールを介して Web サーバーをヒットします。その場合は、ip アドレスアドレスは、ルーターまたはファイアウォールの IP アドレスはよくなく、クライアント。

HTTP ステータス コードでフィルターすることもできます。たい場合フレームは 401 がクライアントに送信される場所をすばやく検索をフィルター処理することができます。HTTP 401 ステータス コード。これを行うには、HTTP でを選択、 プロトコル: プロパティ リストをし展開します。下にスクロールしをクリックしてください ステータス コード.選択 == 関係をクリックして、 10 進数 オプション ボタン (重要な) に、入力 401で、 図 8 に示すように、フィールドし、 [OK].場合は、401 ネットワーク モニター フレームのみが表示されます。図 8 に示すように、ステータス コードが送られました。
元に戻す画像を拡大する
図 8: は HTTP ステータスでフィルター株式コード

図 8: HTTP ステータス コードでのフィルタ リング
場所、401 された送信フレームを配置した後、その場合、F7 フィルターを無効にするのには、キーボードを押します。フレームは、401 がされて、送信し、周囲を確認できますフレームは、401 をクライアントの応答をします。

Fiddler ? HTTP プロキシのデバッグ

Internet Explorer からクライアント上で参照している場合トラブルシューティングを実行しているコンピューターは、Fiddler の (図 9 を参照) を使用できます。送信される HTTP 情報をキャプチャするのには、ネットワーク モニターではなく、クライアント。Fiddler は、HTTP パケットのみをキャプチャしに直接統合されています。インターネット エクスプ ローラー。
元に戻す画像を拡大する
図 9: Fiddler

図 9: Fiddler

図 9 では、401 応答がサーバーからわかり、応答がクライアントに表示し、 ネゴシエート Header(強調表示) します。クライアントに送信した後、実行時エラーが発生するこの例では、(この問題に関連付けられていない) 認証を私たちはわかりますがクライアントが Kerberos チケットを送信することによってそれを行いました。

行うことができます。Fiddler は、次の Web サイトからダウンロードします。
http://www.fiddlertool.com。

次は何でしょうか。

ネットワーク モニターまたは Fiddler を使用して、多くの場合、クライアントと認証の問題を考えることができます。失敗します。来月は Filemon と Regmon を使用する方法を移動します。SysInternals。これらのツールのアクセス許可のトラブルシューティングに便利です。ファイル システムやレジストリの問題。
として常に、トピックの今後の対応する案を提出するのには自由に列または技術を使用して、 それを要求します。 フォームです。

プロパティ

文書番号: 891032 - 最終更新日: 2011年8月3日 - リビジョン: 5.0
キーワード:?
kbhowto kbasp kbmt KB891032 KbMtja
機械翻訳の免責
重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。
英語版 KB:891032
Microsoft Knowledge Base の免責: Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。

フィードバック

 

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