Zoner
Anmeldungsdatum: 30. August 2019
Beiträge: 120
|
Ich möchte ein Script schreiben, dass loggt, wann mir welche IP-Adresse vom Provider zugewiesen wurde (IPv4 und IPv6).
Also eine regelmäßige Prüfung. Allerdings scheitert es gerade daran, die IP überhaupt in Erfahrung zu bringen.
Im Internet finde ich viele "statische" Lösungen, wie z.B. "curl ifconfig.me". Ich hätte aber gerne eine flexiblere (und auch datenschutzfreundlichere) Lösung. Ich möchte nicht ständig meine IP Adressen an den selben, amerikanischen Anbieter mitteilen. Welche Möglichkeiten gibt es, zuverlässig seine öffentlichen IP Adressen auszulesen?
Oder ist man zwangsläufig an solch spezielle DNS-Dienste gebunden? Am liebsten würde ich die Geschichte komplett lokal halten und beide Adressen einfach aus meiner Fritzbox heraus lesen.
|
homer65
Anmeldungsdatum: 8. November 2005
Beiträge: 506
|
Habe zwar keine komplett lokale Möglichkeit. Aber unter http://45.129.182.115:8080/ip/ip.do kann man seine öffentliche IP Adresse herausfinden. Wenn es jemanden interessiert kann er von mir den Quellcode erhalten. Ist ein sehr kleines Java Servlet. Gruß Christian
|
homer65
Anmeldungsdatum: 8. November 2005
Beiträge: 506
|
Ups, hab mal wieder nur die Hälfte gelesen. Mit meiner Adresse kann man nur seine ipv4 Adresse herausfinden nicht aber die ipv6.
|
kB
Supporter, Wikiteam
Anmeldungsdatum: 4. Oktober 2007
Beiträge: Zähle...
|
Zoner schrieb: […] Welche Möglichkeiten gibt es, zuverlässig seine öffentlichen IP Adressen auszulesen?
Für IPv6 ist das kein Problem, da man nur die lokal benutzen Adressen auslesen muss: ip -6 addr Für IPv4 hinter einem NAT gibt es diese drei Verfahren:
Man installiert auf seinem Router einen DynDNS-Client und lässt diesen seine IPv4-Adresse bei einem DynDNS-Provider seiner Wahl unter einem genehmen Namen veröffentlichen. Dazu muss man sich einen solchen DNS-Namen (z.B. ZuHause.Niemands-Karl.example) erst einmal verschaffen. Man kann sich eine Domain bei einem Provider seiner Wahl kaufen oder den Dienst von AVM kostenfrei nutzen, wenn man eine FritzBox verwendet. Dann erfährt man seine offizielle IP per: host ZuHause.Niemands-Karl.example Man verwendet eine Gegenstelle im Internet von der Art, wie Du sie bereits genannt hast. Wenn man selbst einen Server im Internet betreibt, kann man sich selbst eine solche Funktionalität mit einem simplen PHP-Skript basteln. Man verwendet einen STUN-Server. Diese wurde explizit dafür geschaffen, für die Travertierung eines NAT die benötigten Informationen zu liefern. Man benötigt das Paket stun-client und den Namen (ähnlich wie stun.free-server.example) eines STUN-Servers. Freie STUN-Server findet man per Suchmaschine oder man benutzt den seines Providers. Die aktuelle Abfrage läuft per: stun stun.free-server.example -v stun schreibt auf stderr.
|
rklm
Projektleitung
Anmeldungsdatum: 16. Oktober 2011
Beiträge: 12527
|
Zoner schrieb:
Im Internet finde ich viele "statische" Lösungen, wie z.B. "curl ifconfig.me".
Was ist daran "statisch"? Meinst Du Polling?
Ich hätte aber gerne eine flexiblere (und auch datenschutzfreundlichere) Lösung. Ich möchte nicht ständig meine IP Adressen an den selben, amerikanischen Anbieter mitteilen.
Naja, es gibt ja keine Verbindung zu Dir. Du schickst einen Request dahin und er teilt Dir mit, welche Source-IP er gesehen hat.
Welche Möglichkeiten gibt es, zuverlässig seine öffentlichen IP Adressen auszulesen?
Normalerweise würdest Du Deinen Router fragen. Die Fritzbox führt ja ein Log von Events, das auch diese Info enthält. Den Zugriff darauf müsste man skripten können.
Oder ist man zwangsläufig an solch spezielle DNS-Dienste gebunden?
Das ist kein "spezieller DNS-Dienst". Das hat mit DNS gar nichts zu tun. Du schickst einen Request, der Server sagt Dir, welche IP er gesehen hat.
Am liebsten würde ich die Geschichte komplett lokal halten und beide Adressen einfach aus meiner Fritzbox heraus lesen.
s.o.
|
ChickenLipsRfun2eat
Supporter
Anmeldungsdatum: 6. Dezember 2009
Beiträge: 12070
|
Hallo! Du könntest den Artikel FritzBox/Skripte mal durcharbeiten und dann gleich einen „getestet“-Block ergänzen, falls das noch funktioniert.
|
chr123
Anmeldungsdatum: 19. Juli 2018
Beiträge: 1610
|
Hallo.
Am liebsten würde ich die Geschichte komplett lokal halten und beide Adressen einfach aus meiner Fritzbox heraus lesen.
Du kannst dir auch einfach von der Fritzbox eine Mail schicken lassen, wo die jeweils (neu) vergebene IP drin steht.
|
Zoner
(Themenstarter)
Anmeldungsdatum: 30. August 2019
Beiträge: 120
|
ChickenLipsRfun2eat schrieb: Hallo! Du könntest den Artikel FritzBox/Skripte mal durcharbeiten und dann gleich einen „getestet“-Block ergänzen, falls das noch funktioniert.
Bei mir hat keine einzige Option funktioniert. Nach ausführen der Befehle passiert einfach garnichts.
(sie werden instant ausgeführt, ohne das aber irgendetwas ausgegeben wird)
Bei einer Fritzbox 5590, OS 7.5. Allerdings stimmt bei mir z.B. das hier auch schon nicht überein:
| dig 1234567890abcdefgh.myfritz.net A +short
|
Bei mir lautet die Adresse "https://bla0:ipv6:bla1:bla2:port", nicht wie in der Wiki beschrieben. chr123 schrieb: Hallo.
Am liebsten würde ich die Geschichte komplett lokal halten und beide Adressen einfach aus meiner Fritzbox heraus lesen.
Du kannst dir auch einfach von der Fritzbox eine Mail schicken lassen, wo die jeweils (neu) vergebene IP drin steht.
Das kommt aktuell nicht in Frage. Ich nutze aktuell ausschließlich Thunderbird, auf nur einem System, mit der Einstellung EMails herunter zu laden und Serverseitig(beim Mailprovider) zu löschen. Das Script soll seperat auf einem kleinen Home-Server laufen. Da möchte ich keinen extra Mailclient installieren. Ich werde als nächstes mal die Optionen von kb durchprobieren. Einen dyndns Dienst muss ich z.B. langfristig eigentlich ohenhin wieder einrichten.
|
lubux
Anmeldungsdatum: 21. November 2012
Beiträge: 13293
|
Zoner schrieb: Allerdings stimmt bei mir z.B. das hier auch schon nicht überein:
Teste mal mit:
dig +short myip.opendns.com @208.67.222.222
dig -6 aaaa +short myip.opendns.com @2620:0:ccc::2
stun -v stun.counterpath.com 2>&1 1>/dev/null | grep MappedAddress | sed -e 's/.*MappedAddress = //' -e 's/:.*//' | uniq EDIT: BTW: Im source code für Asterisk findest Du die Datei ministun.c, 'https://github.com/themiron/ministun/blob/master/ministun.c' mit der Du ein binary kompilieren kannst:
$ gcc -o ministunx ministun.c $ ./ministunx stun.ekiga.net
109.###.###.###
|
dingsbums
Anmeldungsdatum: 13. November 2010
Beiträge: 3337
|
4 Ways to Find Server Public IP Address in Linux Terminal Teilmengen-Übereinstimmung mit den von lubux genannten Möglichkeiten.
|
Marant--
Anmeldungsdatum: 4. April 2022
Beiträge: Zähle...
|
IPv4, scheint noch zu gehen, curl "http://fritz.box:49000/igdupnp/control/WANIPConn1" -H "Content-Type: text/xml; charset="utf-8"" -H "SoapAction:urn:schemas-upnp-org:service:WANIPConnection:1#GetExternalIPAddress" -d "<?xml version='1.0' encoding='utf-8'?> <s:Envelope s:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' xmlns:s='http://schemas.xmlsoap.org/soap/envelope/'> <s:Body> <u:GetExternalIPAddress xmlns:u='urn:schemas-upnp-org:service:WANIPConnection:1' /> </s:Body> </s:Envelope>" -s | grep -Eo '\<[[:digit:]]{1,3}(\.[[:digit:]]{1,3}){3}\>' Quelle FB 6490/07.29 Falls es nicht läuft, ist (Heimnetz/Netzwerk/Netzwerkeinst./) "Statusinformationen über UPnP übertragen" aktiv?
|
lubux
Anmeldungsdatum: 21. November 2012
Beiträge: 13293
|
Marant-- schrieb: IPv4, scheint noch zu gehen,
Bei IPv6 ist es i. d. R. nicht so wichtig, die externe IPv6-Adresse der FritzBox zu kennen (... es sei denn man will von extern die FB erreichen). Jedes Gerät an der FB hat seine eigene externe IPv6-Adresse (d. h. ist "border device"). Nicht ganz so einfach ist es, wenn das Gerät 2 oder mehrere externe IPv6-Adressen hat (... eine für ausgehende v6-Verbindungen und eine mit z. B. statischer Interface-ID, für eingehende v6-Verbindungen).
|