ご存じですか、Microsoft Network Monitor はコマンドラインでも操作できます

こんにちは、ソケット通信、デジタル署名、証明書、暗号化プログラミングのサポートをさせていただいている小泉です。
通信プログラムの開発やネットワーク関連のトラブル シューティングを実施されている方は、既にご存じの方も多いかと思いますが、マイクロソフトではネットワーク キャプチャを取得するための「Microsoft Network Monitor」 (通称 NetMon (ネットモン))を無償で提供しています。
本日は、このネットワーク キャプチャ ツールの便利な使い方をご紹介いたします。

皆様は、下記の手順にてネットワーク キャプチャ ログを取得されているのではないかと思います。 

<ネットワークキャプチャ取得方法>
1) Network Monitor 3.4 を起動します。

2) Network Monitor 3.4 の "Start Page" タブで "Create a new capture tab..." をクリックし、新規のネットワークキャプチャ タブを起動します。

3) [Capture] メニューから [Start] をクリックし、キャプチャを開始します。

4) パケットが取得できたら、[Capture] メニューから [Stop] をクリックしキャプチャを停止します。

5) [File] メニューの [Save As...] をクリックし、任意な名前で保存します。

そんなに難しい操作ではないですね。
さてさて、日々ネットワークと格闘されている開発者や運用者の皆様、「こんな操作でさえ面倒だ」、「ネットワーク キャプチャをお客様に取得してもらいたいのだけど、ちゃんと取得いただけるか不安」と感じた事はありませんか。

そんな時!!
上記の5つの手順で採取できたネットワーク キャプチャが、下記の1つのコマンドで採取できてしまうとしたらどうでしょう!!

コマンド構文 :
nmcap /network <Network Interface> /capture /File <File name>

コマンド例 :
nmcap /network * /capture /File c:\tmp\file.cap

これをコマンドプロンプト上で実行すると下記のようにネットワークキャプチャの取得を開始いたします。

そしてネットワークキャプチャを停止する場合は、Ctrl + C にて「c:\tmp」フォルダにキャプチャファイルfile.capが生成されます。
たとえば、BAT ファイルに書いておけば、BAT ファイルのダブルクリックのみでネットワーク キャプチャが取得可能となります。また、そのBAT ファイルをお客様にそのまま配布してしまえば、操作手順の説明は一切不要となるわけです。(ただし、nmcapコマンドはNetwork Monitor付属のコマンドですので、Network Monitorのインストールは忘れずに!!)これにて日々の業務効率が向上、ひょっとしたら普段より1時間は早く帰れるかもしれませんね。
他にも便利なオプションが盛りだくさん、詳しくは「nmcap /usage」にてご確認くださいませ。  

< Network Monitorのダウンロード先>
Microsoft Network Monitor 3.4
https://www.microsoft.com/downloads/details.aspx?FamilyID=983b941d-06cb-4658-b7f6-3088333d062f&displaylang=en