#!/usr/bin/perl use Net::PcapUtils; use NetPacket::IP; use NetPacket::TCP; use NetPacket::Ethernet; Net::PcapUtils::loop(\&packets, FILTER=>"tcp"); sub packets{ my($user_data, $hdr, $pkt) = @_; my $eth_data = NetPacket::Ethernet::strip($pkt); my $np_data = NetPacket::Ethernet->decode($pkt); my $ip = NetPacket::IP->decode($eth_data); my $tcp = NetPacket::TCP->decode($ip->{'data'}); $i++; print "($i) Packet Captured:\n"; print "ip/port:: $ip->{'src_ip'}:$tcp->{'src_port'} --> $ip->{'dest_ip'}:$tcp->{'dest_port'}\n"; print "mac:: $np_data->{'src_mac'} --> $np_data->{'dest_mac'}\n\n"; }