使用 ruby 1.9 和 latest gem install pcap
+ fix 进行编译(将->ptr
/转换->len
为_PTR
/ _LEN
),我发现在做了简单的代码之后:
require 'pcap'
cap = Pcap::Capture.open_offline('1.dmp')
cap.each { |pkt| p pkt.src; }
exit
Pcap gem 不离开 block cap.each
,即输出:
...
213.248.106.202
192.168.1.50
213.248.106.202
192.168.1.50
^C
^C
^C
^C
^C
并且进程只能被kill -s KILL <process_id>
.
有没有什么办法解决这一问题?
PS 1.dmp 文件使用tcpdump -w 1.dmp
.