mit opendd HTTP/1.0 404 Not Found // Manuell im Browser selber string funktioniert!

trueter

Neuer User
Mitglied seit
20 Sep 2008
Beiträge
38
Punkte für Reaktionen
0
Punkte
0
Guten Abend, ich versuche mit opendd meinen Dyndns account zu aktualisieren.
Wenn ich die URL
http://members.dyndns.org/nic/updat...&wildcard=OFF&backmx=NO&offline=NO&myip=meine ip adresse%20HTTP/1.0

in einen Browser eingebe, erscheint ein PasswordDialoge und der Update funtioniert.
Im Syslog der Freetz Box erscheint aber:
Code:
Nov 27 17:46:07 fritz user.info opendd[10054]: -- running OpenDD 0.7.9 in normal mode
Nov 27 17:46:07 fritz user.info opendd[10054]: main() : getting my ip address : meine richtige externe IP 
Nov 27 17:46:32 fritz user.err opendd[10054]: getaddrbyname() : Name or service not known
Nov 27 17:46:32 fritz user.err opendd[10054]: getdyndnshostnames() : XXXXXXX.dyndns.org cannot be resolved ---- I[COLOR="red"]st hier der Fehler???[/COLOR]
Nov 27 17:46:44 fritz user.err opendd[10054]: Connection refused (146)
Nov 27 17:46:44 fritz user.info opendd[10054]: dyndns() : connected to members.dyndns.org:80
Nov 27 17:46:44 fritz user.info opendd[10054]: dyndns() : GET /nic/update?system=dyndns&hostname=XXXXXX.dyndns.org&wildcard=OFF&backmx=NO&offline=NO&myip=Meine IP Adresse HTTP/1.0
[COLOR="red"]Nov 27 17:46:44 fritz user.info opendd[10054]: listen_response() : HTTP/1.0 404 Not Found[/COLOR]
Nov 27 17:46:44 fritz user.info opendd[10054]: listen_response() : Content-Length: 5251
Nov 27 17:46:44 fritz user.info opendd[10054]: listen_response() : Content-Type: text/html; charset=utf-8
Nov 27 17:46:44 fritz user.info opendd[10054]: listen_response() : <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"	"http://www.w3.org/TR/html4/loose.dtd">
Nov 27 17:46:44 fritz user.err opendd[10054]: listen_response() : unexpected response : <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"	"http://www.w3.org/TR/html4/loose.dtd">
Nov 27 17:46:44 fritz user.err opendd[10054]: listen_response() : Please contact the developers at [email protected]
Nov 27 17:46:44 fritz user.info opendd[10054]: dyndns() : connection closed
Nov 27 17:46:44 fritz user.info opendd[10054]: main() : dyndns() exit normally
Nov 27 17:46:44 fritz user.notice ONLINECHANGED[10027]: [online]  * Running OpenDD ... done.


Also was ich nicht verstehe: wenn ich die Zeilen aus dem Log in einen Browser zusammenkopiere (bis auf die :80) dann kommt zumindest kein 404 Error sondern ein Password Dialog.
Habt Ihr einen Tip für mich?
Liebe Grüße und Dank
 
Was passiert denn, wenn Du das mit telnet machst? Bei mir kommt:
Code:
$ telnet members.dyndns.org 80
Trying 204.13.248.111...
Connected to members.dyndns.org.
Escape character is '^]'.
GET /nic/update?system=dyndns&hostname=XXXXXX.dyndns.org&wildcard=OFF&backmx=NO&offline=NO&myip=1.2.3.4 HTTP/1.0

HTTP/1.1 [B]403[/B] Forbidden
Date: Sun, 27 Nov 2011 17:22:38 GMT
Server: Apache
X-UpdateCode: X
Content-Length: 8
Connection: close
Content-Type: text/html; charset=iso-8859-1

[B]badagent[/B]Connection closed by foreign host.
Ich vermute, dass die Übersetzung von badagent bedeutet, dass er den User-Agent nicht mag, bzw. dass ich gar keinen übergeben habe.
 
