Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 23/06/2015, à 21:51

mazou

Tester adresse ip wan

Bonsoir,

Novice, je galère sur la réalisation d'un script qui me permettrait de tester mon ip wan.

#!/bin/bash
if curl http://api.ipify.org == adresse ip attendue
then
echo "ip ok"
       else

    echo "pas bonne ip"
fi

Vous l'aurez compris, mon script ne fonctionne pas, le problème venant de la ligne avec le "if...".

Pourriez vous m'aider ?

Merci par avance !

Hors ligne

#2 Le 23/06/2015, à 22:25

Qid

Re : Tester adresse ip wan

mazou a écrit :

Vous l'aurez compris, mon script ne fonctionne pas, le problème venant de la ligne avec le "if...".

En même temps rien qu'à la lecture moi je vois quand-même un problème logique... ce n'est même pas un souci de connaissances là...
comme quoi même une simple recopie peut ne pas être évidente pour certain...

Reprenons les choses de zéro... ta source est celle ci :
https://www.ipify.org

L'exemple qui y est cité est celui-ci :

$ curl 'https://api.ipify.org?format=json'
{"ip":"86.213.12.178"}

Donc ... tu m'expliques comment... en se basant sur le tableau des formats... tu arrive à ça :

curl http://api.ipify.org

Non le problème ne vient pas du "$" qui est la convention pour signaler un debut de ligne de commande
et je t'accorde que l'exemple basique qu'ils donnent en bash laisse perplexe mais comme tu n'as pas donné toutes les infos...


"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique Ubuntu d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil

Hors ligne

#3 Le 24/06/2015, à 13:17

mazou

Re : Tester adresse ip wan

Merci pour ton retour.

Reprenons les choses de zéro... ta source est celle ci :
https://www.ipify.org]

A vrai dire je n'avais pas cette source, mais elle est peut être meilleure que la mienne !

Donc ... tu m'expliques comment... en se basant sur le tableau des formats... tu arrive à ça :

curl http://api.ipify.org
]

Tout ce que je peux dire c'est que "curl http://api.ipify.org" ramène bien mon ip externe.

et je t'accorde que l'exemple basique qu'ils donnent en bash laisse perplexe mais comme tu n'as pas donné toutes les infos...]

Je vais donc tâcher d'être plus clair.

Je me connecte à un vpn (ipsec openswan) et je souhaite qu'il soit toujours connecté. Je me suis donc dis que la solution la plus simple serait de vérifier si mon adresse de sortie est bien celle qui doit être fournie par le vpn et que dans le cas contraire je lancerai le script de reconnection du vpn.
Alors ce n'est peut être pas la meilleure méthode, mais je n'ai pas trouvé mieux pour l'instant !

J'espère avoir été plus clair et que cela te permettra de m'apporter une réponse...

Hors ligne

#4 Le 24/06/2015, à 14:10

Qid

Re : Tester adresse ip wan

Bon ... bah si la ligne de commande est bien opérationnelle dans ce cas autant pour moi
Mais c'est donc que le souci vient de la syntaxe du script en lui même
sauf que pour t'aider il nous manque quand-même toujours le même élément...
pourquoi on a trop souvent besoin de demander quel est le message d'erreur pour diagnostiquer le problème
message d'erreur qui soit donne la solution
Soit donne des pistes de recherche pour trouver cette dernière
Soit et c'est là que je veux en venir peut aussi éviter les aides inefficaces...
enfin bref... je vais devoir tester ton script moi même pour le déboguer
ou tu vas me donner les éléments? wink


"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique Ubuntu d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil

Hors ligne

#5 Le 24/06/2015, à 14:27

bruno

Re : Tester adresse ip wan

Ceci n'est pas correct :

if curl http://api.ipify.org == adresse ip attendue
monip="x.x.x.x"
ip=$(curl -s https://api.ipify.org)
if [ $ip = $monip ] ; then
   echo "ip: $ip ok"
else
 echo "ip: $ip nook"
fi

Dernière modification par bruno (Le 24/06/2015, à 14:31)

#6 Le 24/06/2015, à 15:09

Qid

Re : Tester adresse ip wan

bruno a écrit :

Ceci n'est pas correct :

if curl http://api.ipify.org == adresse ip attendue

Pourquoi utiliser des variables? Sa solution était bonne aussi non au delà de la syntaxe?
En tous cas autant j'avais pas la solution autant j'étais sûr que c'est la façon dont le if était tourné qui posait souci
une doc sur le langage de script bash aurait pour sûr donné la solution ...


"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique Ubuntu d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil

Hors ligne

#7 Le 25/06/2015, à 20:36

mazou

Re : Tester adresse ip wan

Merci pour votre aide, ça fonctionne !

Hors ligne