obtenir mon adresse IP en Perl

obtenir mon adresse IP en Perl - Perl - Programmation

Marsh Posté le 14-04-2005 à 14:22:10    

Salut,
je suis en stage et je doit faire un prog en perl pour administrer des serveurs DNS.
Est ce que quelqu'un saurait comment recuperer son @ IP sans passer par le DNS ??
 
Merci pour vos réponses  :)

Reply

Marsh Posté le 14-04-2005 à 14:22:10   

Reply

Marsh Posté le 14-04-2005 à 14:50:44    

Code :
  1. use Sys::Hostname ();
  2. use Socket ();
  3. my $hostname = Sys::Hostname::hostname();
  4. my $address  = gethostbyname($hostname);
  5. print Socket::inet_ntoa($adress);


Reply

Marsh Posté le 14-04-2005 à 14:55:27    

merci pospos mais chez moi ca ecrit ca:
127.0.0.1 ns2:/var/www#  
donc ca affiche l'@ ip en localhost alors que je voudrait l'@ publique.
 
Merci pour ton aide

Reply

Marsh Posté le 14-04-2005 à 14:58:42    

bizare ca!
et il te donne bien le bon hostname?

Reply

Marsh Posté le 14-04-2005 à 15:02:23    

ouais j'ai bien le hostname.
mais je me connecte sur le serveur par Xmanager (je sais pas si ca a un rapport)
Est ce qu'il y aurait un autre moyen pour avoir l'IP ??
 
Merci

Reply

Marsh Posté le 14-04-2005 à 15:32:26    

C'est bon j'ai trouvé.
Ca donne l'@ ip en fonction de l'interface c'est plus facile :)
 
 

Code :
  1. # the interface is what your external IP is bound to- eth0 or ppp0, most likely
  2. # if you're on ADSL/dialup, it's probably ppp0
  3. $interface="eth0";
  4. # path to ifconfig
  5. $ifconfig="/sbin/ifconfig";
  6. @lines=qx|$ifconfig $interface| or die("Can't get info from ifconfig: ".$!);
  7. foreach(@lines){
  8.         if(/inet addr:([\d.]+)/){
  9.                 print "$1\n";
  10.         }
  11. }


 
Merci qd meme et A+

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed