| [Network] | |||||||||||
netcapコマンドでネットワーク・パケットをキャプチャする
|
|||||||||||
|
|||||||||||
| 解説 |
ネットワークに関するトラブルが発生した場合、トラブル・シューティングの方法にはさまざまな手段がある。だが、最も確実で素早く原因を特定し、対策を行うことができる手法としては、ネットワーク・ケーブル上を流れるパケットをキャプチャしてそれを解析するという方法があげられるだろう。例えば通信ができなくなった2台のコンピュータ間の通信をキャプチャすれば、その原因が、(どちらかの事情による)タイムアウト待ちなのか、それとも接続要求が相手側から拒否されているのか、もしくはまったく異なる相手と通信しようとしているのか、などが簡単に分かるからだ。通信の内容も細かく調べることができるので、相手に渡そうとしているデータや応答の内容が不正であるなども直ちに分かるだろう。
だがネットワークをキャプチャするためには、「ネットワーク・パケット・アナライザ」と呼ばれる専用のハードウェア、もしくはWindows OSなどの上で使用できるアプリケーションが必要となる(プロトコルに関する知識も必要であるが、それについてはここでは触れない)。Windows 2000 Serverならば「ネットワーク・モニタ」という管理ツールが付属しており、これを使ってネットワーク・パケットのキャプチャ、解析が行える。ただし自分自身のホストに対する通信(自分自身から発信されるパケットと、自分自身に向けて送信されているユニキャストとブロードキャストの通信)しかキャプチャできない。
これに対し、Microsoft Systems Management Server(SMS)にはこのネットワーク・モニタのフル機能バージョンが含まれており(Windows 2000 Serverのネットワーク・モニタは、これのサブセットとなっている)、ネットワーク・ケーブル上を流れるほかのホスト同士の通信もキャプチャして解析することができる。ただしスイッチング・ハブを使っていると、自ホストに関係のない通信は届かないのでキャプチャすることができず、必要ならば非スイッチング・ハブ(いわゆるリピータ・ハブ)を使うなどの工夫が必要である。なおSMS版のネットワーク・モニタは、リモートのネットワークをキャプチャする機能も持っているので、必要ならばこれを使って遠くのコンピュータ上のパケットをキャプチャすることもできる。この場合、キャプチャを実際に行うコンピュータには「ネットワーク モニタ ドライバ」というエージェントを導入しておく。このエージェントは、クライアントOSであるWindows 2000 ProfessionalやWindows XP Professionalにも導入することができる。
ネットワーク上のパケットをキャプチャして解析するためには、通常はこのような専用のアプリケーションなどが必要になるが、Windows XP Professional/Home Editionなら、パケットのキャプチャに限定すれば単体でも実行することができる。Support Toolsに用意されているnetcap.exeというコマンドを使うのである。このコマンドライン・ツールを使ってキャプチャしたパケットは、Windows 2000 ServerやWindows Server 2003のネットワーク・モニタもしくは、SMSのネットワーク・モニタ・ツールに取り込んで解析することができる。ネットワーク上の別のマシンからパケットをキャプチャするのと違って、直接そのマシンに対して送受信されているパケットを取り込むことができるので、正確にすべてのパケットをキャプチャできる。また、ネットワーク・モニタなどがインストールされているマシンがない環境や、客先などで急遽ネットワークのキャプチャを行う必要が生じた場合、telnet経由でしかシステムにアクセスできないような場合でも、このコマンドだけならば約50Kbytesと非常にサイズが小さいので、簡単にインストールして実行することができる。
| 操作方法 |
Support Toolsのインストール
Support Toolsとは、Windows XP ProfessionalおよびWindows XP Home EditionのインストールCD-ROMにある、\SUPPORT\TOOLS中に用意されている各種の補助ツールのことを指す。この中にnetcap.exeというツールが含まれている。同フォルダの中にあるSETUP.EXEを実行すると、デフォルトでは「C:\Program Files\Support Tools」に各種ツール類がインストールされ、環境変数PATHにもこのフォルダが追加される。そのため、コマンド・プロンプトを開いてnetcapと入力すれば、すぐに実行することができる。
netcapの事前設定
netcapを使うためには、最初に、ネットワーク・インターフェイスの指定方法とキャプチャしたデータを格納するためのフォルダの指定方法について知っておく必要がある。
まずはコマンド・プロンプトを起動して、「netcap /?」と入力してみる。実行するフォルダはどこでもよい。これにより、netcapの使い方を示す簡単な表示が得られるが、最後の部分に注意していただきたい。この部分だけは環境ごとに異なるメッセージが表示されている。
C:\>netcap /? ……使い方を表示させる ↓↓↓ここから下は環境ごとに異なったものが表示されている…最初のイーサネット…2つ目のイーサネット…IEEE1394インターフェイス
|
最後の「Use the following ……」という部分には、ネットワーク・インターフェイスの番号とMACアドレス、インターフェイス名などが表示されている。システムに装着されているネットワーク・インターフェイスの情報やMACアドレスは、「ipconfig /all」コマンドで得ることができる。ただしこのヘルプの表示では、WANインターフェイス(仮想的なダイヤルアップ用インターフェイス。未使用時でもシステム内部には存在している)も表示されているので、ipconfigよりも多く表示されている。
netcapではこの左端に表示されている「0」や「1」、「2」などという数字を利用してキャプチャするインターフェイスを指定する。デフォルトでは一番上の「0(この場合はWANインターフェイス)」が利用される。もしインターフェイスを明示的に指定せずにnetcapを起動すると、この場合はWANインターフェイスのトラフィックをキャプチャしようとしてしまい、何もキャプチャできないということになる。netcapを使う場合は、必ずこのヘルプ・メッセージでインターフェイスを確認し、さらにipconfig /allで表示されている結果(MACアドレス情報)と比べて、目的のインターフェイスを選択していただきたい。もし1番のインターフェイスを使うなら、netcapに「/n:1」というオプションを付ける。
もう1つ注意する点として、キャプチャしたデータの格納フォルダの指定がある。デフォルトでは各ユーザーのTMP環境変数の場所に作成される。だがこれでは使いにくいだろうから(あとでネットワーク・モニタで解析する場合、ファイルの場所を指定するのが面倒になる)、常に固定的な場所にファイルを格納するように事前に設定しておくとよい。例えばc:\captureフォルダを使うのなら、「netcap /tcf:c:\capture」を実行して、フォルダの場所を変更しておく。この設定はユーザーごとに1回行えば、以後ずっとこの場所が利用される。
パケットをキャプチャする
netcapの最も単純な使い方は、ネットワーク・インターフェイスを指定してnetcapコマンドを実行することである。デフォルトではキャプチャするパケットの最大量は1Mbytes分となっており、バッファがいっぱいになれば実行を終了し、コマンド・プロンプトへ制御が戻ってくる。途中でキャプチャを中断したければ、スペース・キーを押せばよい。キャプチャ中はキャプチャしたパケットの量(バッファの使用量を%で表す)が表示されており、終了時には、キャプチャしたデータを格納したファイルの名前が表示される。
C:\>netcap /n:1 …インターフェイスを指定してキャプチャを開始する |
netcapを実行すると、初回だけは「Installing the Network Monitor dirver」というメッセージが表示されることがある。これは、システムに「ネットワーク モニタ ドライバ」というキャプチャ用のエージェントをインストールしているというメッセージである。各ネットワーク・インターフェイスのプロパティ設定において、ユーザーがすでに手動でこのドライバをインストールしている場合は表示されないが、そうでない場合は、netcapコマンドが自動的にインストールを行ってくれる。このエージェントを削除するには、「netcap /remove」を実行すればよい。
キャプチャしたファイルは、ネットワーク・モニタなどのプロトコル・アナライザを使って解析すればよい。例えば次のようになる。
netcapのそのほかのオプション
netcapには次に示すようにいくつかオプションがある。
■バッファ・サイズの指定
デフォルトでは1Mbytes分しかキャプチャしないが、/bオプションを使うと、より多くのパケットをキャプチャすることができる。例えば「netcap /b:100」とすると、100Mbytesまでキャプチャすることになる。バッファ・サイズは1Mbytes単位で指定し、最大で1000(=1Gbytes)まで増やすことができる。また、「/t n」と指定すると、バッファがいっぱいになっても停止せず、古いものから順番に上書きされる。この場合は、必要なパケットをキャプチャした時点でスペース・キーを押し、キャプチャを停止すればよい。
■キャプチャの停止条件の指定
デフォルトではバッファがいっぱいになるか、スペース・キーが押されるまでキャプチャを行うが、キャプチャ時間を指定するか、特定の条件に一致した時点でキャプチャを停止させることもできる。
キャプチャ時間を指定するには、/l:HH:MM:SSというオプションを使用する。例えば「netcap /l:00:10:00」とすれば、10分経過した時点でキャプチャが自動停止する。
/tオプションを使うと、ある特定のパターンに一致するパケットだけをキャプチャすることができる。詳しくはnetcap /?で表示されるメッセージを見ていただきたいが、指定する条件としてはあまり融通が利かない。次のフィルタ指定ファイルを使う方法で、必要なパケットだけをキャプチャするのがよいだろう。
■フィルタ・オプションを使った特定パケットのキャプチャ
/fオプションで「キャプチャ・フィルタ・ファイル」を指定すると、条件に一致する特定のパケットだけをキャプチャすることができる。このキャプチャ・フィルタ・ファイルは、Windows 2000 ServerやWindows Server 2003、もしくはSMSのネットワーク・モニタ・ツールで作成可能だ。特定のアドレス(IPアドレスもしくはMACアドレスなど)とのやりとりや、パケット中の特定の位置に、指定された値が含まれるパケット(つまり特定のプロトコル)のみに限定してキャプチャすることができる。![]()
|
||||||||||||||||||||||||||||
| 「Windows TIPS」 |
ホワイトペーパー(TechTargetジャパン)
- WindowsTIPS (2010/3/19)
− [シャットダウン]ボタンの設定を変更する
− WINSサーバをインストールする
− WINSサーバをnetshコマンドで管理する - Windows 7のファイアウォール機能 (2010/3/18)
Win 7のファイアウォールの概要解説。ルールセットを切り替えるプロファイル機能が強化され、ドメインでもVPNでも、適切なルールが自動選択される - 第212話 プリンタ用紙 (2010/3/16)
致命的なディスク・クラッシュが起きる確率は、クラッシュによってもたらされる被害の大きさに比例する… - WindowsTIPS (2010/3/12)
− 不要なアドオンを無効化してIE8の起動を高速化する
− IE8のソース表示エディタを変更する
− RRASのNATでポートマッピングを定義する
|
|
スキルアップ/キャリアアップ(JOB@IT)
スポンサーからのお知らせ
- - PR -
| 「いつかは壊れるサーバ」そんな故障に 迅速で安価に手軽に対応する方法とは? New! |
| 「特権ユーザー」の事件を防げ! 万能権限を持つユーザーの管理方法とは? New! |
| 仮想環境の構築とデータ保護の特効薬?! 実績と信頼性の高いパッケージで安心運用 |
| 仮想環境のバックアップもこれまでどおり 「まるごと取ってまるごと戻す」簡単運用 |
| おばかアプリ選手権、第4弾開催中!! ムダにカッコよくてくだらない作品求ム! |
| 社内ファイルサーバを“クラウド”に統合 VPN直結「クラウド型ストレージ」を紹介 |
| その数、なんと400台以上! グループ内 サーバの「統合管理」によるメリットは? |
| 美人!? まあまあ? 気になる いやし系!! PV急増で「美人時計」がとった手段とは? |
| 進化を続ける富士通ストレージETERNUS DX 製品開発者の自信を裏付けるものとは何か |
| 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |
- - PR -
お勧め求人情報

