Soyez le premier à donner votre avis sur cette source.
Vue 74 831 fois - Téléchargée 1 424 fois
<? // ******************************************** // Affichage de l'entete html // ******************************************** echo ' <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <LINK REL="StyleSheet" HREF="../style.css" TYPE="text/css"> <title>FrameIP, Pour ceux qui aiment IP - Script Masque</title> <META http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <META NAME="AUTHOR" CONTENT="www.frameip.com"> <META NAME="COPYRIGHT" CONTENT="Copyright (c) 2003 by framip"> <META NAME="KEYWORDS" CONTENT="masque, ip, classe, A, B, C, D, E, 255, 0, 128, bits, binaire, routeur, wan, reseaux, lan, comaraison, adresse, segment, convertion, hote, passerelle, route, calcul, sousreseau"> <META NAME="DESCRIPTION" CONTENT="Frameip, pour ceux qui aiment IP - Script Masque"> <META NAME="ROBOTS" CONTENT="INDEX, FOLLOW"> <META NAME="REVISIT-AFTER" CONTENT="1 DAYS"> <META NAME="RATING" CONTENT="GENERAL"> <META NAME="GENERATOR" CONTENT="powered by frameip.com - webmaster@frameip.com"> </head> <body> '; // ******************************************** // Initiation des variables // ******************************************** $calcul_adresse_ip=$_POST['IP']; $calcul_mask=$_POST['MASK']; // ********************************************** // Récupération de la date et heure // ********************************************** $annee=date("Y"); $mois=date("m"); $jour=date("d"); $heure=date("H"); $minute=date("i"); $seconde=date("s"); // ********************************************** // Récupération de l'IP cliente // ********************************************** $ip_client=getenv("REMOTE_ADDR"); // ********************************************** // Récupération du Ptr de l'IP cliente // ********************************************** $ptr=gethostbyaddr("$ip_client"); if ($ptr==$ip_client) $ptr="Pas de ptr"; // ********************************************** // Récupération du port TCP source // ********************************************** $port_source=getenv("REMOTE_PORT"); // ********************************************** // Récupération de l'IP du browser // ********************************************** $ip_browser=getenv("HTTP_X_FORWARDED_FOR"); // ******************************************** // Validation du champs IP // ******************************************** $calcul_inetaddr=ip2long($calcul_adresse_ip); $calcul_adresse_ip=long2ip($calcul_inetaddr); // ******************************************** // Vérification de la saisie // ******************************************** $erreur=0; // Initialisation if (($calcul_inetaddr==0)||($calcul_inetaddr==-1)) masque_erreur(1); if (($calcul_mask<1)||($calcul_mask>32)) masque_erreur(2); // ******************************************** // Convertion du masque // ******************************************** switch ($calcul_mask) { case 1: $calcul_chaine_mask="128.0.0.0"; break; case 2: $calcul_chaine_mask="192.0.0.0"; break; case 3: $calcul_chaine_mask="224.0.0.0"; break; case 4: $calcul_chaine_mask="240.0.0.0"; break; case 5: $calcul_chaine_mask="248.0.0.0"; break; case 6: $calcul_chaine_mask="252.0.0.0"; break; case 7: $calcul_chaine_mask="254.0.0.0"; break; case 8: $calcul_chaine_mask="255.0.0.0"; break; case 9: $calcul_chaine_mask="255.128.0.0"; break; case 10: $calcul_chaine_mask="255.192.0.0"; break; case 11: $calcul_chaine_mask="255.224.0.0"; break; case 12: $calcul_chaine_mask="255.240.0.0"; break; case 13: $calcul_chaine_mask="255.248.0.0"; break; case 14: $calcul_chaine_mask="255.252.0.0"; break; case 15: $calcul_chaine_mask="255.254.0.0"; break; case 16: $calcul_chaine_mask="255.255.0.0"; break; case 17: $calcul_chaine_mask="255.255.128.0"; break; case 18: $calcul_chaine_mask="255.255.192.0"; break; case 19: $calcul_chaine_mask="255.255.224.0"; break; case 20: $calcul_chaine_mask="255.255.240.0"; break; case 21: $calcul_chaine_mask="255.255.248.0"; break; case 22: $calcul_chaine_mask="255.255.252.0"; break; case 23: $calcul_chaine_mask="255.255.254.0"; break; case 24: $calcul_chaine_mask="255.255.255.0"; break; case 25: $calcul_chaine_mask="255.255.255.128"; break; case 26: $calcul_chaine_mask="255.255.255.192"; break; case 27: $calcul_chaine_mask="255.255.255.224"; break; case 28: $calcul_chaine_mask="255.255.255.240"; break; case 29: $calcul_chaine_mask="255.255.255.248"; break; case 30: $calcul_chaine_mask="255.255.255.252"; break; case 31: $calcul_chaine_mask="255.255.255.254"; break; case 32: $calcul_chaine_mask="255.255.255.255"; break; default : $calcul_chaine_mask="255.255.255.255"; break; } // ******************************************** // Calcul du nombre de HOST // ******************************************** if ($calcul_mask==32) $calcul_host=1; else $calcul_host=pow(2,32-$calcul_mask)-2; // ******************************************** // Calcul de la route // ******************************************** $calcul_route=$calcul_inetaddr&ip2long($calcul_chaine_mask); // Ajoute l'IP et le masque en binaire $calcul_route=long2ip($calcul_route); // Convertit l'adresse inetaddr en IP // ******************************************** // Calcul de la premiere adresse // ******************************************** if ($calcul_mask==32) $offset=0; else $offset=1; if ($calcul_mask==31) $calcul_premiere_ip="N/A"; else { $calcul_premiere_ip=ip2long($calcul_route)+$offset; $calcul_premiere_ip=long2ip($calcul_premiere_ip); } // ******************************************** // Calcul de la dernière adresse // ******************************************** if ($calcul_mask==32) $offset=-1; else $offset=0; if ($calcul_mask==31) $calcul_derniere_ip="N/A"; else { $calcul_derniere_ip=ip2long($calcul_route)+$calcul_host+$offset; $calcul_derniere_ip=long2ip($calcul_derniere_ip); } // ******************************************** // Calcul du broadcast // ******************************************** if ($calcul_mask==32) $offset=0; else $offset=1; $calcul_broadcast=ip2long($calcul_route)+$calcul_host+$offset; $calcul_broadcast=long2ip($calcul_broadcast); // ******************************************** // Présentation des résultats // ******************************************** echo ' <p align="center"> <font size="4" color="#008000"> <b> Masque de sous réseaux </b> </font> </p> '; echo ' <table border="0" width="100%" id="table1"> <tr> <td width="50%" align="right"><b>Les saisies</b></td> <td> </td> </tr> <tr> <td width="50%" align="right">Adresse IP :</td> <td>'.$calcul_adresse_ip.'</td> </tr> <tr> <td width="50%" align="right">Masque de sous réseau :</td> <td>'.$calcul_mask.'</td> </tr> <tr> <td width="50%" align="right"> </td> <td> </td> </tr> <tr> <td width="50%" align="right"><b>Les résultats</b></td> <td> </td> </tr> <tr> <td width="50%" align="right">Masque de sous réseau :</td> <td>'.$calcul_chaine_mask.'</td> </tr> <tr> <td width="50%" align="right">Nombre maximum d\'hôte :</td> <td>'.$calcul_host.'</td> </tr> <tr> <td width="50%" align="right">L\'adresse de réseau (La route) :</td> <td>'.$calcul_route.'</td> </tr> <tr> <td width="50%" align="right">Première adresse d\'hôte :</td> <td>'.$calcul_premiere_ip.'</td> </tr> <tr> <td width="50%" align="right">Dernière adresse d\'hôte :</td> <td>'.$calcul_derniere_ip.'</td> </tr> <tr> <td width="50%" align="right">Adresse de broadcast :</td> <td>'.$calcul_broadcast.'</td> </tr> </table> '; // ******************************************** // Fin du script général // ******************************************** fin_du_script(); // ******************************************** // Fonction d'affichage de l'erreur de saisie // ******************************************** function masque_erreur($erreur) // $erreur représente le numéro d'erreur. { // ******************************************** // Affichage de titre d'erreur // ******************************************** echo ' <p align="center"> <b> <font size="5" color="#008000"> Erreur </font> </b> </p> '; echo "<BR>"; // ******************************************** // Message personnalisé // ******************************************** switch ($erreur) { case 1: echo'Le calcul ne peux pas avoir lieu car le champ IP est vide ou non valide.'; break; case 2: echo'Le calcul ne peux pas avoir lieu car le champ MASK est vide ou non valide.'; break; } // ******************************************** // Fin du script général // ******************************************** fin_du_script(); } function fin_du_script() { // ******************************************** // Affiche de l'Url // ******************************************** echo ' <p align="right"> <a target="_blank" href="http://www.frameip.com"> www.frameip.com </a> </p> '; // ******************************************** // Fin de la page Html // ******************************************** echo ' </body> </html> '; // ******************************************** // Fin du script général // ******************************************** exit(0); } ?>
18 août 2006 à 18:55
10 mai 2006 à 18:55
20 sept. 2004 à 05:37
Voila qui va me faire gagner du temps !!
(trop la fleme de calculer ça a la main :o)
Merci à toi !
18 avril 2004 à 02:13
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.