// ******************************************** // Nom du script : whois.php // Auteur : SebF@frameIP.com.pas.de.spam // Date de création : 17 Novembre 2003 // version : 1.3 // Licence : Ce script est libre de toute utilisation. // La seule condition existante est de faire référence au site http://www.frameip.com afin de respecter le travail d'autrui. // ******************************************** // ******************************************** // Initiation des variables // ******************************************** $whois_ip_demande=$_POST['ipaddress']; // ******************************************** // Vérification des champs vide // ******************************************** if (empty($whois_ip_demande)) { $corp='Le Whois ne peux pas avoir lieu car le champ IP est vide.'; include 'whois_affichage_launcher.php'; exit(0); } // ******************************************** // Résolution du nom et conformité de l'IP selectionné // ******************************************** if (ip2long($whois_ip_demande)==-1) // Si ce n'est pas une IP { $nom_correspondant=gethostbyname($whois_ip_demande); // Alors résolution du nom if ($nom_correspondant!=$whois_ip_demande) // Si il a résolut le nom $whois_ip_demande=$nom_correspondant; // Récupération de l'ip résolut else { $corp='Le Whois ne peux pas avoir lieu car le champ IP ne contient pas d\'adresse valide ou le nom n\'a pas pu être résolut.'; include 'whois_affichage_launcher.php'; exit(0); } } // ******************************************** // Transforme les saisies tel que 10.10..4 en 10.10.0.4 // ******************************************** $inetaddr=ip2long($whois_ip_demande); $whois_ip_demande=long2ip($inetaddr); // ******************************************** // Appel de la fonction connexion // ******************************************** $buffer=connexion("whois.ripe.net",$whois_ip_demande); $serveur_ayant_repondu="whois.ripe.net"; // ******************************************** // Vérifie si on est sur le bon serveur // ******************************************** if (eregi("www.iana.org", $buffer)) { $buffer=connexion("whois.arin.net",$whois_ip_demande); $serveur_ayant_repondu = "whois.arin.net"; } elseif (eregi("whois.apnic.net", $buffer)) { $buffer=connexion("whois.apnic.net",$whois_ip_demande); $serveur_ayant_repondu = "whois.apnic.net"; } elseif (eregi("whois.registro.br", $buffer)) { $buffer=connexion("whois.registro.br",$whois_ip_demande); $serveur_ayant_repondu = "whois.registro.br"; } elseif (eregi("nic.ad.jp", $buffer)) { $buffer=connexion("whois.nic.ad.jp",$whois_ip_demande); ////////////////////////////////////////////////////////////////////// A VOIR #/e suppresses Japanese character output from JPNIC $extra = "/e"; $serveur_ayant_repondu = "whois.nic.ad.jp"; } // ******************************************** // Affichage du nom du serveur qui à rendu l'information // ******************************************** $corp='
'; $corp.='C\'est le serveur '.$serveur_ayant_repondu.' qui possède l\'information suivante :'; $corp.='

'; // ******************************************** // Intégre les retours charriot // ******************************************** $buffer2=nl2br($buffer); // ******************************************** // Affiche le resultat // ******************************************** $corp.=$buffer2; include 'whois_affichage_launcher.php'; // ******************************************** // Foncvtion de connexion whois // ******************************************** function connexion($serveur,$ip_recherche) { // ******************************************** // Ouverture de la session TCP // ******************************************** $socket=fsockopen($serveur, 43); if ($socket!=0) { // ******************************************** // Envoi de l'IP demandé // ******************************************** fwrite($socket, "$ip_recherche\n"); // ******************************************** // Receptionne dans buffer la réponse // ******************************************** while (feof($socket)==0) $tampon = $tampon . fgets($socket, 1000); // Le . signifie concatenation // ******************************************** // Ferme la session TCP // ******************************************** fclose($socket); } else { $corp='Impossible de se connecter sur le serveur '.$server.' via le port 43.'; include 'whois_affichage_launcher.php'; exit(0); } return ($tampon); } ?>