#! perl -slw use strict; use IO::Socket; socket( SOCKET, PF_INET, SOCK_DGRAM, getprotobyname('udp') ) or die "socket: $!"; bind( SOCKET, sockaddr_in( 54321, inet_aton( 'localhost' ) ) ) or die $!; my $input; while( 1 ) { my $addr = recv( SOCKET, $input, 1024, 0 ) or die $!; my( $port, $ipbin ) = sockaddr_in( $addr ); printf "Got '%s' from ip:%s port:%d\n", $input, inet_ntoa($ipbin), $port; }