Wiresharkを使ってみよう

tcpdumpの限界 これまで3回にわたり、tcpdumpの概要や使用方法について説明してきました。しかし、パケットの解析を行うためのツールはtcpdump以外にも数多くのものが開発、公開されています。

津川 知朗

2008年12月26日 20:00

tcpdumpの限界

 これまで3回にわたり、tcpdumpの概要や使用方法について説明してきました。しかし、パケットの解析を行うためのツールはtcpdump以外にも数多くのものが開発、公開されています。

 tcpdumpは、コマンドの実行によってパケットをフィルタリングするコマンドラインベースのツールです。しかし、tcpdumpが提供する数多くのコマンドオプションをすべて把握しておくことは大変であり、またいくつかの入力情報についてはユーザーが何らかの方法を用いて事前に調査しておかなければならないなど、利用するにはやや敷居が高いツールです。

 また、出力結果についても、tcpdumpは到着したパケットのヘッダー情報をユーザーが解読可能な書式に変換するだけです。よって、tcpdumpの出力結果の解析/整形を行うには、ユーザーが自力で何らかのプログラミング言語でスクリプトなどを記述する必要があります。

 そのため、より簡単に、かつ直感的に解析を行うために、GUIベースでパケットの解析を行うツールが数多く開発されてきました。例えば、GUIベースのパケット解析ツールには図1に示すようなものがあります。

GUIベースでパケットの解析を行うツール

 図1のパケット解析ツールは、tcpdumpと同様、コンピュータに到着した各パケットの情報をユーザーが解読可能な書式に変換して出力する機能に加えて、独自の機能を持っているものも多く、場合によっては非常に有用なツールとなります。

 例えば、tcpdumpではパケットのデータ部分については、16進数(または、ASCII文字)でそのまま出力するオプションしか存在していません。しかし、上記のパケット解析ツールの多くは、パケットのデータ部分についても解析を行い、プロトコルに応じて必要な情報をユーザーに分かりやすい形で表示してくれます。

 またtcpdumpから提供される機能は、パケット単位で処理を行ってその結果を出力することのみです。一方、上記のパケット解析ツールの多くは、それに加えて、例えば監視対象のNetwork Interface Card(以下、NIC)に到着したパケットの総数とプロトコル種別(TCP、UDP、ICMPなど)の割合を計算して結果を出力する機能など、到着したパケット群に対して何らかの統計処理を行うような機能も提供しています。

 もちろん、GUIであることも効率よく解析を行う上で大きな助けとなります。例えば、WindowsはNICの名前がLinuxなどのように簡単な名前(eth0など)ではなく、930F53DA-F4FC-4080-BC07-27BD7C90072EというようなGlobally Unique IDentifier(以下、GUID)と呼ばれる値で管理されています。よって、複数のNICがコンピュータに接続されている場合、tcpdumpでは、-iオプションを用いてそれぞれ指定を行うのは大変煩雑です。

 tcpdumpの-iオプションは、NICの名前のほかに番号(始めに認識されているNICから順番に1、2、3...)で指定することもできますが、対象としているNICにどの番号が割り当てられているのかは、ユーザーが独自に調査しなければなりません。GUIベースのパケット解析ツールの多くは、コンピュータに接続されているNICの一覧を分かりやすい形で表示してくれるため、前述した面倒な調査、入力の手間を省くことができます。

 GUIベースのパケット解析ツールは、tcpdumpと比較して数多くの利点を持っています。しかし、これらのツールの多くは商用の製品であり、高価なものも多いため、気軽に利用することはなかなか困難です。

 そこで、今回はGUIベースのパケット解析ツールの中から、フリーで公開されており、かつ多くの人に利用されているWiresharkを取り上げ、その概要と使用方法について説明していきます。
 

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30