DynDNS Client Einstellungen für STRATO
-
Bei mir funktioniert das problemlos so:
Service Type: Custom Interface to monitor: WAN (pFsense befindet sich hinter einem anderen Router) Interface to send update from: WAN Verbose Loggin: - HTTP API DNS Options: - HTTP API SSL Options: - Username: - Password: - Update URL: https://Domain:Password@dyndns.strato.com/nic/update?hostname=Domain&myip=%IP%&wildcard=NOCHG&mx=NOCHG&backmx=NOCHG z.B. https://test.de:pa55wOrt@dyndns.strato.com/nic/update?hostname=test.de&myip=%IP%&wildcard=NOCHG&mx=NOCHG&backmx=NOCHG Result Match: - TTL: -
Greetz
Ovrld -
Moin, ich wollte hier mal meine Erfahrungen teilen - eventuell hilft es jemandem:
- Für Strato funktioniert wie bereits erwähnt die "Custom"-URL (https://dyndns.strato.com/nic/update?hostname=Domain&myip=%IP%&wildcard=NOCHG&mx=NOCHG&backmx=NOCHG)
- Benutzername und Passwort muss man der URL nicht voranstellen. Das pfSense-Skript übernimmt diese aus den Einstellungen. Es funktioniert auch andersherum, nur findet man dann das Paswort im Klartext in den Konfigurationsdateien.
- Das "Custom"-Skript wertet nicht die Antworten von Strato aus. Im Log und auch in der Benutzeroberfläche werden keine Fehler angezeigt, wenn das Update nicht funktioniert hat. Das konnte der alte ddclient besser.
- Ich habe 5 Sub-Domains bei Strato. Ich hatte leider das Problem, dass die IP nur bei der ersten Domain un den letzten beiden geändert wurde. Die anderen Updates mussten manuell angestossen werden.
- Meine Annahme, dass dies damit zu tun hat, dass die Antwort von Strato nicht ausgewertet wird, scheint sich bestätigt zu haben:
- Ich habe als Hack mal einen "sleep(10)" in das Skript eingebaut. Damit scheint es jetzt zu funktionieren: Alle Domains werden korrekt angepasst.
- Meine Änderung ist aber wirklich nur ein Hack, ich habe mehr oder weniger geraten, wo man das Skript bremsen muss. Das sollte sich mal jemand ansehen, der sich damit auskennt... (/etc/inc/dyndns.class)
VG
A R -
@baltic said in DynDNS Client Einstellungen für STRATO:
Moin, ich wollte hier mal meine Erfahrungen teilen - eventuell hilft es jemandem:
- Das "Custom"-Skript wertet nicht die Antworten von Strato aus. Im Log und auch in der Benutzeroberfläche werden keine Fehler angezeigt, wenn das Update nicht funktioniert hat. Das konnte der alte ddclient besser.
Das stimmt so nicht ganz. Das kann der Custom Eintrag durchaus. Dafür ist der Eintrag beim Result match zuständig:
Wenn der natürlich leer ist, gibt es logischerweise auch keinen Check ob das geklappt hat oder nicht. WAS da genau rein muss, liegt an der Ausgabe von Strato.
- Ich habe 5 Sub-Domains bei Strato. Ich hatte leider das Problem, dass die IP nur bei der ersten Domain un den letzten beiden geändert wurde. Die anderen Updates mussten manuell angestossen werden.
Was wahrscheinlich an einem Error lag, der durch fehlendes Result Matching nicht erkannt wurde? Ist lediglich eine Vermutung, müsste man ggf. sonst aus den Logs kratzen was das Feedback war.
- Ich habe als Hack mal einen "sleep(10)" in das Skript eingebaut. Damit scheint es jetzt zu funktionieren: Alle Domains werden korrekt angepasst.
- Meine Änderung ist aber wirklich nur ein Hack, ich habe mehr oder weniger geraten, wo man das Skript bremsen muss. Das sollte sich mal jemand ansehen, der sich damit auskennt... (/etc/inc/dyndns.class)
Oooder man liest sich da ggf. mal einfach genau durch, was Strato bei einem Update via URL die du gepostet hast als "Feedback" im Browser zurückgibt. Einfach mal im Browser ausführen und schauen was zurück kommt. Normalerweise geben Dienste was aus in der Art
success 192.0.2.1
oder
good 203.0.113.2
oder
IP has not changed 198.51.100.4
aus als Feedback. Das kann man wie in meinem Beispiel entsprechend einfangen und mehrere Ausgaben berücksichtigen. Dann wird das auch sauber ausgewertet und angezeigt und kann in der UI dargestellt werden und ggf. nochmals später ausgeführt werden wenn ein Change nicht geklappt hat.
Cheers
\jens -
@jegr Vielen Dank!
Du hast natürlich in allen Punkten recht! Und ich hätte mir natürlich auch mal die Hinweise im UI durchlesen können...
Folgendes funktioniert jetzt bei mir reproduzierbar:
- Custom auswählen
- Username (==Domain)/Password in den dafür vorgesehenen Feldern.
- Die STRATO-URL (https://dyndns.strato.com/nic/update?hostname=Domain&myip=%IP%&wildcard=NOCHG&mx=NOCHG&backmx=NOCHG)
- als Result Match "good %IP% | nochg %IP%"
Damit ist dann auch der Hack im Skript unnötig.
Hinweis: Wenn man zuviel herumspielt antwortet Strato mit "abuse %IP%".
VG
AR -
@baltic said in DynDNS Client Einstellungen für STRATO:
Hinweis: Wenn man zuviel herumspielt antwortet Strato mit "abuse %IP%".
Aye, das sind dann zu viele Updateversuche pro Zeit gegen deren API. Da sind sie etwas arg empfindlich. :)
-
@baltic funktioniert das "result matching" bei Dir aktuell noch?
Habe heute auch dyndns eingerichtet exakt wie von Dir beschrieben, aber das log zeigt nach update trotzdem/rc.newwanip: phpDynDNS (): (Error) Result did not match. [good XXX.XXX.XXX.XXX ]
an.
Das dns update selbst bei strato funktioniert.
Wenn ich entweder good %IP oder nochg %IP% eintrage, checkt es die pfsense und liefert ein success im log.Das "oder" scheint also nicht zu funktionieren.
Mir ist aufgefallen, dass im result nach der IP noch ein leerzeichen kommt (auch im log oben zu sehen), bin aber nicht sicher, ob das was zur sache tut? (habe bisher nicht viel dokumentation zum "Result Match" teil gefunden...
Hat jemand eine Idee?
[edit]
achso, es läuft 2.4.5-RELEASE-p1 -
Hallo zusammen,
ich würde den Beitrag nochmal ausgraben. Ich habe meine pfSense (2.5.2) die als VM auf Proxmox läuft gerade "umgezogen" und meine damit an einen neuen Internatsanschluss. Dort habe ich nun eine Unitymedia-ConnectBox, die Rechnung kommt von Vodafone aber technisch sieht mir das immer noch nach dem gleichen Netz aus, im Bridge-Mode und die pfSense hat auf der WAN-IP (DHCPv4).
Das funktioniert auch. Nun habe ich bei Strato eine Subdomain "gw.meindedomain.de" eingerichtet und DDNS aktiviert und schlussendlich ein Passwort dafür gesetzt.
In der pfSense habe ich es wie folgt eingetragen:
Dienst Typ: Benutzerdefiniert Schnittstelle zum Monitor: WAN Schnittstelle, von der aus: WAN Verify SSL/TLS Certificate Trust: [X] Benutzername: gw.meinedomain.de Kennwort: Das was ich in der Domainverwaltung -> Subdomain -> DDNS -> Passwort gesetzt habe Update URL: https://dyndns.strato.com/nic/update?hostname=Domain&myip=%IP%&wildcard=NOCHG&mx=NOCHG&backmx=NOCHG Ergebnis passt: good %IP% | nochg %IP%
Aber der Status bleibt auf dem roten X. In welchem Log finde ich die hilfreichen Hinweise?
Beste Grüße
pixel24 -
@pixel24 said in DynDNS Client Einstellungen für STRATO:
Verify SSL/TLS Certificate Trust: [X]
Das habe ich wieder raus genommen da die Domain nur ein selbst-signiertes hat.
-
Nachdem ich das Feld "Ergebnis passt" leer gemacht habe zeigt die pfSense in der Übersicht die korrekte IP an und Status Grün.
Die hier angezeigte IP ist auch die WAN-IP der pfSense aber wenn ich auf anderen UCS-Servern (die ganz wo anders stehen) remote drauf gehe und versuche diese Subdomain aufzulösen bekomme ich eine ganz andere IP angezeigt.
root@tux:~# nslookup > gw.irgenwas.club Server: 192.168.4.5 Address: 192.168.4.5#53 Non-authoritative answer: Name: gw.irgendwas.club Address: 81.XXX.145.XXX
Was läuft da noch falsch?
-
Nachtrag. Das Log sieht IMHO gut aus:
Jan 31 08:28:45 gateway01 php-fpm[338]: /services_dyndns_edit.php: Dynamisches DNS: updatedns() wird gestartet Jan 31 08:28:46 gateway01 php-fpm[338]: /services_dyndns_edit.php: Dynamic DNS custom (gw.irgendwas.club): 37.xx.1x.169 ausgelesen aus lokalem System. Jan 31 08:28:46 gateway01 php-fpm[338]: /services_dyndns_edit.php: Dynamic DNS (gw.irgendwas.club): führe get_failover_interface für wan aus. vtnet1 gefunden Jan 31 08:28:46 gateway01 php-fpm[338]: /services_dyndns_edit.php: Dynamic DNS custom (gw.irgendwas.club): _update() gestartet. Jan 31 08:28:46 gateway01 php-fpm[338]: /services_dyndns_edit.php: Sende Anfrage an: https://dyndns.strato.com/nic/update?hostname=Domain&myip=37.xx.1x.169&wildcard=NOCHG&mx=NOCHG&backmx=NOCHG Jan 31 08:28:46 gateway01 php-fpm[338]: /services_dyndns_edit.php: Response Header: HTTP/1.1 200 OK Jan 31 08:28:46 gateway01 php-fpm[338]: /services_dyndns_edit.php: Response Header: Date: Mon, 31 Jan 2022 07:28:46 GMT Jan 31 08:28:46 gateway01 php-fpm[338]: /services_dyndns_edit.php: Response Header: Server: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips mod_perl/2.0.10 Perl/v5.16.3 Jan 31 08:28:46 gateway01 php-fpm[338]: /services_dyndns_edit.php: Response Header: Content-Length: 21 Jan 31 08:28:46 gateway01 php-fpm[338]: /services_dyndns_edit.php: Response Header: Content-Type: text/plain; charset=ISO-8859-1 Jan 31 08:28:46 gateway01 php-fpm[338]: /services_dyndns_edit.php: Response Header: Vary: Accept-Encoding Jan 31 08:28:46 gateway01 php-fpm[338]: /services_dyndns_edit.php: Response Header: Jan 31 08:28:46 gateway01 php-fpm[338]: /services_dyndns_edit.php: Response Header: Jan 31 08:28:46 gateway01 php-fpm[338]: /services_dyndns_edit.php: Response Data: notfqdn 37.xx.1x.169 Jan 31 08:28:46 gateway01 php-fpm[338]: Jan 31 08:28:46 gateway01 php-fpm[338]: /services_dyndns_edit.php: Dynamic DNS custom (gw.irgendwas.club): _checkStatus() gestartet. Jan 31 08:28:46 gateway01 php-fpm[338]: /services_dyndns_edit.php: Dynamic DNS custom (gw.irgendwas.club): 37.xx.1x.169 ausgelesen aus lokalem System. Jan 31 08:28:46 gateway01 php-fpm[338]: /services_dyndns_edit.php: phpDynDNS: aktualisiere Zwischenspeicher Datei /conf/dyndns_wancustom'gw.irgendwas.club'0.cache: 37.xx.1x.169 Jan 31 08:28:46 gateway01 php-fpm[338]: /services_dyndns_edit.php: phpDynDNS (gw.irgendwas.club): (Erfolgreich) IP-Adresse erfolgreich aktualisiert!
-
@pixel24 said in DynDNS Client Einstellungen für STRATO:
aber wenn ich auf anderen UCS-Servern (die ganz wo anders stehen) remote drauf gehe und versuche diese Subdomain aufzulösen bekomme ich eine ganz andere IP angezeigt.
root@tux:~# nslookupgw.irgenwas.club
Server: 192.168.4.5
Address: 192.168.4.5#53
Non-authoritative answer:
Name: gw.irgendwas.club
Address: 81.XXX.145.XXXWas läuft da noch falsch?
Das DNS, denke ich: Server: 192.168.4.5
Das hat den Eintrag vermutlich noch nicht upgedatet, sollte es aber wohl schon haben.
Wenn du nslookup mit der Option " -debug" aufrufst, zeigt es die Gültigkeitsdauer (TTL) des Eintrags an. Wird diese Zeit überschritten, müsste jedes Gerät die Domain neu abrufen. Die TTL ist bei dynamischen DNS Einträgen üblicherweise kurz, bspw. 120 Sekunden.
-
@viragomann Ja, es hat lediglich eine Weile gedauert.
Ich habe wohl zu viel mit den Einstellungen herum gespielt bzw. Den "Erzwinge Update" zu oft geklickt. Im Log erhalte ich jetzt ein "abuse". Siehe Log.
Weiß jemand wie lange dies jetzt gesperrt ist bzw. wie man den Zugang wieder frei schaltet?
Feb 3 13:05:30 gate01 php-fpm[347]: /services_dyndns_edit.php: Dynamisches DNS: updatedns() wird gestartet Feb 3 13:05:31 gate01 php-fpm[347]: /services_dyndns_edit.php: Dynamic DNS custom (): 37.xx.1x.169 extracted from Check IP Service Feb 3 13:05:31 gate01 php-fpm[347]: /services_dyndns_edit.php: Dynamic DNS (): führe get_failover_interface für wan aus. vtnet1 gefunden Feb 3 13:05:31 gate01 php-fpm[347]: /services_dyndns_edit.php: Dynamic DNS custom (): _update() gestartet. Feb 3 13:05:31 gate01 php-fpm[347]: /services_dyndns_edit.php: Sende Anfrage an: https://dyndns.strato.com/nic/update?hostname=test.meinedomain.de&myip=37.xx.1x.169&wildcard=NOCHG&mx=NOCHG&backmx=NOCHG Feb 3 13:05:31 gate01 php-fpm[347]: /services_dyndns_edit.php: Response Header: HTTP/1.1 200 OK Feb 3 13:05:31 gate01 php-fpm[347]: /services_dyndns_edit.php: Response Header: Date: Thu, 03 Feb 2022 12:05:31 GMT Feb 3 13:05:31 gate01 php-fpm[347]: /services_dyndns_edit.php: Response Header: Server: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips mod_perl/2.0.10 Perl/v5.16.3 Feb 3 13:05:31 gate01 php-fpm[347]: /services_dyndns_edit.php: Response Header: Content-Length: 19 Feb 3 13:05:31 gate01 php-fpm[347]: /services_dyndns_edit.php: Response Header: Content-Type: text/plain; charset=ISO-8859-1 Feb 3 13:05:31 gate01 php-fpm[347]: /services_dyndns_edit.php: Response Header: Vary: Accept-Encoding Feb 3 13:05:31 gate01 php-fpm[347]: /services_dyndns_edit.php: Response Header: Feb 3 13:05:31 gate01 php-fpm[347]: /services_dyndns_edit.php: Response Header: Feb 3 13:05:31 gate01 php-fpm[347]: /services_dyndns_edit.php: Response Data: abuse 37.xx.1x.169
-
@pixel24
Ich würde es in der Web-Administration des dyn. DNS Providers versuchen.
Kann mir nicht vorstellen, dass dich die Aktion auf sonst eine Blacklist gebracht hat. -
Die Meldung ist nach einiger Zeit nicht aufgetaucht und die Adresse wurde bei Strato gesetzt. Nun funktioniert es :-)
-
@pixel24 Wenn du mehrmals innerhalb kurzer Zeit ein Update machst, sperrt dich Strato für ein paar Minuten bis wenige Stunden. Hab ich auch gehabt beim ausprobieren. Ging bis jetzt immer nach etwas abwarten von alleine wieder.
Bzgl. dem "Result Matching" bzw. "Ergebnis Passt" Feld:
ich habe nach langem Rumprobieren endlich herausgefunden, wie es funktioniert.
Anstatt "good %IP% | nochg %IP%" musst du "good %IP%|nochg %IP%" (ohne leerzeichen vor und nach dem |) eintragen.
Dann kann das Ergebnis richtig ausgewertet werden.Wenn du es weglässt klappt es wie du schon gemerkt hast auch mit dem Update, aber mit dem Result Matching passen dann die Log-Einträge und Stati in der Übersicht (Grüner Haken, Rotes Kreuz)
-
@shadeless said in DynDNS Client Einstellungen für STRATO:
Wenn du mehrmals innerhalb kurzer Zeit ein Update machst, sperrt dich Strato für ein paar Minuten bis wenige Stunden. Hab ich auch gehabt beim ausprobieren. Ging bis jetzt immer nach etwas abwarten von alleine wieder.
Ja, ging dann wieder :-)
@shadeless said in DynDNS Client Einstellungen für STRATO:
Anstatt "good %IP% | nochg %IP%" musst du "good %IP%|nochg %IP%" (ohne leerzeichen vor und nach dem |) eintragen.
Dann kann das Ergebnis richtig ausgewertet werden.ok, habe ich drin. Werde es beobachten