use Net::PcapUtils; use NetPacket::IP; use NetPacket::UDP; use NetPacket::Ethernet qw/:types/; use strict; Net::PcapUtils::loop( sub { my ($arg, $header, $packet) = @_; my $ethernet = NetPacket::Ethernet->decode($packet); if ($ethernet->{'type'} == ETH_TYPE_IP) { my $ip = NetPacket::IP->decode($ethernet->{'data'}, $ethernet); my $udp = NetPacket::UDP->decode($ip->{'data'}); . . print $ip->{'src_ip'}, ":", $udp->{'src_port'}, " -> ", $ip->{'dest_ip'}, ":", $udp->{'dest_port'}, "\n"; } }, 'DEV' => 'eth0', # 'FILTER' => 'udp dst host 192.168.1.1' ); #### use IO::Socket; use strict; my $sock = new IO::Socket::INET( 'PeerAddr' => '55.255.255.255' 'PeerPort' => '9', 'Proto' => 'udp' ); $sock->sockopt(SO_BROADCAST, 1);