16 Gedanken zu „[Tut] OpenDNS und OpenWrt effektiv nutzen

  1. Hi,

    Du hast einen Fehler bei Punkt 1 Deiner Anleitung. Du schreibst:

    echo ‚foo‘ > irgendwohin ; echo ‚bar‘ > irgendwohin
    und erwartest das beide Nameserver eingetragen sind. Der zweite Eintrag überschreibt jedoch den ersten Eintrag. Richtig wäre:
    echo ‚foo‘ > irgendwohin ; echo ‚bar‘ >> irgendwohin

    Korrigierst Du das bitte? thx

  2. Hallo Thias

    Wenn ich folgende Zeile

    logger -t opendns `curl -k -u name:pw https://updates.opendns.com/nic/update?hostname=network`

    direkt im Terminal, d. h. in der Shell eintippe, dann finde ich einen entsprechenden Eintrag im Log.

    Die gleiche Zeile in einem Script aufgerufen ergibt keinen Eintrag.
    Hingegen nur logger -t opendns funktioniert. Der Output von curl geht irgendwo unter.

    Wie kann ich das beheben?

    Gruss
    Max

    • Hallo,

      Mir fallen da spontan drei Fragen ein:

      1. Hast du den Aufruf mit curl in einer Zeile oder wie in meinem Beispiel über zwei Zeilen? Bei zwei Zeilen: Hast du das am Ende der Zeile angegeben?
      2. Rufst du das Skript mit dem selben User auf?
      3. Nur um sicher zu gehen, du hast das curl mit „ eingeschlossen und nicht mit “ ?

      lg,
      Thias

      • Hallo Thias

        Das Problem ist gelöst.
        Es war nicht die Schreibweise, sondern es ist ein zeitliches Problem, nämlich der Event ifup kommt eine Spur zu früh, d. h. die WAN-Verbindung steht noch nicht, wenn curl aufgerufen wird.
        Wenn ich vorher eine Sekunde warte (sleep 1), dann klappt es wunderbar.
        Vielen Dank!

        Mit Gruss
        Max

  3. Ciao Thias
    Herzlichen Dank für dein Script! Leider geht es mir wie Max.
    Wenn ich folgende Zeile

    logger -t opendns `curl -k -u name:pw https://updates.opendns.com/nic/update?hostname=network`

    direkt im Terminal, d. h. in der Shell eintippe, dann klappts.

    Wenn ich die URL im Script auf 2 Zeilen verteile erkennt er die URL nicht. (no Url specified)
    Auf einer Zeile im Script erhalte ich die Fehlermeldung „couldn’t resolve host“ updates.opendns.com
    Auch Sleep 1 und höher nützt nichts.
    Kannst du mir einen Tip geben?

    Besten Dank
    Tom

    • Hallo Tom,

      ich habe grade gesehen, dass das letzte Update vom Editor und/oder der Code Highlighter den Code zerschossen hat. Er hat zB ein Zeichen gelöscht in der „curl Zeile“: \
      Das ist wichtig, wenn du das Script über 2 Zeilen betreiben möchtest. Hab es hinzugefügt, jetzt sollte wieder alles stimmen.

      Hmm, “couldn’t resolve host” bedeutet eigentlich, dass der DNS (noch) nicht erreichbar ist oder die Internetverbindung nocht nicht steht. Du kannst mal versuchen zwischen sleep und logger mal folgendes zu schreiben:
      logger -t opendns `ifconfig wan`; # Falls wan deine WAN Schnittstelle ist
      Dann kannst du mal im log nachprüfen, ob du bereits eine IP zugewiesen bekommen hast. Falls nicht, nachh muss der sleep höher gesetzt werden.

      lg

  4. Hallo Mathias,
    curl -V ergibt bei mir:
    curl 7.21.7 (mipsel-openwrt-linux-gnu) libcurl/7.21.7 OpenSSL/0.9.8r zlib/1.2.3
    Protocols: file ftp ftps http https imap imaps pop3 pop3s rtsp smtp smtps tftp
    Features: IPv6 Largefile NTLM SSL libz

    sollte alles haben!

    • Ja, das ist sehr komisch! Ich könnte mir spontan jetzt nur vorstellen, dass er die ssl libs nicht findet.
      Schau dir mal mit
      opkg list-installed (bzw) opkg list-installed | grep ssl
      mal die Liste der Programme an und ob du dort irgendwas in Bezug auf ssl findest. Ich habe was von dem Paket „libpolarssl“ gelesen, was soweit ich weiß eine Abhängigkeit von „luci-ssl“ ist. Ich versuche mal später über ne VirtualBox den Fehler zu reproduzieren!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.