Ginko Posté(e) le 9 février 2015 Posté(e) le 9 février 2015 (modifié) Bonjour, Depuis une bonne semaine j'ai un soucis avec l'API Gandi qui permet de mettre à jour les DNS quand on possède une IP dynamique : la connexion entre mon serveur et Gandi ne semble plus se faire. Avant, tout fonctionnait très bien. La méthode est celle proposée sur plusieurs sites dont l'officiel : https://github.com/Chralu/gandyn J'ai réessayé plusieurs installation mais rien n'y fait. Voici ce que je reçois en log : An error occured retrieving public IP address : URLError(TimeoutError(110, 'Connection timed out'),) http://i.imgur.com/fv5cEBC.png Une idée de l'origine du problème ? Modifié le 10 février 2015 par Ginko 0 Citer
Petit-genie Posté(e) le 9 février 2015 Posté(e) le 9 février 2015 Bonjour, Depuis une bonne semaine j'ai un soucis avec l'API Gandi qui permet de mettre à jour les DNS quand on possède une IP dynamique : la connexion entre mon serveur et Gandi ne semble plus se faire. Avant, tout fonctionnait très bien. La méthode est celle proposée sur plusieurs sites dont l'officiel : https://github.com/Chralu/gandyn J'ai réessayé plusieurs installation mais rien n'y fait. Voici ce que je reçois en log : An error occured retrieving public IP address : URLError(TimeoutError(110, 'Connection timed out'),) http://i.imgur.com/fv5cEBC.png Une idée de l'origine du problème ? La clé utilisé (API KEY) est toujours ok? 0 Citer
Ginko Posté(e) le 9 février 2015 Auteur Posté(e) le 9 février 2015 Oui, je me suis bien appliqué à refaire un c/c depuis le site à chaque essai. 0 Citer
gaetan.cambier Posté(e) le 9 février 2015 Posté(e) le 9 février 2015 (modifié) c'est pas un problème d'api, c'est un problème de détection de l'ip public (ta box aurait-elle eu une update ?) enfin bref, voici une solution : import urllib2 public_ip_retriever = urllib2.urlopen('http://ip.telize.com/').read() tu insere la ligne 1 à la ligne 4 à 9 au choix (aucune importance) tu modifie la ligne 138 (au 139 vu que tu aura ajouter une ligne) avec la ligne 2 qui va recuperer l'ip par un site web tu test en théorie, ca fonctionnera Modifié le 9 février 2015 par Gaetan Cambier 0 Citer
Ginko Posté(e) le 9 février 2015 Auteur Posté(e) le 9 février 2015 J'ai appliqué les modifications et malheureusement je tombe sur une nouvelle erreur : À savoir que j'ai bien les deux paquets python officiels d'installés. Merci pour le coup de main. 0 Citer
gaetan.cambier Posté(e) le 9 février 2015 Posté(e) le 9 février 2015 (modifié) c'est bizarre, moi, j'utilise le paquet python de synocomunity, peut etre que c'est à cause de cela a tester : remplace urllib2 par urllib dans les 2 lignes ps : chez moi, les 2 fonctionne, mais suis pas un pro du python Modifié le 9 février 2015 par Gaetan Cambier 0 Citer
Ginko Posté(e) le 9 février 2015 Auteur Posté(e) le 9 février 2015 Malheureusement ça ne fonctionne pas mieux. J'ai fait le test avec les paquets syno et ceux de la communauté, le résultat est le même. 0 Citer
gaetan.cambier Posté(e) le 9 février 2015 Posté(e) le 9 février 2015 (modifié) Tu as quel version de dsm ? tu as essayé de la lancé ainsi : /usr/local/python/bin/python /root/gandyn/gandyn.py Modifié le 9 février 2015 par Gaetan Cambier 0 Citer
Ginko Posté(e) le 9 février 2015 Auteur Posté(e) le 9 février 2015 Je tourne sous DSM 5.1-5022 Update 2. Avec ta commande j'obtiens : A savoir, je ne sais pas si ça joue : - je suis obligé d'installer le paquet python3 de Syno car celui de la communauté ne suffit pas. - si je tente un python3 setup.py install, j'obitiens ceci : 0 Citer
Ginko Posté(e) le 10 février 2015 Auteur Posté(e) le 10 février 2015 (modifié) Le problème a grandement avancé. Faute de comprendre l'origine de cette erreur, je suis parti à la recherche d'une solution alternative qui m'a amené à ce petit script fort bien foutu qui fait le même boulot : https://github.com/emersion/gandi-dyndns Seul hic rencontré, une nouvelle feuille de zone est créée à chaque exécution du script même si l'IP ne change pas. J'ai contacté l'un des contributeurs pour savoir si le soucis vient de mon côté. Modifié le 10 février 2015 par Ginko 0 Citer
loli71 Posté(e) le 10 février 2015 Posté(e) le 10 février 2015 (modifié) J'ai comme l'impression que ton problème initial vient surtout du fait que l'url utilisée pour récupérer l'adresse IP public (http://ifconfig.me/ip) met beaucoup trop de temps à répondre. Server public IP address is retrieved from http://ifconfig.me. Je ne connais pas grand chose à python, mais en regardant le site que tu as donné (https://github.com/Chralu/gandyn), il semblerait qu'il suffise de remplacer l'url "http://ifconfig.me/ip"par l'url " http://ip.telize.com/"(qui répond la même chose beaucoup plus rapidement) dans le fichier ipretriever/adapter.py à la ligne ligne 12 url_page = 'http://ifconfig.me/ip' deviendrait : url_page = 'http://ip.telize.com/' Je ne sais pas s'il suffit de changer cela dans le fichier sur le syno après installation, ou s'il faut le modifier avant de lancer l'installation... EDIT: En regardant de plus prêt le code, l'auteur semble avoir changé de methode et donc d'url et il utilise "http://ipecho.net/plain".. hors ce site ne répond pas non plus chez moi, pire que "http://ifconfig.me/ip" Essaye donc aussi de remplacer "http://ipecho.net/plain" par "http://ip.telize.com/"dans le fichier ipretriever/adapter.py à la ligne ligne 32 url_page = 'http://ipecho.net/plain' deviendrait: url_page = 'http://ip.telize.com/' Modifié le 10 février 2015 par loli71 0 Citer
Ginko Posté(e) le 10 février 2015 Auteur Posté(e) le 10 février 2015 (modifié) Merci beaucoup Loli71 ! Le soucis venait bien de ça. En le corrigeant comme tu l'indiques dans ipretriever/adapter.py avant l'installation le problème est résolu. Par contre aucune idée du pourquoi je semble être le seul à rencontrer ce problème alors qu'effectivement l'adresse ne répond pas. Merci encore. Modifié le 10 février 2015 par Ginko 0 Citer
Messages recommandés
Rejoindre la conversation
Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.