kinkerlitzchen
Goto Top

Erst IP Adresse erfragt, wie danach die Antwort in Update-URL einfügen?

Liebe Grüße Administratoren,

beim Kabelprovider ändert sich die IP nicht. Da die Fritz!Box da nicht mitspielt, gerate ich immer wieder in Gefahr meinen hostname zu verlieren. Jetzt soll ein Linux Gerät (das immer läuft) die automatischen Updates übernehmen. Ich habe von shell / bash allerdings keine Ahnung...

ich kann bei no-ip.com über untenstehende URL meine aktuelle ip Adresse mitteilen. Damit das automatisiert und ohne ständige Überwachung funktioniert, müsste das Skript erst die aktuelle IP abfragen und das Ergebnis der Abfrage in der URL verwenden.

Ich habe von "https://wiki.archlinux.de/title/Eigene_IP_Adresse_ermitteln" folgenden Aufruf für die aktuelle IP:

wget -q -O - http://checkip.dyndns.org | grep -Eo '\<[[:digit:]]{1,3}(\.[[:digit:]]{1,3}){3}\>'

Als Antwort kommt nur eine IP zurück, wie etwa: 95.88.127.176

Die würde ich gerne verwenden um sie in folgender Update-URL bei no-ip.com zu verwenden:

http://username:password@dynupdate.no-ip.com/nic/update? hostname=mytest.testdomain.com&myip=1.2.3.4


Über eure Hilfe würde ich mich wieder sehr freuen.

Content-Key: 197682

Url: https://administrator.de/contentid/197682

Printed on: April 19, 2024 at 20:04 o'clock

Member: tikayevent
tikayevent Jan 25, 2013 updated at 21:25:49 (UTC)
Goto Top
Einfach mal die API-Beschreibung von No-IP lesen.

http://www.noip.com/integrate/request

myip
Optional
The IP address to which the host(s) will be set. If no IP address is supplied the WAN address connecting to our system will be used. Clients behind NAT, for example, would not need to supply an IP address

Alternative wie ich es geregelt hab: Einfach für die Dienstleistung bezahlen. Kost nicht viel, spart aber viel Ärger.
Member: Kinkerlitzchen
Kinkerlitzchen Jan 25, 2013 at 22:10:48 (UTC)
Goto Top
Nein, hab das gelesen und ausprobiert, aber es hat nicht geholfen meinen, ja du hast mich erwischt, free account zu erhalten.

Immer wenn ich die aktuelle IP nutze wird der account nicht aktualisiert. Daher ist meine Anfrage obsolet.

In Zukunft werde ich per Skript eine falsche IP senden. Daraufhin wird die Fritz!Box wieder die aktuelle richtige IP senden, oder ich starte ein 2tes Skript, das dies erledigt.

Das ist zwar nicht so elegant wie die Lösung von tikayevent, aber ich bin kein edles Volk.
Member: tikayevent
tikayevent Jan 25, 2013 at 22:37:12 (UTC)
Goto Top
Naja, edles Volk, das sind 1,005€ pro Monat.

In Zukunft werde ich per Skript eine falsche IP senden. Daraufhin wird die Fritz!Box wieder die aktuelle richtige IP senden, oder ich starte ein 2tes Skript, das dies erledigt.
Da wird wohl das zweite Script nötig, weil die Fritzbox ja nicht mitbekommt, dass es eine Änderung gab. Die tritt nur die Aktualisierung an, wenn es eine Änderung auf der WAN-Schnittstelle gab.

Einfach einmal mit myip=1.2.3.4 aufrufen und einmal ohne myip, dann sollte es klappen. Zur Sicherheit noch ne halbe Sekunde Wartezeit einbauen.
Member: Arano
Arano Jan 25, 2013 at 23:27:38 (UTC)
Goto Top
Hallo

Und um die IP-Adresse auszulesen und in einem weiterem URL Aufruf zu verwenden dieses hier, ein Ausschnitt aus meinem eigenen Script das ich für ein IP-Update per E-Mail auf meinem eigenem Server/Clients laufen lasse:
#!/bin/sh


# ...
# ...


# ermittel die aktuelle IP-Adresse
actIp="`wget -q -O - "http://www.meineDomain.tld/?ip-adresse"`"  
# lese alte IP-Adresse aus Datei
oldIp="`cat \"$file\"`"  


echo "aktuelle Ip = $actIp"  
echo "    alte Ip = $oldIp"  
echo -n "     update = "  


# vergleiche IPs,
# nur updaten wenn unterschiedlich:
if [ "$actIp" = "$oldIp" ]; then  
    echo "nicht erforderlich"  
else
    update="`wget -q -O - "http://www.meineDomain.tld/?renew&newIp=$actIp"`"  
    echo $update

    status="`echo $update | cut -d" " -f1`"  

    if [ "good" = "$status" ]; then  
        # schreibe aktuelle (neue) IP-Adresse in Datei
        echo $actIp >"$file"  
    fi
fi


# ...
# ...



Schönes Wochenende
~Arano
Member: Kinkerlitzchen
Kinkerlitzchen Jan 27, 2013 at 18:53:01 (UTC)
Goto Top
Hey tikayevent, es kostet aktuell sogar nur etwa 93 Cent pro Monat - aber ich beschäftige mich ganz gern damit ;)

Danke für das Skript. Ich brauche das in diesem Fall aber tatsächlich nicht, sondern kann einfach die aktuelle Adresse schicken, indem ich die Information einfach leer lasse.

Beste Grüße