API Key lässt sich nicht mit Linux Befehl aktualisieren und ändert die IP Adresse auch nicht im Control Panel.

  • Hallo,


    ich hole mal etwas aus was ich vor habe und wie ich das Umsetzen möchte.


    Ich habe einen kleinen PC auf dem Linux (Ubuntu) als eine Art Server laufen soll. Eine der Hauptanwendungen wird hier (APM) Application Management Panel (zum hosten von Spiele Server) sein. Damit ich auch von extern auf diesen Server immer zugreifen kann habe ich mir also eine Domain hier geordert. Da ich auch keine Statische IP habe sondern DSL, wo sich täglich die IP Adresse ändert. Wollte ich über ein Skript alle 5 Minuten abfragen ob sich die IP Adresse geändert hat und dann über die API Schnittstelle diese aktualisieren.


    Folgende Probleme habe ich bis jetzt Festgestellt. Ich habe einmal per Hand die Adresse angegeben:


    pasted-from-clipboard.png


    Wenn ich jedoch über Ubuntu eine Abfrage mache bekomm ich noch die Alteingestellte *Default IP Adresse angezeigt.

    pasted-from-clipboard.png


    Problem Nr.1 ist also das er meine Änderung nicht übernimmt.


    Problem Nr.2 ist dann die API hier habe ich mir ein PW wie Key generiert im CCP und in meinen Skript eingegeben:


    Mit Hilfe von ChatGPT hab ich die Scripts erstellt und weiter getestet komme jetzt aber nicht mehr weiter.


    Ist der Skript Fehlerhaft wobei mir der Skript ja auswirft das die IP Adresse noch anders ist es hängt also am Login doch die Daten sind Richtig im Skript hinterlegt.

    pasted-from-clipboard.png

  • Hi welche der Fertigen Lösungen ist mit Ubuntu kompatibel oder sollte es nicht auch mit dem Router direkt gehen? Ist ja auch eine FritzBox! als Option gelistet und mein SpeedPort4 von der Telekom bietet die Option hier:


    pasted-from-clipboard.png


    Als Hostname wäre das jetzt meine xxxxx.de Domain.

    Username wäre die API_Key und Passwort der API_PW?


    Als Updateserver Adresse nehme ich dann?

    https://ccp.netcup.net/run/webservice/servers/endpoint.php?JSON

    <br>

    Sollte dann doch so funktionieren oder?

  • Hier mal mein Skript dafür.
    Nicht von ChatGPT, sondern selbstgeschrieben. (Weshalb es auch funktioniert ;) )


  • Hi Danke müssen die Sachen in Klammern gesetzt werden?


    APIKEY="1234567890QWERTZUIOPÜQASDFGHJKLÖÄ"

    APIPW="0987654321ÜPOIUZTREWQÄÖLKJHGFDSA"
    CID="12345678"


    Ich versteh auch nicht was mit der CID gemeint ist? Ist das nun die Kundennummer die neben dem Namen steht oben im CCP oder die Nummer die man über den Domain Eintrag bekommt?


    netcup-3.png

  • Steht aber auch in der readme.md:

    Quote

    Credentials

    To use this script you must replace the values at beginning of the script with your:

    Code
    #Credentials
    apikey=YOUR_API_KEY
    apipw=YOUR_API_PASSWORD
    cid=YOUR_CUSTOMERNUMBER

    »Hauptsache BogoMIPS!«

    Fleischfresser

    »Sämtliche Cyberrisikomanagementmaßnahmen wurden übererfüllt!«

    Volksfront DLT #60Ksplit

    Like 1
  • Du musst die entsprechend gewünschten "Arguments" mit eingeben, sonst macht das Script ja einfach nichts, außer dir den Hilfstext anzuzeigen.

    »Hauptsache BogoMIPS!«

    Fleischfresser

    »Sämtliche Cyberrisikomanagementmaßnahmen wurden übererfüllt!«

    Volksfront DLT #60Ksplit

  • Wenn man die "longmessage" liest und keinen Reseller-Vertrag mit Netcup abgeschlossen hat, ist an dieser Stelle Ende der Fahnenstange. Eindeutiger kann diese Fehlermeldung aber auch nicht formuliert werden, oder? Wenn ein Reseller-Vertrag vorliegt, ist das ein Fall für den Support.


    Die Diskussion, diese Funktion auch für "Normalkunden" freizuschalten, findet sich bei genauer Suche übrigens auch bereits hier im Forum.

    VServer IOPS Comparison Sheet: https://docs.google.com/spreadsheets/d/1w38zM0Bwbd4VdDCQoi1buo2I-zpwg8e0wVzFGSPh3iE

    Edited once, last by m_ueberall ().

  • Hi ich bin da nur Normalkunde. Einfach die Domain über die Seite gebucht zum testen und los. Doch wie muss ich das den sonnst umsetzen mit dem API_Key und API_PW?

  • -l und -i sind reseller only.


    zeig mal:

    ncdapi.sh -g your-domain.de

    »Hauptsache BogoMIPS!«

    Fleischfresser

    »Sämtliche Cyberrisikomanagementmaßnahmen wurden übererfüllt!«

    Volksfront DLT #60Ksplit

  • Hier bitte:

  • Du versuchst (mit -l) eine Funktion aufzurufen, die für dich, als nicht-Reseller, nicht verfügbar ist. Für Dynamic DNS per Netcup API brauchst du diese Funktion nicht. Auch in Zeiten von Textgeneratoren muss trotzdem noch jemand lesen und verstehen, was auf dem Bildschirm steht. Bitte erwarte nicht, dass dir irgendjemand etwas noch fertigeres als ein ausgetestes Skript auf dem Silbertablett serviert.

  • Halt Moment!


    Ich versuche nur über das Skript der Domain mitzuteilen was die aktuelle IP Adresse von meinem Ubuntu PC/Server ist damit diese täglich aktualisiert wird.


    Es wurde empfohlen einen Fertigen zu nehmen wo ich mich, weil er für mich Verständlicher klang, für diesen Entschieden habe. Natürlich wird der Skript viel mehr können als was ich möchte nur das was ich eben möchte sollte doch nicht so schwer sein?


    Hi Domain hier neue IP Adresse vom Server route nun auf diese rum wenn xxxxxxx.de:9999 (Port) aufgerufen wird.


    Selbst der Skript von aRaphael scheint bei mir nicht zu funktionieren. Doch ich sehe und verstehe nicht wo ich den Fehler tätige.

  • was ich eben möchte sollte doch nicht so schwer sein?

    Na dann schmeiß die Readme in den Google Übersetzer oder in DeepL rein.


    Andernfalls gibt es dafür auch fertige Dienste wie dyn.com und no-ip, ddns und wie sie nicht alle heißen.

    Die kannst du dann auch in deinem Router eintragen.

  • Hier bitte

    die benötigte record-ID bekommst du z.b. so:

    Code
    ncdapi.sh -g your-domain.de | jq -r '.[] | [.hostname,.type,.id] | @tsv' | grep -P '@\tA\t' | cut -f3


    die ID brauchst du, um mit ncdapi.sh -M record_ID … deinen @ A record zu ändern (siehe examples).

    »Hauptsache BogoMIPS!«

    Fleischfresser

    »Sämtliche Cyberrisikomanagementmaßnahmen wurden übererfüllt!«

    Volksfront DLT #60Ksplit

    Edited 3 times, last by Olivetti: ID-holen geht auch mit reinem jq. ist aber komischer… ().