Показать сообщение отдельно

  #8  
Старый 25.08.2009, 13:13
B1t.exe
Постоянный
Регистрация: 06.11.2006
Сообщений: 865
С нами: 10268804

Репутация: 208


По умолчанию

Этюд 5. Сканирование под собственные нужды.

Код:
#!/usr/bin/perl
  use Socket;
  $host=@ARGV[0];
  $port=@ARGV[1];
  @ip=split (/\D+/, $host); #делим айпи на разряды по точке
  $index=0;
  $r1=$ip[0]; #записываем разряды в массив
  $r2=$ip[1];
  $r3=$ip[2];
  $host=$r1.".".$r2.".".$r3; #составляем предварительный адрес
   
   socket(SOCK, PF_INET, SOCK_STREAM, getprotobyname('tcp'));
   
  while($index<=255)
  {
  $host=host.".".$index; #составляем окончательный адрес
   $addr = inet_aton($host); # далее коннект
          $paddr = sockaddr_in($port, $addr);
          if(connect(SOCK, $paddr)){
           print("Host: $host open $port port");
          }else{
          next;
          }
   
  }
а зде здесь менять порт вообше ?
мне надо сканировать 2000 порт. Ну и хотел бы многопоточность ! можете подправить ?