パケットアナライザのプロトコル識別の仕組みとは

このQ&Aのポイント
  • パケットアナライザは、パケットをキャプチャしてユーザに表示する機能とともに、プロトコルを自動判別してハイライト表示する機能も備えています。
  • 具体的な判別の仕組みはデータベース化されたプロトコルの特徴とパケットの照合です。
  • Wiresharkなどの具体的な使い方については別途調べる必要がありますが、パケットアナライザのプロトコル識別は自動化されており、ユーザにとって便利な機能です。
回答を見る
  • ベストアンサー

パケットアナライザ:プロトコル識別の仕組みとは

ネットワーク初学者の学生です。 Wireshark等のスニッファー(Wiresharkしか使ったことないですが…)について疑問に思った事がありましたので質問します。 パケットをキャプチャしてユーザに表示してくれるアナライザには、プロトコルを自動判別して対応したパラメータをハイライト表示してくれる機能が付いていると思うのですが、あれはどういった仕組みで判別しているのでしょうか。 プロトコルの特徴をデータベース化し、パケット毎にデータベースと照合しているのかな、と想像してみたのですが、調べ方が悪いのかWireshark等の使い方を教えてくれるページしか探し当てることができないため、正解が分からずモヤモヤしています。 ご存知の方がいらっしゃいましたら教えて欲しいです。 よろしくお願いします。

  • ppmcn
  • お礼率95% (43/45)

質問者が選んだベストアンサー

  • ベストアンサー
  • weavaest
  • ベストアンサー率15% (157/1020)
回答No.1

データベースかどうかは分かりませんが、通信データを解析して、該当するプロトコルに割り付けて表示しています。 ユーザー独自で機能追加が可能ですので、一度ご自分で試してみたら、理解しやすいと思います。 luaという言語で書かれています。wireshark luaで検索すれば、いろいろ情報は出てきます。 実際に試さなくても、これらのサイトも見ればイメージが湧くかもしれないですね。

ppmcn
質問者

お礼

お礼が遅くなってしまってすいません。 ご回答ありがとうございました。 luaで書かれてるんですね、貴重な情報ありがとうございます。 詳しく調べてみたいと思います。

その他の回答 (1)

  • SRLeonard
  • ベストアンサー率56% (179/316)
回答No.2

標準化されたプロトコルでの通信であれば、ヘッダのプロトコル番号を見れば、どんなプロトコルなのか分かります。 プロトコルが分かれば、データ部のどこの情報がどんなパラメータを表現していて、そのパラメータの意味を解釈することもできます。 細かい工夫は色々されているのだろうと思いますが、プロトコル番号でプロトコルを判別して、データ部のbit列を意味のある情報として解釈しているのだと思います。

ppmcn
質問者

お礼

お礼が遅れてしまい申し訳ないです。 回答ありがとうございました。 なるほど、よくわかりました。 教えていただいた点を踏まえてもっと勉強してみます。

