öffentliche IP meines Routers aufs Handy

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo,

    gelegentlich würde ich gerne von außerhalb auf meinen Seafile-Server zugreifen. Dyndns wäre natürlich eine Möglichkeit. Wenn ich aber eine Nachricht aufs Handy bekäme, sobald sich die IP-Adresse ändert, wäre das am einfachsten.

    Ist es möglich, die öffentliche IP meines Routers (mittels eines Skripts) auszulesen und mir eine Email, SMS oder andere Kurznachricht auf das Handy zu schicken, falls diese sich ändert?

    Danke für alle Hilfe!

    Einmal editiert, zuletzt von Apologus (15. Dezember 2015 um 13:56)

  • Du kann das ganze über PushBullet und NoIP machen! NoIP ist ja sowas wie DynDNS und in der Konfiguration von NoIP (How To)
    kann man einstellen, das er bei jedem Update ein Script ausführt. Klar kannst über in dieses auch eine eMail versenden lassen, aber ich nutze lieber Pushbullet da ich keinen aktiven Mail Syncer auf meinem Handy habe. Pushbullet ist ganz einfach zu nutzen! Einfach etwas googlen oder du fragst mich nochmal!

    -dT-

  • Ja, das ist möglich. Ich habe es zwar über Pushmail an meiner Fritzbox gemacht (Falls Du eine hast, einfach Zwangstrennung um z.B. 06.00 Uhr machen und danach z.B. um 06.10 Uhr die Statusmail an Deine Mailadresse abfeuern), man sollte es aber auch über ein Script hinbekommen, dass die öffentliche IP regelmäßig prüft und nach Änderung eine Mail sendet. Die öffentliche IP sollte man über route rausbekommen, sollte ohne Anspruch auf 100% Richtigkeit über die Bash gehen:

    Code
    MAINIF=$( route -n | grep '^0\.0\.0\.0' | head -n 1 | awk '{print $NF}' )
    IP=$( ifconfig $MAINIF | { IFS=' :';read r;read r r a r;echo $a; } )
  • Ich lasse mich zum Beispiel mit diesem Skript kurz per Mail darüber informieren, wenn sich meine vom Provider zugewiesene IP geändert hat:

    #!/bin/bash
    # 2015-05-07: Abfrage auf aktuelle externe IP und, falls notwendig, Update in /etc/hosts fuer kabelbw-dmz und dmz:

    IP=`wget http://www.wieistmeineip.de -U "" -qO - | egrep -o '[[:digit:]]{1,3}\.[[:digit:]]{1,3}\.[[:digit:]]{1,3}\.[[:digit:]]{1,3}' | uniq` OLDLINE=`grep -v ^"#" /etc/hosts | grep dmz`
    NEWLINE="$IP kabelbw-dmz dmz # `date +%Y-%m-%d`"
    UPDLINE="#$OLDLINE"

    grep -v ^"#" /etc/hosts | grep $IP >/dev/null 2>&1 || ( cp /etc/hosts /etc/hosts-`date +%Y-%m-%d` cp /etc/hosts /etc/hosts-tmp sed "s/$OLDLINE/$UPDLINE/g" < /etc/hosts-tmp > /etc/hosts && ( rm /etc/hosts-tmp echo $NEWLINE >> /etc/hosts; (pdnsd-ctl config; echo old IP: $OLDLINE; echo new IP: $NEWLINE)|mail -s "[Info] IP-Change detected on $(hostname) at $(date)" ich@du.de))

  • Danke für Eure schnellen Antworten! Wie ich sehe, gibt es verschiedene funktionierende Möglichkeiten, die ich z.T. auch schon erfolgreich ausprobiert habe ...

    ... um am Ende doch eine andere Lösung zu nehmen: Ich habe ein Skript zusammen gebastelt, dass mir alle 5 Minuten eine Umleitung mit der aktuellen IP in eine Datei cloud.html schreibt und diese per FTP auf eine Domain schreibt, die mir gehört. Daher kann ich jederzeit per http://www.meinedomain.de/cloud.html auf meinen Raspi zugreifen ...

    ... mit der Einschränkung, dass ich auf meinen Seafile-Server von außen nur per http und nicht per https zugreifen kann. Denn in die seahub_settings.py von Seafile muss ich ja eine vorhandene Adresse eintragen. Also z.B. eine Dyndns Adresse. Jan Karres schreibt dazu: HTTP_SERVER_ROOT = 'https://beispiel.no-ip.org:8001/seafhttp'


    Ich habe aber ja eine wechselnde IP-Adresse. Oder kann ich an diese Stelle auch https://'www.meinedomain.de/cloud.html' eintragen?

    Grüße

    Einmal editiert, zuletzt von Apologus (16. Dezember 2015 um 19:46)

  • So wird es nicht gehen, weil Da ja nicht die Cloud hintersteckt, sondern nur die Datei mit der Domain. Aber wenn Du an die DNS Einstellungen Deiner Domain kommst und evtl. Subdomains anlegen kannst, könntest Du Dir auch ein Script schreiben, welches die IP-Adresse an ein Script auf dem Server der Domein weiterleitet und dieses dann die IP in die DNS Einstellungen einträgt, so dass die Subdomain auf die IP weitergeleitet wird.


  • So wird es nicht gehen, weil Da ja nicht die Cloud hintersteckt, sondern nur die Datei mit der Domain. Aber wenn Du an die DNS Einstellungen Deiner Domain kommst und evtl. Subdomains anlegen kannst, könntest Du Dir auch ein Script schreiben, welches die IP-Adresse an ein Script auf dem Server der Domein weiterleitet und dieses dann die IP in die DNS Einstellungen einträgt, so dass die Subdomain auf die IP weitergeleitet wird.

    Um ehrlich zu sein, verstehe ich nur halb, was du meinst... Aber ich belasse es jetzt mal dabei, denn im Januar kommt die neue fritzbox und da sollte sich dyndns einfach einrichten lassen.

    Eine Sache aber noch: Momentan kann ich von jedem externen Rechner damit auf meinen Pi-Seafile zugreifen - außer von Rechnern in einem Schulnetz. Da kommt nach der Umleitung auf die aktuelleIP:8200 nur irgendwann ein Timeout. In der Schule ist natürlich ein Filter installiert, der alles mögliche wichtige und unwichtige blockiert. Aber wenn das passiert, kommt eben auch eine entsprechende Meldung. Und das passiert hier nicht. Nur der Timeout.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!