Ich frage per Bash-Script mit host die IP-Adresse eines Servers mit dyn. IP ab. Die korrekte IP wird aber erst nach Minuten angezeigt, anstatt wird die vorherige IP, vermutlich ein Cache, angezeigt. Wie erzwinge ich, dass der Cache ignoriert wird? Als 1. DNS-Server ist eine Fritzbox eingestellt.
host und cache
Antworten |
Anmeldungsdatum: Beiträge: 3771 |
|
Anmeldungsdatum: Beiträge: 14382 |
|
(Themenstarter)
Anmeldungsdatum: Beiträge: 3771 |
Keine Ahnung, ddclient --help zeigt nichts diebzgl. Ich habe mir auch schon überlegt, ob der DDNS-Anbieter vielleicht einige Zeit braucht, bis es aktuell ist. ddclient im Debug-Mode zeigt mir zwar, dass auf die neu IP-Adresse ein Update durchgeführt wurde, hiost aber nicht. Ziel meines Scripts ist, dass ich ein Mail erhalte, wenn die IP-Adressen nicht aktuell sind. Meine IP-Adresse ändert sich manchmal 1 Woche nicht, dann kann es wieder mehrmals am Tag sein. Ich könnte ein sleep im Script angeben, wobei ich mir noch nicht sicher bin, ob ich ddclient via cronjob im Script ausführen will. |
Anmeldungsdatum: Beiträge: 14382 |
Mit ddns-account meinte ich deinen ddns-Provider. Siehe z. B. auch DNS-Caching. Ich kann bei meinem ddns-Provider, z. B. folgende TTL (Sekunden) konfigurieren: ttl (Integer) Mögliche Werte: 60 300, 14400, 86400
Du solltest host, erst nach der TTL ausführen. sleep in deinem Script sollte richtig sein. EDIT: Das ist auch ein Problem, das manche Programmierer von Router-Firmware nicht verstanden haben. Der ddns-client im Router, fragt sofort nach dem update host (oder gleichwertig) ab, dann kommt vom Router eine Fehlermeldung und der user weiß nicht warum diese Fehlermeldung vom Router kommt. |
(Themenstarter)
Anmeldungsdatum: Beiträge: 3771 |
Jetzt frage ich mich, ob ich sleep berechnen kann. host -t NS -v ubuntuusers.de Trying "ubuntuusers.de" ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 41278 ;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;ubuntuusers.de. IN NS ;; ANSWER SECTION: ubuntuusers.de. 62836 IN NS dns2.noris.net. ubuntuusers.de. 62836 IN NS dns3.noris.net. ubuntuusers.de. 62836 IN NS dns1.noris.net. Received 98 bytes from 192.168.178.1#53 in 1 ms root@sv:~# dig +noauthority +noquestion +nostats ubuntuusers.de @dns2.noris.net. So wie ich es verstehe sind die 62836 die Sekunden bis der Eintrag aktualisiert wird. dig +noauthority +noquestion +nostats ubuntuusers.de @dns2.noris.net. ; <<>> DiG 9.8.1-P1 <<>> +noauthority +noquestion +nostats ubuntuusers.de @dns2.noris.net. ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 42490 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 3, ADDITIONAL: 3 ;; WARNING: recursion requested but not available ;; ANSWER SECTION: ubuntuusers.de. 86400 IN A 213.95.41.4 ;; ADDITIONAL SECTION: dns1.noris.net. 86400 IN A 213.95.0.65 dns2.noris.net. 86400 IN A 192.109.102.65 dns3.noris.net. 86400 IN A 194.31.2.65 86400 sind wahrscheinlich die maximale TTL-Zeit in Sekunden. Bei meinem dyn. Server habe ich bei gleichen Optionen mit host 85058 (folgende Abfrage sinkend) und mit dig 300. Das widerspricht meiner Interpretation. Es muss ja auch nicht exakt sein und nach 300 Sekunden hatte ich immer mit host die korrekten IPs. Aber vielleicht hat ja jemand eine Idee. |