Как то так? (просто изменив пример из Синопсиса на странице Net :: PCAP .)
use Net::Pcap;
my $err = '';
my $size = 0;
my $dev = pcap_lookupdev(\$err); # find a device
my $pcap = pcap_open_live($dev, 1024, 1, 0, \$err);
my $loop_func = sub { my($user_data, $header, $packet) = @_;
$size = $header->{len}; };
pcap_loop($pcap, 1, $loop_func, "just for the demo");
pcap_close($pcap);
print $size," bytes\n";