Externe IP herausfinden und anzeigen

Begonnen von Ralle, 30 April 2018, 18:04:33

Vorheriges Thema - Nächstes Thema

Ralle

Hallo zusammen,
würde gerne die Externe IP meines Routers im FTUI anzeigen.
Erste Ansätze dazu gibt es ja schon unter https://forum.fhem.de/index.php/topic,12918.0.html
Ob das noch funktioniert kann ich nicht mal sagen da mein Perl Wissen dafür einfach nicht ausreicht.
Ich habe auf der Kommandozeile mal versucht den Inhalt von Variablen auszugeben mit {print getip()} und {myutils_getip()}, was aber ziemlich sicher totaler Unfug ist?
Für den einen oder anderen Anfängertipp wäre ich dankbar.

Gruß
Ralf
Raspberry 3, Homematic HMLAN, HM Rolladensteuerung, MySensors, MAX CUL (Umbau Telekatz), Sonoff mit Easy-ESP, Arduino, MQTT, USV(Powerbar), 433Mhz Steckdosen

mark79

Hallo,

vielleicht etwas überladen, aber das HOMEMODE Fhem Modul zeigt in den Readings die Public IP an.


Viele Grüße
Mark
Rock64 4GB mit Debian Strech, FHEM im LXC, Sonoff Switches/Touch, HM Thermostate, HMUART/Zigbee2MQTT@MapleCUN, ESP RGBWW Wifi Controller, ESP8266 Door Sensor/Briefkastenwächter, BT CSL Stick, BT iTags, Alexa, FireTV, RPi2 mit Kodi, Xiaomi Vacuum v1/Smarthome Komponenten

CoolTux

Hast du eine Fritzbox? Da kann man das Modul für verwenden.
Ansonsten kannst Du auch eine externe Seite mit HTTPMOD aufrufen myip oder so und die IP als Reading ablegen.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

amenomade

defmod myIP HTTPMOD https://www.wieistmeineip.de/ 86400
attr myIP reading01Name IP
attr myIP reading01Regex (?s)Ihre IP-Adresse?.*strong>([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Ralle

Vielen Dank @amenomade
Das funktioniert  :)
Raspberry 3, Homematic HMLAN, HM Rolladensteuerung, MySensors, MAX CUL (Umbau Telekatz), Sonoff mit Easy-ESP, Arduino, MQTT, USV(Powerbar), 433Mhz Steckdosen

gloob

#5
Vielen Dank dafür. Wäre ein Schöner Eintrag fürs Wiki. Ich hatte es bisher über eine eigenen Funktion in 99_myUtils.pm gelöst.

Wenn man das stateFormat noch setzt sieht es noch besser aus:

defmod myIP HTTPMOD https://www.wieistmeineip.de/ 86400
attr myIP userattr reading01Name reading01Regex
attr myIP reading01Name IP
attr myIP reading01Regex (?s)Ihre IP-Adresse?.*strong>([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)
attr myIP stateFormat IP
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

tik-tak-tok

Danke gloob! ;-)

Kann mir jetzt noch jemand sagen, wie ein DOIF auszusehen hat, welches mir die neue IP per Telegram sendet?
Ich möchte also wirklich nur die (neue) IP gesendet haben, wenn diese sich geändert hat.

:-)

Besten Dank & lg,
Mike

Wernieman

Vergiss DOIF, das ist wirklich in dem Falle Oversize ....

ein "change on update" aufs Device setzen und ein passendes notify
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

connormcl

Zitat von: gloob am 30 April 2018, 19:02:36
Vielen Dank dafür. Wäre ein Schöner Eintrag fürs Wiki. Ich hatte es bisher über eine eigenen Funktion in 99_myUtils.pm gelöst.

Wenn man das stateFormat noch setzt sieht es noch besser aus:

defmod myIP HTTPMOD https://www.wieistmeineip.de/ 86400
attr myIP userattr reading01Name reading01Regex
attr myIP reading01Name IP
attr myIP reading01Regex (?s)Ihre IP-Adresse?.*strong>([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)
attr myIP stateFormat IP


Betreibt ihr eure Server etwa noch mit ipv4 only? Was ist mit ipv6? bzw. man sollte heutzutage schon an beides denken...

amenomade

#9
Ich brauche meine externe IP Adresse nur für Alexa... und Alexa versteht noch keine IPv6. Prinzipiell kann man aber die HTTPMOD Lösung auch mit IPv6 nutzen. Man braucht nur eine Webseite, die IPv6 liefert. Dann hätte aber die IPv6 des Routers wenig Interesse.
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Wuppi68

also IPv6 wird nicht genattet ... da kannst Du die lokale benutzen - aber Dein Router sollte diese sowieso nicht erreichbar machen ;-)
FHEM unter Proxmox als VM

amenomade

Genau. Wobei... dann sollte man tatsächlich die lokale aber nicht die Loopback Adresse ::1/128 nutzen ;)
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

connormcl

#12
Zitat von: Wuppi68 am 30 April 2018, 21:19:27
also IPv6 wird nicht genattet ... da kannst Du die lokale benutzen - aber Dein Router sollte diese sowieso nicht erreichbar machen ;-)

Wieso sollte ich meine ipv6 nicht erreichbar machen, wenn ich auf FHEM zugreifen möchte? (die lokale Firewall sollte dann natürlich entsprechend performen und ich geh dann VPN ins lokale Netz...)


Ausserdem habe ich die Anmerkung fallenlassen, weil https://www.wieistmeineip.de/ sehr wohl ipv6 reportet...genaugenommen beides...damit fällt der genannte Regex-Ausdruck dann auf die Nase, wenn man nur ipv6 oder beides verwendet.

Es gibt zwei Felder:

Ihre IP-Adresse lautet: ipv6
Ihre IPv4-Adresse lautet: ipv4

amenomade

Zitat von: connormcl am 30 April 2018, 22:19:58
Es gibt zwei Felder:

Ihre IP-Adresse lautet: ipv6
Ihre IPv4-Adresse lautet: ipv4
Dann einfach davon 2 Readings machen.
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Wuppi68

Zitat von: connormcl am 30 April 2018, 22:19:58
Wieso sollte ich meine ipv6 nicht erreichbar machen, wenn ich auf FHEM zugreifen möchte? (die lokale Firewall sollte dann natürlich entsprechend performen und ich geh dann VPN ins lokale Netz...)


Ausserdem habe ich die Anmerkung fallenlassen, weil https://www.wieistmeineip.de/ sehr wohl ipv6 reportet...genaugenommen beides...damit fällt der genannte Regex-Ausdruck dann auf die Nase, wenn man nur ipv6 oder beides verwendet.

Es gibt zwei Felder:

Ihre IP-Adresse lautet: ipv6
Ihre IPv4-Adresse lautet: ipv4

naja, machst Du VPN brauchst Du Deine externe IP nicht - Du bist ja Lokal in Deinem Netz unterwegs und dann interessiert Dich Deine externe IP nicht die Bohne ... und wenn Du dann Deine IPv6 Adresse brauchst, da gibt es genügend DDNS Tools, die Dir diese bei Deinem lokalen oder externen DNS entsprechend registrieren und den kannst Du dann bequem mit benutzen

aber back to Topic

IPv4 ist ja kein Problem entsprechend anzuzeigen (gibt es genügend Beispiele im Forum)
IPv6  interessiert nur die Routeradresse und der Präfix
FHEM unter Proxmox als VM