« September 2011 | Main | April 2013 »

2011.12.28

WireSharkとCentreCOM GS905LFでまるっと解析

Al

ひさびさに技術ネタを投稿。

ふとしたことからLAN上のパケットを解析するニーズが出てきたので方法を検討してみた。
パケットキャプチャソフトは無料定番のWireSharkが当確だが、ハブの選定はやや悩ましい。

昨今のハブはお行儀がよく、スイッチング機能によって宛先に指定された機器のつながるポートにのみパケットを流すため、WireSharkをインストールしたPCから他の機器に対するパケットをみることは原則できない。SSDP等のマルチキャスト系パケットとPC自身が宛先のパケットしか届かないためだ。Dropboxが頻繁に同期先クライアントを探していたり、WindowsがSSDPを発行しまくっていたりする様子も見れたりして微笑ましいがこれでは目的のパケットに辿りつけない。

そこでよく使われるのがリピータハブ、通称バカハブ/ダムハブである。古いハブは宛先を見ずに全ポートにパケットを流すため、その特性を利用して他機器宛のパケットも見るわけである。しかし古いハブは古いだけに10BASE-Tのものが中心で100BASE-T世代ではだいたいスイッチング機能がついてしまう。ストリーミング処理などが発生するケースではそもそも通信速度がでなくて正常動作がみられないという問題が出てきたりする。

最新の1000BASE-Tに対応しながらリピータハブとしても動作するハブとなると、ミラーリング機能を持つものが該当するが主に法人向けの高価な機種になってしまう。そんな中でも個人で手がだせそうな価格だったのがCentreCOM GS905LFだ。
フラッディングモードという名称だが、やっていることは宛先に関係なくパケットを全ポートに流してくれる機能だ。

指定したポートだけミラーリングをしたい場合には上位モデルのCentreCOM FS808TP V1が良いだろう。
(追記)FS808TPはギガビット非対応でした。


自分の場合は、GS905LFをチョイス。FLODDINGスイッチを入れると一旦全リンクが切れて、再度リンクが確立される。全ポートのパケットが大量に流れてきてしまうが、WireSharkの優秀なFilter機能で

ip.src == 192.168.0.100 and ip.dst == 192.168.0.200

などと送信元と宛先のIPアドレスを指定して、めぼしいパケットをみつけたら右クリックメニューから「Follow TCP Stream」を選択すれば、バラバラのパケットをトレースしてリクエスト、レスポンスの一連の流れを再構成してみせてくれる。

WireShark+CentreCOM GS905LFで非常に捗るというお話でした。

| | Comments (0) | TrackBack (0)

« September 2011 | Main | April 2013 »