¿Por qué ddclient me da un error de "IP no válida" cuando intento actualizar el DNS dinámico?

8

Me está costando mucho trabajo ddclient(que actualiza OpenDNS con mi dirección IP actual). Lo tengo ejecutándose como un demonio, pero nunca logra actualizar mi dirección IP en openDNS.

Para solucionar problemas, me estoy ejecutando ddclientdesde la línea de comandos de la siguiente manera.

(En estos ejemplos, los valores entre corchetes [] son ​​sustitutos de los valores reales por razones de seguridad)

Mi /etc/ddclient.confcontiene:

use=web, web=checkip.dyndns.org/, web-skip='IP Address'
server=updates.opendns.com
protocol=dyndns2
login=[my login]
password=[my password]
Home

Cuando corro:

sudo ddclient -daemon=0 -debug -verbose -noquiet

Yo obtengo:

WARNING:  file /var/cache/ddclient/ddclient.cache, line 3: Invalid Value for keyword 'ip' = ''
...
WARNING:  skipping update of Home from <nothing> to [my real ip].
WARNING:   last updated <never> but last attempt on Tue Oct  4 08:38:32 2011 failed.

Si rmutilizo el archivo de caché, ddclientfunciona una vez, pero luego falla en tiempos posteriores.

SpashHit
fuente
OP ¿sigues buscando una respuesta? Si es así, es posible que deba volver a publicar su pregunta, ya que está marcada para su cierre. =)
Ringtail
todavía no he encontrado una manera de hacerlo funcionar
SpashHit
Considere editar su pregunta para proporcionar información adicional. Esto puede mover su pregunta a la cima y deleitar una respuesta.
Ringtail
¿Qué más puedo agregar?
SpashHit
¿Has probado el soporte al cliente? sourceforge.net/projects/ddclient/support
Ringtail

Respuestas:

4

Error conocido - arreglado en sentido ascendente - obtenga la última versión de un PPA

Esto es / era de un "error" conocido: es causado por el proveedor de DNS dinámico que utiliza el protocolo dyndns2 incorrectamente y envía respuestas mal formadas ddclient.

El problema se ha solucionado desde hace mucho tiempo en ddclient (basado en uno de los parches vinculados en el seguimiento), pero el ddclient de Ubuntu es tan antiguo (heredado de upstream) que ni siquiera se puede parchear manualmente. (Ubuntu está en rev. 106 / Jan-2009, mientras que el último es r130 / Nov-2011).

Solución:

  1. Agregue este PPA consudo apt-add-repository ppa:nathan-renniewaldock/ppa
  2. sudo apt-get update && sudo apt-get install ddclient (se actualizará si es necesario)

El PPA tiene las últimas versiones para 10.04, 11.10 y 12.04.


Para los curiosos, aquí está el parche / buggy:

        # error # 10: algunos proveedores de dyndns no devuelven la IP así que
        # no podemos usar la IP devuelta
        my ($ status, $ returnip) = división / /, lc $ línea;
        $ ip = $ returnip if (no $ ip);
ish
fuente
4

Desea el paquete ddclient más nuevo de ppa: nathan-renniewaldock / ppa pero tenga en cuenta que este PPA contiene muchos otros paquetes que quizás no desee si todo lo que quiere hacer es hacer que ddclient funcione. Siga estos pasos para actualizar solo ddclient.

sudo apt-get install python-software-properties
sudo apt-add-repository ppa:nathan-renniewaldock/ppa

Ahora, como root, cree el archivo /etc/apt/preferences.d/nathan-prefsy edítelo para que se vea así (incluida la línea en blanco que es importante):

Package: *
Pin: release o=LP-PPA-nathan-renniewaldock
Pin-Priority: 400

Package: ddclient
Pin: release o=LP-PPA-nathan-renniewaldock
Pin-Priority: 500

Esto le dice a apt-get que ignore los paquetes del PPA que no sean ddclient. Entonces ahora debería ser seguro hacer esto para instalarlo:

sudo apt-get update && sudo apt-get install ddclient

O si ya lo instaló, haga esto:

sudo apt-get upgrade

Solo verifique que solo ddclient se vaya a actualizar.

Rob Fisher
fuente
Vale la pena señalar que esta información ya no es válida. Si intenta seguir estas instrucciones en ubuntu 12.04, obtiene este error: "FATAL: Error al cargar el módulo Perl Digest :: SHA1 necesario para la actualización de libertades". Para corregir este error, necesita ddclient 3.8.2 pero este PPA solo tiene 3.8.1.
frankster
0

omitiendo la actualización de @ de a 71.422.000.000.

La mayoría de las veces cuando recibo esta advertencia después de configurar mi ddclient
ADVERTENCIA: archivo /var/cache/ddclient/ddclient.cache, línea 3: Valor no válido para la palabra clave 'ip' = ''
es debido a un error tipográfico o simplemente a un pequeño tweek en el archivo ddclient.conf. Necesito detenerlo y compararlo con mis ejemplos de proveedores de dominio línea por línea.

Utilizo NameCheap porque me gusta la seguridad de su sistema de contraseñas, que está vinculado a cada dominio individualmente, generado automáticamente y se puede cambiar de forma rápida y sencilla.

Mi último problema fue algo que NameCheap no muestra en su ejemplo de Knowledgebase, pero era algo que recordaba haber tenido que hacer antes. Es decir, tengo que poner una coma entre los nombres de host que quiero actualizar (el nombre que viene antes del nombre de dominio). A continuación se muestra mi ejemplo que actualmente funciona con mi proveedor de dominio.

daemon = 3600
ssl = yes
protocolo = namecheap
use = web, web = dynamicdns.park-your-domain.com / getip
server = dynamicdns.park-your-domain.com
login = yourdomainname.com
contraseña = 0fc0ur5ethi5i5n0tmypa55w0rdfoob
@, hostname1
falta esto pequeña coma pequeña arroja un error

Kurt Lysek
fuente
No sé por qué esto está generando votos negativos. Si busca problemas de verificación de nombre, aparece como una pregunta. Tu solución me ayudó perfectamente. ¡Gracias!
nbroeking