my $oDump = Net::Frame::Dump::Offline->new( file => $SOURCE_PCAP_FILE, filter => '', isRunning => 0, keepTimestamp => 0, ); $oDump->start; my $count = 0; while (my $h = $oDump->next) { my $f = Net::Frame::Simple->new( raw => $h->{raw}, firstLayer => $h->{firstLayer}, timestamp => $h->{timestamp}, ); #right now can display packet using $f->print, but i want to parse it to read eth address so tried this: my $ethlayer = Net::Frame::Layer::ETH->new(raw => $h->{raw}); print "print mac: ".$ethlayer->print; #but even this fail. }