**先週の人気講座ランキング**
〜CCNA編〜
| ◆ | TomcatやJBossなどAPサーバ環境に関する 情報を集約! “業務”用APサーバ大百科 New! |
| ◆ | 一気に解説! 最新のクラスタストレージ 「RAIDを超えたストレージ基準」……など New! |
| ◆ | クラウド的ユーザー体験の変化は脅威か? 仮想化技術を使いこなす運用管理術を紹介 New! |

| ◆ | 上司や部下、部署内メンバーとの情報共有 を“ガラッ”と変えるコラボツールとは? New! |
| ◆ | おばかアプリ選手権、第4弾開催中!! ムダにカッコよくてくだらない作品求ム! |
| ◆ | 社内ファイルサーバを“クラウド”に統合 VPN直結「クラウド型ストレージ」を紹介 |

| ◆ | Twitterのアカウントはなぜ突破された? メールによる新手の攻撃手法とその対策 |
| ◆ | もう仮想化のお試しフェイズは終わりだ! Hyper-V 2.0が基幹システムも仮想化 |
| ◆ | 美人!? まあまあ? 気になる いやし系!! PV急増で「美人時計」がとった手段とは? |

| ◆ | クライアント企業から求められる人材 ⇒IT技術と経営戦略を併せ持つ「戦略家」 |
| ◆ | .NET編集長が実践する「技術情報検索術」 サンプル・コードを簡単に探す“技”は? |
| ◆ | 業務効率と情報セキュリティ対策を両立! 手間なく確実に機密情報を守る方法とは? |

| ◆ | 進化を続ける富士通ストレージETERNUS DX 製品開発者の自信を裏付けるものとは何か |
| ◆ | 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |

| ◆ | 【CTC事例】約30の基幹システムを統合! 膨大なバッジジョブを制御した方法は? |
| ◆ | 仮想化すればコストは削減できるか? 仮想化に必要な「3つの視点」を解説する |
| ◆ | その数、なんと400台以上! グループ内 サーバの「統合管理」によるメリットは? |








