[résolu] obtenir l'ip d'un site

obtenir l'ip d'un site [résolu] - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 12-09-2003 à 11:44:40    

Bonjour,
je souhaiterais savoir comment faire une fonction( pour un script bash/sh) qui me retourne juste l'adresse ip d'un site.
Quand je fais "ping mon site", je vois bien aparaitre cette adresse mais y'a pleins de choses inutiles  (PING www.google.akadns.net (216.239.59.99) 56(84) bytes of data.)  
 
Merci
 
Ohan


Message édité par ohan le 12-09-2003 à 13:04:56
Reply

Marsh Posté le 12-09-2003 à 11:44:40   

Reply

Marsh Posté le 12-09-2003 à 12:03:11    

Pour avoir l'ip, il suffit d'interroger le serveur DNS, il est inutile de pinger la machine (ping fait une résolution du nom en utilisant le serveur dns).
 
Tu peux faire ça avec perl :

Code :
  1. perl -e 'use IO::Socket::INET; $addr  = gethostbyname("www.google.com" ); print inet_ntoa($addr);'


 
ou avec host :

Code :
  1. host www.google.com | awk '$2="A" {print $3}'


 
...

Reply

Marsh Posté le 12-09-2003 à 12:15:02    

Moi, j'ai un autre début de solution:

Code :
  1. ping -c1 www.google.akadns.net | cut -d' ' -f3


qui va te sortir dans notre cas:

Code :
  1. (216.239.59.99)


Après, pour virer les parenthèses, je sais pas trop...

Reply

Marsh Posté le 12-09-2003 à 12:16:55    

Holalala les méthodes détournées  :pt1cable:  
 
C'est évidemment la commande host qu'il faut utiliser, et il me semble qu'elle a un paramètre pour n'afficher que l'adresse IP ou hostname demandé, sans aucun texte inutile.

Reply

Marsh Posté le 12-09-2003 à 12:17:32    

torpe23 a écrit :

Moi, j'ai un autre début de solution:

Code :
  1. ping -c1 www.google.akadns.net | cut -d' ' -f3


qui va te sortir dans notre cas:

Code :
  1. (216.239.59.99)


Après, pour virer les parenthèses, je sais pas trop...


 
Je dirai:
 

ping -c1 www.google.akadns.net | cut -d' ' -f3 | tr -d "()"


Reply

Marsh Posté le 12-09-2003 à 12:19:29    

Ouais, c'est vrai que c'est "tr" qu'il fallait utiliser, mais c'est chiant toutes ces commandes à connaître par coeur. Moi, je m'embrouille à la fin!  :pt1cable:

Reply

Marsh Posté le 12-09-2003 à 12:50:47    

[Albator] a écrit :


 
Je dirai:
 

ping -c1 www.google.akadns.net | cut -d' ' -f3 | tr -d "()"


 


 
Bonjour et merci à tous pour vos réponses mais...
 la commande :

ping -c1 www.google.akadns.net | cut -d' ' -f3 | tr -d "()"


me donne :

Citation :

66.102.11.99
from
 
ping
transmitted,
=


 
Comment faire pour ne récuperer maintenant que la premiere ligne ?
Sinon, j'essaie de trouve le parametre pour la commande hoste qui retourne que l'ip mais j'ai bien du mal !!!
 
 
++
Ohan

Reply

Marsh Posté le 12-09-2003 à 12:55:59    

... | head -1
 
?

Reply

Marsh Posté le 12-09-2003 à 13:04:30    

jc the great a écrit :

... | head -1
 
?


 
Merci à tous, ca marche !
 
++

Reply

Marsh Posté le 12-09-2003 à 13:41:50    

t'as aussi :


host www.hardware.fr | cut -c28-44


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
Reply

Marsh Posté le 12-09-2003 à 13:41:50   

Reply

Marsh Posté le 12-09-2003 à 13:53:30    

Mjules a écrit :

t'as aussi :


host www.hardware.fr | cut -c28-44




 
mais ca marche pas pour tout !!!, host yahoo.fr | cut -c28-44 donne r www2.vip.ukl.ya
address 217.12.3.
 
 
;)
 
++
Ohan

Reply

Marsh Posté le 12-09-2003 à 14:01:50    

chez moi ça marche...
 
il faut adapter les 2 derniers nombres (respectivement la colonne de début et de fin d'affichage) pour que ça corresponde.
 
mais bon, là ça devient reloud à automatiser


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
Reply

Marsh Posté le 12-09-2003 à 14:49:22    

C'est n'importe quoi de faire un ping sur une machine juste pour avoir son adresse ip :pfff:

Reply

Marsh Posté le 12-09-2003 à 14:52:12    

ArSuniK a écrit :

C'est n'importe quoi de faire un ping sur une machine juste pour avoir son adresse ip :pfff:
 


 
T'as une solution alors ? Perso, je sais que c'est pas la super méthode (trop de bidouille) mais il faut mieux faire un truc comme ca  qui retroune l'ip que ne rien faire !
 
++
Ohan

Reply

Marsh Posté le 12-09-2003 à 16:54:32    

ohan a écrit :


 
T'as une solution alors ? Perso, je sais que c'est pas la super méthode (trop de bidouille) mais il faut mieux faire un truc comme ca  qui retroune l'ip que ne rien faire !
 
++
Ohan


 
On l'a déja donnée: host !
nslookup éventuellement !!!
 
Sinon pour le cut, regardez plutot les paramètres -d et -f plutot que -c !

Reply

Sujets relatifs:

Leave a Replay

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