Folgede Antwort bei Telnet Login
Code:
telnet members.dyndns.org 80
Trying 204.13.248.111...
Connected to members.dyndns.org.
Escape character is '^]'.
GET /nic/update?system=dyndns&hostname=XXXXXX.dyndns.org&wildcard=OFF&backmx=NO&offline=NO&myip=meine IP (von der Telekom) HTTP/1.0

HTTP/1.1 403 Forbidden
Date: Sun, 27 Nov 2011 18:06:49 GMT
Server: Apache
X-UpdateCode: X
Content-Length: 8
Connection: close
Content-Type: text/html; charset=iso-8859-1

badagentConnection closed by foreign host.


Ist das erwartet?
Was kann ich da tun? Ich bin auf opendd umgestiefgen, da es ja ein Problem mit dem dyndns client von AVM bei Einsatz von dnsmasq gibt.
 
Zumindest ist es das Gleiche, was bei mir kam, und es ist nicht 404. Möglicherweise muss man noch einen User-Agent mitsenden, der DynDNS gefällt. Vielleicht kommt mit dem User-Agent auch der Fehler 404. Mit "User-Agent: Test" bekomme ich "401 Authorization Required". Das würde einen Browser veranlassen, nach einem Passwort zu fragen.

Vielleicht mag DynDNS den User-Agent von opendd nicht mehr.
 
Das ist jetzt wahrscheinlich akademisch, aber kannst Du mir sagen, warum der request, wenn er per Webbrowser gesandt wird, geht? Kann man den User-Agend umstellen?
Auch ist mir noch nicht ganz klar, warum im log ein 404 für not found kommt.
Lieben Dank für einen Tip, wie ich hier weitermachen könnte.
 
Wenn mit "User-Agent: Test" eine Antwort kommt, dann vermutlich mit fast jedem. Warum überhaupt einer verlangt wird, weiß ich auch nicht.

Das mit dem User-Agent ist nur eine Vermutung. Das sicherste wäre, die gesendeten Daten zu untersuchen.

So sieht es aus, wenn ich eine User-Agent mit sende. Der Server antwortet mit 401, da bedeutet, dass er Anmeldedaten will.
Code:
telnet members.dyndns.org 80
Trying 204.13.248.111...
Connected to members.dyndns.org.
Escape character is '^]'.
GET /nic/update?system=dyndns&hostname=XXXXXX.dyndns.org&wildcard=OFF&backmx=NO&offline=NO&myip=1.2.3.4 HTTP/1.0
User-Agent: Test

HTTP/1.1 401 Authorization Required
Date: Sun, 27 Nov 2011 18:40:53 GMT
Server: Apache
X-UpdateCode: A
WWW-Authenticate: Basic realm="DynDNS API Access"
Content-Length: 7
Connection: close
Content-Type: text/html; charset=iso-8859-1

badauthConnection closed by foreign host.
 
Bin leider nicht drauf gekommen wie ich den Traffic mitschreiben könnte und deshalb in den cource code marschiert. Da steht:

Code:
/* Send User-Agent */
  if (!socket_write(s, 0, "User-Agent: OpenDD %s\n", VERSION)) {
    logmsg(LOG_ERR, "dyndns() : %s", socket_strerror(errno));
    socket_destroy(s);
    return 0;

wenn ich User-Agent: OpenDD mit telnet probiere kommt auch ein HTTP/1.1 401 Authorization Required

Also scheint der UserAgend nicht mitgesandt zu werden... Leider ist da auch nix im Log.. Wie kann ich denn den Traffic mitschreiben? Grüße
 
Nimm das Programm tcpdump mit ins Image auf. Dann kannst Du mit "tcpdump -ns1555 -idsl port 80" verfolgen, was über Port 80 gesendet wird. Ich hoffe mal, dass das mit dem dsl-Interface so funktioniert und nicht AVM das irgendwie verhindert.
 
Das probier ich.. Aber da ich drei Fritzen habe habe ich jetzt erst mal dnsmaq (der ja mit aktueller FW und Trunk wohl für einigen Troubel sorgt) auf eine andere Box umgezogen.. Bitte gebt mir etwas Zeit. Wird wohl nächste Wochende werden.. Strohwitwer könne ja gut basteln :) Schönen ersten Advent!
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.