Externe IP-Adresse auslesen

Status
Für weitere Antworten geschlossen.
sascha schrieb:
Dein Verfeinerungsforschlag funktioniert natürlich auch. Mit der Einschränkung, das er nicht prüft, ob zwischen den Anführungszeichen wirklich eine IP-Adresse steht.
Das war auch so beabsichtigt ;-)
Wenn die Box keine IP hat, dann liefert sie "-" zurück, und das ist doch zur Weiterverarbeitung auch sehr brauchbar. Dan weiß man immerhin, dass das Skript funktioniert und dass keine Verbindung besteht.

Ehrlich gesagt halte ich es für ein bisschen überflüssig, zu prüfen, ob die Box wirklich eine gültige IP liefert. So viel Vertrauen habe ich zu AVM ;-)
sascha schrieb:
Zeigt er dann alles bis zum ersten Anführungszeichen oder bis zum letzten? Ich weis es nicht.
Oha, das war mir nicht klar :)newbie:) Er nimmt leider das letzte.
Also vielleicht doch lieber
Code:
sed -n 's/^.*IpAdrDisplay("\(.*\)"));.*/\1/p'
Aber das kann man ja anpassen, falls eine neue Firmware kommt, bei der noch mehrere Quotes in der Zeile stehen.

wichard schrieb:
Das läuft dann aber auf dem Windows-PC und nicht auf der Box selbst, oder?
So ist es.
@OctaVerba: Wo ist der Vorteil im Vergleich zum Aufruf von http://fritz.box ?
 
Pumbaa80 schrieb:
Aber das kann man ja anpassen, falls eine neue Firmware kommt, bei der noch mehrere Quotes in der Zeile stehen.
Warum nicht gleich?
Code:
sed -n 's/^.*IpAdrDisplay("\([^"]*\)").*$/\1/p'
Trifft alle Zeichen außer Anführungszeichen. Oder
Code:
sed -n 's/^.*IpAdrDisplay("\([-.0-9]*\)").*$/\1/p'
Trifft jede Kombination aus Punkten, Strichen und Ziffern.

Hth Sascha :fecht:
 
Cool, hier werd ich so langsam zum Linux-Experten :mrgreen:
Danke für die Mühe!
 
@Pumbaa80:

Nun, ich denke der Vorteil liegt darin, das die externe IP in einer Variablen gespeichert ist und somit für andere Aufgaben weiter verwendet werden kann.

z.B. dyndns

Ich hätte das Script dafür gerne angepasst, allerdings weiss ich nicht wie bei z.B. dyndns die Aktualisierung abläuft.



@wichard

korrekt, dieses script läuft nur auf dem Windows Rechner
 
@OctaVerba
Ich habe da mal vor einiger Zeit ein simples (bash-)Skript gefunden, das als Beispiel für den Umgang mit DynDNS dienen könnte.
Code:
#!/bin/bash
wget http://www.fo-pa.de/IP.php --output-document=/var/data/my_ip
MY_REAL_IP=`cat /var/data/my_ip`
MY_DYNDNS=`host xxxxxx.homelinux.org | cut -d ' ' -f4`

if [ "$MY_REAL_IP" == "$MY_DYNDNS" ] ; then
exit 0
else
wget -q http://user:[email protected]/nic/update?hostname=xxxxxx.homelinux.org --output-document=/var/data/dyndns_antwort
fi
Dieses Skript überprüft, ob sich die eigene öffentliche IP-Adresse geändert hat und zieht die Änderung dann ggf bei dyndns.org nach. Das wget bezieht sich auf ein Mikro-Skript auf einem meiner vServer, das als Ergebnis lediglich die IP-Adresse in Textform zurückliefert. An dessen Stelle können natürlich auch die anderen Methoden der Adressermittlung treten.
 
Hallo,
da ich jetzt vor selbigem Problem stehe möchte ich diese etwas ältere Diskusionsrunde wieder aktivieren. Gibt es den inswischen die Möglichkeit per bash script die IP mit der sich die Box im Internet befindet direkt aus der Box auszulesen ?
Bin leider kein Script-Experte und möchte mir die Adresse mit der sich die FBF ins Netz einwählt auf dem Display meines FLi Routers als Widget anzeigen lassen.

Gruß
 
Hallo, ich hatte vor einiger Zeit das gleiche Problem für dynorg, ausserdem schien das "onreconnect-script" nur zu funktionieren, wenn die Box die DSL-Verbindung selber aufbaut.

Hier meine Lösung:
http://www.ip-phone-forum.de/showthread.php?t=142553&p=1056054&viewfull=1#post1056054

Inzwischen habe ich das noch weiter verfeinert, aber diese Lösung sollte weiterhin noch funktionieren.

Wenn die Box direkt am DSL hängt und die Verbindung selbst herstellt, benutz doch die interne Lösung:
Code:
get_ip -e

Update: Oh. Ich seh grad: Der Thread ist ja schon ein/zwei Tage alt. Aber ist ja immer noch "aktuell" :-7
 
Zuletzt bearbeitet:
Status
Für weitere Antworten geschlossen.
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.