2

Ruby を使用していくつかの PCAP ファイルを処理しています。完全なファイルを読み取り、各 pcaket を分析する必要があります。

require 'pcap'

inFile = Pcap::Capture.open_offline("1.pcap")

inFile.loop(-1) do |pkt|
#Process packet.
end

上記のコードは、すべてのパケットを読み取った後に終了しません。Ruby pcap のドキュメントによると、「負の数はパケットを永遠に処理するか、EOF に到達するまで処理します」。ここで何が問題になる可能性があります。

4

1 に答える 1

3

アドホック パケット分析のために、以下のバリエーションをよく使用しています。私のために働きます。Ruby 1.9.3-p125、pcaprub 0.11.2。

#!/opt/local/bin/ruby1.9
require 'pcaprub'

fn = ARGV[1] || "pcap-000"
pc = Pcap.open_offline(ARGV[0])
pc.each do |pk|
  fn1 = fn.succ!
  File.binwrite(fn1, pk)
end
于 2012-02-22T20:08:48.713 に答える