A non Perl way to do this would be to use Nmap to quickly scan your network and then you could manipulate its output to fit your requirements. Have a look on Cpan for modules relating to Nmap, a couple of them look like they would be of some use to you.