Pcaplet

Captureを使うパケット処理ツールの雛形を提供するクラスで す。 使うときは'pcaplet'requireして下 さい。

典型的な使い方:

require 'pcaplet'
include Pcap

my_tool = Pcaplet.new
my_tool.each_packet {|pkt|
  # pkt について処理を行なうコード
}
my_tool.close
        

コマンドラインで指定されたフィルタ、および 以下のコマンドラインオプションを tcpdump と同様に解釈します。

-i -r -c -s -n

スーパークラス:

Object

クラスメソッド:

new

Pcapletオブジェクトを生成します。コマンドライン の解析とデバイスのオープンが行なわれます。

メソッド:

add_filter(filter)

コマンドラインで指定されたフィルタ加えて、さらに filterを追加します。実際にはフィルタを以下のよ うに設定します。

"( current_filter ) and ( filter )"

each_packet {|packet|...}
each {|packet|...}

各パケットに対して繰り返します。ブロックには Packetクラスかそのサブクラスのインスタンスが渡されま す。

capture

内部で使用している Capture オブジェクトを返します。

close

デバイスをクローズします。


fukusima@goto.info.waseda.ac.jp