MAC -> IP

Begonnen von Per, 22 Januar 2016, 08:26:54

Vorheriges Thema - Nächstes Thema

Per

Da immer mehr Geräte über ihre IP anzusprechen sind (IoT), feste oder reservierte DHCP nicht immer angebracht sind, wäre doch eine Funktion, welche die IP bei bekannter MAC zurückgibt, angebracht.
Jetzt kann man zwar mit ARP, FING o.ä. arbeiten, aber da diese Funktionen OS-abhängig sind, gehören sie meiner Ansicht nach nicht in die Module, sondern sollten ein "Service" der Basis sein.
Natürlich wären sie auch in Fhem selbst noch vom OS abhängig, ich denke aber, es wäre dort leicher zu "verwalten" als in den Modulen selbst.
Zumal die Modulersteller damit auch keine OS-übergreifenden Kentnisse bräuchten.

Hollo

Zitat von: Per am 22 Januar 2016, 08:26:54
...wäre doch eine Funktion, welche die IP bei bekannter MAC zurückgibt, angebracht...
Genau das kann ein ordentlicher DHCP-Server, wenn er entsprechend konfiguriert ist.
Sowas ist aber IMHO ein "Server-Dienst", von dem massgeblich die Netzwerkfunktion und -stabilität abhängt; das gehört meines Erachtens nicht in ein FHEM-Modul.

Oder ich habe die "Frage" nicht verstanden.
FHEM 6.x auf RPi 3B Buster
Protokolle: Homematic, Z-Wave, MQTT, Modbus
Temp/Feuchte: JeeLink-Clone und LGW mit LaCrosse/IT
sonstiges: Linux-Server, Dreambox, "RSS-Tablet"

Per

Zitat von: Hollo am 25 Januar 2016, 09:41:30Oder ich habe die "Frage" nicht verstanden.
Vllt. habe ich mich auch nur ungenau ausgedrückt. Ich möcht nicht den DHCP-Server in Fhem nachbilden, sondern nur die vom "normalen" DHCP-Server an eine bekannte MAC (die von meinem Gerät) vergebene IP herausbekommen.
Das kann ich manuell über das Web-Frontend vom DHCP-Server oder vom -Client, automatisiert wird das aber deutlich schwieriger, da jeder Hersteller sein eigenes Konzept und seine eigene Syntax verwendet. Und das auch noch modellabhängig.
Mit "Fing" oder "Arp" bekomme ich Listen von MAC und zugehörigen IP (fest und dynamisch) zurück. Das würde ich aber nicht in jedes Modul einbauen wollen, sondern eine zentrale Instanz (Dienst, Funktion...) dafür vorsehen, da ich dann die OS-Abhängigkeit auch nur einmal berücksichten muss.

betateilchen

Ich hab immer noch nicht kapiert, welche IP Du herausfinden willst. Die von der Kiste, auf der das fhem läuft?
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Tedious

#4
Glaube er hätte gerne dass man per FHEM einen ping sendet? So hab ichs verstanden?!

Á la "ping ABC"

Ping wird ausgeführt für ABC [1.2.3.4] mit 32 Bytes D
aten:
Antwort von 1.2.3.4: Bytes=32 Zeit<1ms TTL=128
Antwort von 1.2.3.4: Bytes=32 Zeit<1ms TTL=128
Antwort von 1.2.3.4: Bytes=32 Zeit<1ms TTL=128
Antwort von 1.2.3.4: Bytes=32 Zeit<1ms TTL=128

Ping-Statistik für 1.2.3.4:
    Pakete: Gesendet = 4, Empfangen = 4, Verloren = 0
    (0% Verlust),
Ca. Zeitangaben in Millisek.:
    Minimum = 0ms, Maximum = 0ms, Mittelwert = 0ms


Oder hab ich das auch (nicht/falsch) verstanden?

EDIT: ich glaube ich habs auch falsch verstanden - Du willst von der MAC (?) ausgehend die IP haben? Bei Windows wäre das ein arp -a auf cmd-Ebene, bi Linux bin ich nicht soooo fit was die Bash angeht...
FHEM auf Proxmox-VM (Intel NUC) mit 4xMapleCUN (433,3x868) und Jeelink, HUE, MiLight, Max!, SonOff, Zigbee, Alexa, uvm...

Per

