Wenn Du die per Commandline bekommen willst, die Parameter stehen in @ARGV, Du könntest also bspw schreiben:
for my $ip (@ARGV) {
print $ip . "\n";
}
um das script mit beliebig vielen IPs als Parametern aufrufen zu können.
Wenn Du sie lieber im Script abfragen willst:
print "Bitte die IP eingeben: ";
my $ip = <STDIN>;
chomp($ip);
mit <STDIN> wird eine Zeile (inklusive Zeilenumbruch) von der Standard-Eingabe gelesen. chomp entfernt dann den Zeilenumbruch.
nmap könntest Du ganz einfach mit Backticks aufrufen:
my $output = `nmap parameter`;
Dann müsstest Du nur noch den Output nach den für dich interessanten Daten durchsuchen.