#!/usr/bin/perl # TCP Port scanner print q{ ================================================= SIMPLE TCP PORT SCANNER Coded by: CKJ ================================================= }; use IO::Socket; $source_dir= "C:/ips.txt"; open(FH,"$source_dir") or die $!; while(my $line= ){ while($line=~/(\d+.\d+.\d+.\d+)-(\d+.\d+.\d+.\d+)/g){ print "IPs are: $1 to $2\n"; $min_ip = $1; $max_ip = $2; for (; $min_ip<=$max_ip; $min_ip++) { my %ports = (80,8080,81,8181); my ( $daddr ); { $daddr = inet_aton($min_ip) || die("Failed to locate target host: $target"); print " ================================================================\n"; print " Scanning $min_ip on ports $port-$maxport\n"; print " This might take a while depending on how many ports you have\n"; print " ================================================================\n"; foreach $port(%ports) { print "\n == Scanning port $port =="; if( IO::Socket::INET->new(PeerAddr=>"$min_ip:$port",Proto=>'tcp',Timeout=>1)) { print "\n==== Port $port is open ====\n" ; } else{ print "\nPort $port is NOT open\n"; } } } print "\n\n\nFinished Scanning $min_ip up to port $maxport\n\n"; } } } print "\n Thanks for using my port scanner\n"; exit (0); close (FH);