Commit 55c6cc6
Changed files (2)
lib
tasks
lib/tasks/agent.rake
@@ -15,8 +15,10 @@ namespace :agent do
end
desc "scan network traffic"
- task nfm: :environment do
- agent = FakeAgent.new(Agent.first.id, ENDPOINT)
- agent.sniff('en1')
+ task :nfm do
+ id = Agent.first.id
+ agent = FakeAgent.new(id, ENDPOINT)
+
+ agent.packet_capture('eth0')
end
end
lib/fake_agent.rb
@@ -45,7 +45,15 @@ class FakeAgent
capture.stream.each do |p|
packet = Packet.parse(p)
if packet.is_ip?
- next if packet.ip_saddr == Utils.ifconfig(interface)[:ip_saddr]
+ yield packet if block_given?
+ end
+ end
+ end
+
+ def packet_capture(interface)
+ sniff(interface) do |packet|
+ if packet.ip_saddr == Utils.ifconfig(interface)[:ip_saddr]
+ else
packet_info = [packet.ip_saddr, packet.ip_daddr, packet.size, packet.proto.last]
puts "%-15s -> %-15s %-4d %s" % packet_info
end