Zitat von: Tedious am 25 Januar 2016, 12:05:19EDIT: ich glaube ich habs auch falsch verstanden
Richtig :(

Zitat von: Tedious am 25 Januar 2016, 12:05:19Du willst von der MAC (?) ausgehend die IP haben?
Nochmal richtig! :D

Die MAC ist halt konstant (Definition), die IP kann (DHCP) sich ändern (Internal).

Hollo

Zitat von: Per am 25 Januar 2016, 12:46:14
...Die MAC ist halt konstant (Definition), die IP kann (DHCP) sich ändern (Internal).
Wie oben schon geschrieben...
wenn Du den DHCP-Server ordentlich konfigurierst, bekommt ein Device mit einer definierten MAC-Adresse bei jeder DHCP-Anfrage dieselbe IP zugewiesen; auch völlig unabhängig vom verwendeten Betriebssystem.
FHEM 6.x auf RPi 3B Buster
Protokolle: Homematic, Z-Wave, MQTT, Modbus
Temp/Feuchte: JeeLink-Clone und LGW mit LaCrosse/IT
sonstiges: Linux-Server, Dreambox, "RSS-Tablet"

Tedious

#7
Schließe mich meinem Vorredner an. Zudem... auch ich nutze DHCP, habe aber allen relevanten Geräten in der Infrastruktur auf die ich Zugriffe/Pings/etc. benötige wie Servern, Druckern etc. eine fixe IP ausserhalb der DHCP-Range zugewiesen. Insofern... erschließt sich mir der Sinn nicht so ganz.

Und, wie gesagt - geb an einem Win-Rechner in der CMD mal arp -a ein ;)

Tante EDITH: Google sagt das geht auch bei Linux ;) http://www.oreilly.de/german/freebooks/linag2/netz0510.htm
FHEM auf Proxmox-VM (Intel NUC) mit 4xMapleCUN (433,3x868) und Jeelink, HUE, MiLight, Max!, SonOff, Zigbee, Alexa, uvm...

Per

Zitat von: Tedious am 25 Januar 2016, 13:36:13habe aber allen relevanten Geräten in der Infrastruktur auf die ich Zugriffe/Pings/etc. benötige wie Servern, Druckern etc. eine fixe IP ausserhalb der DHCP-Range zugewiesen.
Tja, dass das geht, weiss ich alles. Steht ja schon im Eröffnungspost. Auch Arp (und fing) wurde da schon erwähnt.

Mir geht es aber darum, Sachen, die ich manuell machen kann, zu automatisieren.
Oder stellt ihr eure Heizungen noch manuell ein?! ;D

marvin78

Nein. Aber wir machen es an der Stelle, an der es sinnvoll UND einfach ist und das ist entweder eine feste IP oder die Konfiguration des DHCP Servers.

Markus Bloch

Warum sollte man viel Aufwand in die Implementierung eines solchen Mechanismus stecken, wenn man in der FritzBox nur einmalig eine Checkbox anklicken muss und auf speichern drückt und das Problem somit dauerhaft gelöst ist?

Alternativ, bau dir eine Perl-Funktion in deiner 99_myUtils.pm, welche eine IP-Adresse zur MAC auflöst.

Gruß
Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

Tedious

Zitat von: Per am 25 Januar 2016, 14:03:55
Oder stellt ihr eure Heizungen noch manuell ein?! ;D

Nein, natürlich nicht. Aber es steht Dir ja frei was in Perl zu basteln - auch da kannst Du arp einbetten - wie in dem Post vor mir genannt. Wobei - man möge mir verzeihen - sowas mit Kanonen auf Spatzen schießen ist. Man sollte an der Basis anfangen und seine Netze sauber aufbauen, denn kommt man gar nicht zu der Problematik  :o
FHEM auf Proxmox-VM (Intel NUC) mit 4xMapleCUN (433,3x868) und Jeelink, HUE, MiLight, Max!, SonOff, Zigbee, Alexa, uvm...

betateilchen

Mein DHCP Server heißt dnsmasq und die Konfigurationsdateien dazu habe ich selbst erstellt. Also wenn ich irgendwelche Informationen diesbezüglich brauche, dann lese ich einfach die Konfigurationsdateien aus. Aber gebraucht habe ich sowas auch nach 30 Jahren Netzwerktechnik noch nie.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Per

Zitat von: Tedious am 25 Januar 2016, 16:00:40Aber es steht Dir ja frei was in Perl zu basteln
Meinst du nicht, dass ich das dann vllt. unter Codeschnipsel vorgestellt hätte statt unter Wunschliste?

Aber wahrscheinlich werde ich das tun müssen, wird dann halt nicht OS-unabhängig und kann "etwas" dauern.

Hollo

Zitat von: betateilchen am 25 Januar 2016, 19:08:28
Mein DHCP Server heißt dnsmasq...
So isses.
Und der kann DNS, DHCP und auch PXE-Server mit TFTP; mehr braucht man für's Home-Netzwerk eigentlich fast nicht.   8)
FHEM 6.x auf RPi 3B Buster
Protokolle: Homematic, Z-Wave, MQTT, Modbus
Temp/Feuchte: JeeLink-Clone und LGW mit LaCrosse/IT
sonstiges: Linux-Server, Dreambox, "RSS-Tablet"