関連するQ&A

  • X11というプロトコルのパケットをフィルタする方法

    現在、Wiresharkでサーバソフトが受信しているクライアント端末からのパケットを観測しています。 Wiresharkでは tcp.dstport == 5000 このようにTCP5000番ポート宛にパケットを、上記の条件式でフィルタして表示しています。 しかし、いくつかのクライアント端末からはTCPではなく、X11というプロトコルで来ているものがあります。宛先ポートも5000番です。 この場合、宛先5000番ポートに送信されているX11プロトコルのパケットをフィルタするための条件式はどのように書けばよいでしょうか? どうぞ、ご教示の程よろしくお願い致します。

  • Wireshark 該当時間のみ抽出

    Wiresharkの フィルタリング方法について質問です。 現在、会社のルータのCPUが高騰している時間でどのような通信が行われているのかWiresharkを用いて解析をしようとしています。 キャプチャは事前にしかけており、丸一日のキャプチャログがある状態で、そこから該当時間のキャプチャのみ絞り込もうとしています。 ですが、Wiresharkで以下のフィルタをかけても該当時間からパケットキャプチャが終了した時間までのデータを出力してしまいます。 frame.time > "2015-06-11 09:59:00.000" やりたいこととして、9:59のログのみWireshark上へ表示させたいと考えています。 そこから、IPやプロトコルなどでさらに細かく絞り込む予定です。 フィルタで可能なのか、もしくはWiresharkの別の機能を使えば可能なのか、ご教示ください。 宜しくお願いします。

  • 社内LANで流れるプロトコル

    会社のパソコンで Wireshark でパケットキャプチャをしてみたところ、 HSRP,STP, LDF(Loop Detection Frame)等が定期的に観測されました。 調べてみるとHSRPはGW冗長化、STPはループ防止、LDFもループ防止 のようですが、これらを導入する場合に末端にいるユーザのパソコンまで これらのフレームが届く設定がされることが多いでしょうか? 帯域は微々たるものですが末端のパソコンへの負荷等考えると、 上位機器で止めるなどの措置はとれるのでしょうか/とったほうがよいでしょうか? 最適化に向けたアドバイスをいただきたいです。 (なお、私はLAN管理者ではないのですが、管理者も詳しくなく助言はできる立場にあります。 上記プロトコルを最適だという認識なく導入した経緯があります。) 会社のLANの同一セグメントはPC100台規模です。 条件にもよるところかもしれませんがよろしくお願いします。

  • Wiresharkのパケットの詳細のテキストコピー

    Windows7のWireshark1.8.2の質問です。 画面キャプチャ http://sourceforge.jp/projects/wireshark/images?id=62 上記の画面での、上から二ペイン目(「Frame 11~」や、「Ethernet ~」,protocolなどが表示されている部分)に表示されているテキストを全部コピーしたいのですが、一行ずつしかコピーできません。 一ペイン目でエクスポートしたいパケットを選択して、 File->Export Objectを選ぼうとしてみても、Export Objectがグレーになっていて選択できません。 二ペイン目に表示されているテキストをそのまま全部コピーする方法はありませんか? よろしくお願いします。

  • 無線のパケットキャプチャにおけるプロトコルについて

    パケットキャプチャソフト(OmniPeek)を使用して802.11(無線)のパケットキャプチャを取得しています。 取得しているパケットキャプチャにプロトコルが表示されるのですが、”CFE"と言うプロトコルが表示されていますが、このプロトコルだけが調べても見つかりませんでした。 他にRTS,CTS, Encripted Data,ACK,BAのプロトコルがあり、それらは調べて以下のように意味を解釈しましたが、"CFE"については見つからないため、意味が理解できていません。 ご存知の方がいましたらご教示を頂けますようお願い致します。 -------------------------------- RTS(Request To Send):端末側からアクセスポイントに通信許可を問い合わせる信号。 CTS(Clear to Send):アクセスポイントから端末に通信許可を与える信号。 Encrypted Data:WEP、TKIP、AESで暗号化されたデータ。 ACK(Acknowledgment):データ伝送で受信側から送信側へ送られる肯定的な返事。 BA(Block Ack):フレームアグリメーション方式の種類であるA-MPDUにおいて複数のデータに対して一括のACK(肯定的)な返事。 -------------------------------

  • パケットキャプチャとファイアウォールの関係について

    端末マシンでUDPで受信していることをパケットキャプチャ(wireshark)が示しているのですが、アプリケーションでは受信できません。 端末マシンのファイアウォールの設定のためかと思いましたが、パケットキャプチャで受信が確認できているため原因がわかりません。 パケットキャプチャは、セキュリティソフトがブロックした場合でも表示されるのでしょうか。 同様に、NTPで時間が取得できないのに、キャプチャができています。 このあたり、ブロックはされてしまうパケットも、とりあえずマシンにやってきたものはすべてキャプチャされるのでしょうか。

  • 指定アプリのパケットキャプチャがしたい

    パケットキャプチャソフトには、Wireshark等のソフトがあるかと思いますが、 指定アプリケーションのパケットキャプチャを行うソフトはありますか? 「指定アプリケーション」が通信しているポートやプロトコルは分からない状態です。 ファイヤーウォールソフトなどで、「○○アプリが通信しようとしています」と言われるので、 技術的には可能かと思っています・・・。 OS Windows7 32bit

  • パケットキャプチャツール(WireSharkなど)

    Wiresharkというパケットキャプチャーツールを使ってみたんですが、イーサネットのFCSにあたるデータが、パケットダンプに表示されません・・・。 マニュアルを見てみても、ツールが排除している記述が見当たりませんでした(英文なので見落としているかもしれませんが・・・) 様々なパケットキャプチャのツールがあると思いますが、一般的に、イーサネットのFCSはダンプしないのが「暗黙のルール」として存在しているのでしょうか? ご存知の方がおられたら教えてくださいm(__)m よろしくお願いいたします。

  • Wiresharkで長期間キャプチャできますか?

    1ヶ月間常時パケットキャプチャしておき、後ほどアプリの動作に問題があった場合は特定時間の状態を調べたいと思っています。 試しに20分間キャプチャして試したところ、ちゃんとフィルタをした結果でも20MB程度になってしまい、1ヶ月で40GBを超えます。 この条件でWiresharkは動作するでしょうか? さすがに難しいと思うので、自動でログローテーションさせるなどの運用方法はありませんか? また、Wiresharkで表示されている時間はキャプチャ開始からの時間のようですが、日時を知る方法はありますか? よろしくお願いします。

  • Wiresharkの使い方

    Wiresharkで、自分のパソコン以外のパソコンのパケットをキャプチャするにはどうすれば良いのでしょうか? ・遠くに住んでいる家族のパソコンをキャップチャするにはどうすれば良いのでしょうか?(IPアドレスを教えてもらえばできますか?) ・自宅にパソコンが2台あるのですが、Wiresharkをインストールしたパソコンからもう一つのパソコンの通信を見るにはどうすれば良いのでしょうか? ・大学の研究室に自分のパソコンを2台持って行くとして、Wiresharkをインストールしたパソコンからもう一つのパソコンの通信を見るにはどうすれば良いのでしょうか?(自分のパソコンを使って実験すれば迷惑にはなりませんか?) スイッチとかハブの仕組みがよくわかっていないのが原因だとはわかっているのですが、本などを読んでいても理解できなくて・・・申し訳ありませんが教えてください。 そもそも自分のパソコンがどのネットワーク機器で通信しているのかわかりません。 ですが、とりあえず実践してみて、パケットやネットワークについて学んでいきたいと思っています。 面倒でしたら、どれかひとつでも良いので教えてくださると嬉しいです。 よろしくお願いします。