Aller au contenu

Messages recommandés

Posté(e) (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é par Ginko
Posté(e)

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?

Posté(e) (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é par Gaetan Cambier
Posté(e)

J'ai appliqué les modifications et malheureusement je tombe sur une nouvelle erreur :

T1qXTWB.png

À savoir que j'ai bien les deux paquets python officiels d'installés.

Merci pour le coup de main.

Posté(e) (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é par Gaetan Cambier
Posté(e)

Je tourne sous DSM 5.1-5022 Update 2.

Avec ta commande j'obtiens :

NYwlfQZ.png

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 : jkTIh4Q.png

Posté(e) (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é par Ginko
Posté(e) (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é par loli71
Posté(e) (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é par Ginko

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.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.