Soyez le premier à donner votre avis sur cette source.
Snippet vu 15 348 fois - Téléchargée 29 fois
<font size="5">PHP-Scanner.IP/IPv4/Host/Port V1.1 by alexscott</font> <hr width="100%" size="1" color="#000000"> <? //init $port = 0; $portdeb = 0; $portfin = 0; $ok = 0; $server = $_SERVER['REMOTE_ADDR']; $serverdeb = $_SERVER['REMOTE_ADDR']; $serverfin = $_SERVER['REMOTE_ADDR']; $serveripv4 = 0; $timeout = 1; $limit = 300;//le temps de timeout du serveur function reload(){;}//recharge le formulaire si il y a une erreur function ipv4($ip)//retourne l'IPv4 d'une IP, IPv4 > 0(pour pouvoir les classer) { $longipv4 = 2147483648; $ipv4 = ip2long($ip); if($ipv4 < 0) $ipv4 += (2*$longipv4); return($ipv4); } if(!empty($_GET['required-portdeb']) && !empty($_GET['required-portfin']) && !empty($_GET['ok']) && !empty($_GET['required-serverdeb']) && !empty($_GET['required-serverfin']) && !empty($_GET['required-timeout']) && ipv4($_GET['required-serverdeb']) <= ipv4($_GET['required-serverfin']) && $_GET['required-portdeb'] <= $_GET['required-portfin'] && $_GET['required-timeout'] < $limit)//verif que le tableau est rempli { $portdeb = $_GET['required-portdeb']; $portfin = $_GET['required-portfin']; $ok = $_GET['ok']; $serverdeb = gethostbyname($_GET['required-serverdeb']); $serverfin = gethostbyname($_GET['required-serverfin']); $timeout = $_GET['required-timeout']; } else//sinon reload reload(); if($ok)//si c bon { if ($serverdeb == $serverfin)//titre si une seule ip echo 'IP : '.$serverdeb.', IPV4 : '.ip2long($serverdeb).' et hostname : '.gethostbyaddr($serverdeb).'<hr width="100%" size="1" color="#000000">'; else//titre sinon echo 'IP : de '.$serverdeb.' a '.$serverfin.', IPV4 : de '.ipv4($serverdeb).' a '.ipv4($serverfin).'<hr width="100%" size="1" color="#000000">'; for($time = 0, $serveripv4 = ipv4($serverdeb), $i = 0; $serveripv4 <= ipv4($serverfin); $serveripv4++)//boucle tant que toutes les ips demandes ne sont pas scanne { if($serveripv4 > ipv4($serverfin))//si toutes les ip sont resolues stop break; if($time+$timeout < $limit && $i < 27)//si tps et place non depasse { ?> <font size='2,5'> <? $server = long2ip($serveripv4); for($port = $portdeb; $port <= $portfin; $port++)//boucle des ports { if($time+$timeout < $limit && $i < 27)//si tps et place non depasse { $qy= @fsockopen($server, $port, &$errno, &$errstr, $timeout); if(!$qy) echo'Connexion failed.... [server: '.$server.' <=> host: '.gethostbyaddr($server).' <=> port: <b>'.$port.'</b>]<br>';//[errno= '.$errno.' => errstr: '.$errstr.']<br> else echo'<b><font color=red> Connected.... </font></b> [server: '.$server.' <=> host: '.gethostbyaddr($server).' <=> port: <b>'.$port.'</b>]<br>'; $time += $timeout; $i++; } else//sinon stop et... break; } ?> </font> <? if($port < $portfin)//si scan non fini page suivante echo '<br><a href="scanner.php?ok=1&required-serverdeb='.$server.'&required-serverfin='.$serverfin.'&required-portdeb='.($port-1).'&required-portfin='.$portfin.'&required-timeout='.$timeout.'">suite</a><br><br><br><a href="scanner.php">reload</a>'; } else//sinon stop et... break; } if($serveripv4 <= ipv4($serverfin))//si scan non fini page suivante echo '<br><a href="scanner.php?ok=1&required-serverdeb='.$server.'&required-serverfin='.$serverfin.'&required-portdeb='.($port-1).'&required-portfin='.$portfin.'&required-timeout='.$timeout.'">suite</a><br>'; echo '<br><br><a href="scanner.php">reload</a>'; } else//si ok != 1 alors on affiche le tableau de commande { ?> <table border="0" width="100%" height="517"> <tr> <td align="center" width="100%"> <form method="GET" action="scanner.php"> <input type="hidden" name="ok" value ="1"> <p>IP : vous pouvez mettre soit l'IP(127.0.0.1) soit le DNS(www.google.com) : <br>de:<input type="text" name="required-serverdeb" size="20" style="background-color: #000000; color: #FFFFFF" value="<?echo $_SERVER['REMOTE_ADDR'];//adresse client a scanner par defaut?>"> <br>a : <input type="text" name="required-serverfin" size="20" style="background-color: #000000; color: #FFFFFF" value="<?echo $_SERVER['REMOTE_ADDR'];//adresse client a scanner par defaut?>"> </p> <p>Port : <br>de:<input type="text" name="required-portdeb" size="4" style="background-color: #000000; color: #FFFFFF" value="80"> <br>a : <input type="text" name="required-portfin" size="4" style="background-color: #000000; color: #FFFFFF" value="80"> <p>Timeout : <br><input type="text" name="required-timeout" size="2" style="background-color: #000000; color: #FFFFFF" value="1"></p> <p><input type="submit" value="Envoyer" style="background-color: #000000; color: #FFFFFF"></p> </form> </td> </tr> </table> <? } ?> <p><hr width="100%" size="1" color="#000000">
18 nov. 2004 à 23:55
enfin bon ca reste 1 exemple pour comprendre le principe ... apres suffit de comprendre pour ameliorer voir faire des choses qui n'ont pas de rapports...
18 nov. 2004 à 23:22
12 déc. 2003 à 18:43
12 déc. 2003 à 00:09
30 août 2003 à 11:43
bravo+++
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.