NEWS
[gelöst] Gerät per Mac Adr & Blockly ansprechen
[gelöst] Gerät per Mac Adr & Blockly ansprechen
-
Das ist extrem merkwürdig. Normalerweise meldet sich ja ein Gerät beim DHCP-Server mit seiner MAC adresse und der DHCP guckt ob
- die MAC immer die selbe IP bekommen soll
- er die MAC kennt und der Lease noch läuft, dann gibts die vorige wieder
- weder noch, dann eine neue aus dem DHCP Pool
Sind es immer die selben ESP, die neue IPs bekommen?
Noch ne idee: Bist Du sicher, dass sie sich die IP auch von der Fritzbox holen? Wenn sie dort hinch hin kommen, generieren sie sich vlt was eigenes?
-
@Aphofis
Wie der Ostfriese bereits anmerkte sollte sich die IP nach Anhaken des Feldes nicht mehr ändern(tut sie auch nicht!!!), dennoch hier eine kleine Spielerei, mit der du die IP rausfinden kannst.

-
Das ist extrem merkwürdig. Normalerweise meldet sich ja ein Gerät beim DHCP-Server mit seiner MAC adresse und der DHCP guckt ob
- die MAC immer die selbe IP bekommen soll
- er die MAC kennt und der Lease noch läuft, dann gibts die vorige wieder
- weder noch, dann eine neue aus dem DHCP Pool
Sind es immer die selben ESP, die neue IPs bekommen?
Noch ne idee: Bist Du sicher, dass sie sich die IP auch von der Fritzbox holen? Wenn sie dort hinch hin kommen, generieren sie sich vlt was eigenes?
@OstfrieseUnterwegs
also verbuden sind meine Geräte mit einem eigenen Router der nur für die Aquarium steuerung ist also so zu sagen ein WLAN System für sich! alle anderen Geräte verbinden sich normal mit der Fritzbox.
Der Aquarium Router ist ein TP-Link. Seid dem haben alle Geräte die selbe Ip Adresse nur ab und an bekommen 3 Geräte mal eine andere IP und nach einem weiteren Neustart wieder ihre eigentliche IP. Ja sind immer die selben 3 Geräte sind alle identisch geflashed und ist auch die neueste Tasmota Software drauf. -
Und der TP-Link hat auch ein eigenes subnet? Also dein Aqaurium-Netz z.b. 192.168.1.x und dein anderes 192.168.0.x ? Ich weiss nicht, was passiert, wenn in einem Subnetz zwei DHCP Server werkeln.
-
Und der TP-Link hat auch ein eigenes subnet? Also dein Aqaurium-Netz z.b. 192.168.1.x und dein anderes 192.168.0.x ? Ich weiss nicht, was passiert, wenn in einem Subnetz zwei DHCP Server werkeln.
@OstfrieseUnterwegs
ne ne also Haupt DHCP ist die Fritzbox und TP-Link läuft an LAN3 und vergibt darüber IP Adressen an die Geräte die per WLAN verbinden. die in der Fritzbox fixiert sind.
Im TP link sind per MAC Adresse nur die erlaubten Geräte per MAC Filter erlaubt.
Netz ist bei allen das selbe: 192.168.0.X -
@Aphofis
Wie der Ostfriese bereits anmerkte sollte sich die IP nach Anhaken des Feldes nicht mehr ändern(tut sie auch nicht!!!), dennoch hier eine kleine Spielerei, mit der du die IP rausfinden kannst.

im LOG steht dann nur
javascript.0 2020-06-23 18:52:44.383 info (3831) script.js.ESP_Reboot.Aqu_Control_IP_Abfrage: http:///cm?user=Mein_Benutzername&password=Mein_Passwort javascript.0 2020-06-23 18:52:44.356 info (3831) script.js.ESP_Reboot.Aqu_Control_IP_Abfrage: registered 0 subscriptions and 0 schedules javascript.0 2020-06-23 18:52:44.336 info (3831) Start javascript script.js.ESP_Reboot.Aqu_Control_IP_Abfragemehr nicht
In der Datenpunkt ausgabe die ich dazu gepackt hatte steht auch nur
http://cm?user=Benutzer&password=Passwort -
im LOG steht dann nur
javascript.0 2020-06-23 18:52:44.383 info (3831) script.js.ESP_Reboot.Aqu_Control_IP_Abfrage: http:///cm?user=Mein_Benutzername&password=Mein_Passwort javascript.0 2020-06-23 18:52:44.356 info (3831) script.js.ESP_Reboot.Aqu_Control_IP_Abfrage: registered 0 subscriptions and 0 schedules javascript.0 2020-06-23 18:52:44.336 info (3831) Start javascript script.js.ESP_Reboot.Aqu_Control_IP_Abfragemehr nicht
In der Datenpunkt ausgabe die ich dazu gepackt hatte steht auch nur
http://cm?user=Benutzer&password=Passworthast du arp installiert ? ist z.b. bei mir nicht installiert https://www.computerhope.com/unix/arp.htm
ich hätte ein script, mit dem habe ich über Nmap ein liste (json) mit ip und macadresse von meinem netzwerk erzeugt wird - falls interesse - die liste könnte man dann auch abfragen - wobei die lösung von @fastfoot recht gut finde - dieses script kommt als "ausschuß" von dieser tabelle: https://forum.iobroker.net/topic/30057/ip-devices-im-netzwerk-html-tabelle-vis-iqontrol
-
hast du arp installiert ? ist z.b. bei mir nicht installiert https://www.computerhope.com/unix/arp.htm
ich hätte ein script, mit dem habe ich über Nmap ein liste (json) mit ip und macadresse von meinem netzwerk erzeugt wird - falls interesse - die liste könnte man dann auch abfragen - wobei die lösung von @fastfoot recht gut finde - dieses script kommt als "ausschuß" von dieser tabelle: https://forum.iobroker.net/topic/30057/ip-devices-im-netzwerk-html-tabelle-vis-iqontrol
@liv-in-sky
Klingt gut!
Das über Blockly finde ich Top nur gibt die Ausgabe nicht den gewünschten effekt Also das soll doch die IP adresse zu der abgefragten MAC Adresse raus oder nicht
Nein ARP habe ich nicht installiert! Was denn das für ein Adapter kenne ich nicht -
@liv-in-sky
Klingt gut!
Das über Blockly finde ich Top nur gibt die Ausgabe nicht den gewünschten effekt Also das soll doch die IP adresse zu der abgefragten MAC Adresse raus oder nicht
Nein ARP habe ich nicht installiert! Was denn das für ein Adapter kenne ich nichtkein adapter
sein blockly nutzt exec - das bedeutet, es ruft einen linux befehl auf - das blockly geht auf die linux ebene !
und bitte kontrollieren:
hast du exec im javascript-instanz aktiviert ?
-
kein adapter
sein blockly nutzt exec - das bedeutet, es ruft einen linux befehl auf - das blockly geht auf die linux ebene !
und bitte kontrollieren:
hast du exec im javascript-instanz aktiviert ?
@liv-in-sky
Ja na klar EXEC ist aktiv! Ich habe mehrere von meinen aktiven 117 Aquarium Blockly Steuerungen die per EXEC Abfragen empfangen bzw senden. -
@liv-in-sky
Ja na klar EXEC ist aktiv! Ich habe mehrere von meinen aktiven 117 Aquarium Blockly Steuerungen die per EXEC Abfragen empfangen bzw senden.@Aphofis wenn du mal eine console auf deinem server öffnest (nehme an linux?) , dann gib mal arp ein - dann siehst du, ob es installiert ist
-
@Aphofis wenn du mal eine console auf deinem server öffnest (nehme an linux?) , dann gib mal arp ein - dann siehst du, ob es installiert ist
@liv-in-sky
moment
...........
ist es richtog, das arp alle verbundenen Geräte mit MAC adresse auflistet!? -
@liv-in-sky
moment
...........
ist es richtog, das arp alle verbundenen Geräte mit MAC adresse auflistet!?also ich habe das mal bei einen meiner server auf console aufgerufen - bei mir findet arp nur ein paar geräte- da müßtest du mal googleln, was das genau macht oder evtl weiß es hier jmd, wie der befehl genau funktioniert - mußte bis jetzt nie was mit arp machen
-
Hey Leute, ich habe da mal eine Frage,
ich habe Steuerungen die ESP8266s per Blockly und IP Adresse Neustarten können. Nun kommt es ab und an vor, das sich die IP Adresse mancher Geräte ändert.
Ist es möglich dieses per Mac Adresse zu realisieren!?So sieht eine momentane Steuerung per IP Adresse aus.
<xml xmlns="https://developers.google.com/blockly/xml"> <block type="on" id="5+Aq]kWEr$-MbEsPQOdd" x="-1662" y="-862"> <field name="OID">Aqua_Control.0.ESP_Reboot.Aqua_Control</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="controls_if" id="|0x)BNGmXHGeJjVk{H/U"> <value name="IF0"> <block type="logic_compare" id="A0nYx/=g4gD=yu`enAQs"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="5ou?A5EGx)GV7{6V)4kL"> <field name="ATTR">val</field> <field name="OID">Aqua_Control.0.ESP_Reboot.Aqua_Control</field> </block> </value> <value name="B"> <block type="logic_boolean" id="RuUNb(flm@##5KwJ;OT,"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="request" id="L`=gj8-_?2e-RM;s^-nm"> <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation> <field name="WITH_STATEMENT">FALSE</field> <field name="LOG">log</field> <value name="URL"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="/QB12?FoSL,HH;5mQ4WS"> <field name="TEXT">text</field> </shadow> <block type="text" id="3^i%pXoD%at.TpGj{#/N"> <field name="TEXT">http://192.168.0.57/cm?user=admin&password=Passwort;cmnd=Restart%201</field> </block> </value> <next> <block type="control" id="Xy[DFh:4c?nO??%0OL={"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">Aqua_Control.0.ESP_Reboot.Aqua_Control</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">10</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="1oV!um/Rsj,4Ji]i.W:e"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="9};$:/(!;4(W|L,c{-ti"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alexa2.0.Echo-Devices.G090LV0371040175.Commands.speak</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text_join" id="Gxylg7r02KYYxVUMf/N."> <mutation items="1"></mutation> <value name="ADD0"> <block type="text" id="xnMA@S}oO*$ZIu]4sNkk"> <field name="TEXT">Aqua Control,, wurde neu gestartet</field> </block> </value> </block> </value> <next> <block type="telegram" id="ecFJQ+D=/X^yD=i{OG~G"> <field name="INSTANCE">.0</field> <field name="LOG"></field> <field name="SILENT">FALSE</field> <field name="PARSEMODE">default</field> <value name="MESSAGE"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="Q8V,~Cj!QY03V`OHi,k6"> <field name="TEXT">text</field> </shadow> <block type="text_join" id="Hums])|=?j!W3:S{az5q"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="eXjU)~}zb1@Z.A,}T48Z"> <field name="TEXT">Aqua Control</field> </block> </value> <value name="ADD1"> <block type="text_newline" id="Fo7*CXYDrl5~tFn%y30C"> <field name="Type">\n</field> </block> </value> <value name="ADD2"> <block type="text" id="9`s,C3P-Bu7#I1PJzs1k"> <field name="TEXT">wurde neu gestartet</field> </block> </value> </block> </value> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </xml>
@Aphofis
was ich noch gefunden habe ist arp-scan - da sind dann wohl alle drinauf dieser seite - weiter unten - https://www.elektronik-kompendium.de/sites/net/1910051.htm ist das erklärt
wenn ich arp-scan --localnet eingebe, kommen alle geräte im netz
vielleicht hilft das - das könnte man auch nehmen um ein blockly mit exec zu machen
-
@Aphofis
Probiere doch mal arp -a auf der Konsole, das listet alle gespeicherten Geräte mit MAC und IP. das Format könnte anders sein als bei meinem. Poste doch mal das Ergebnis. Wenn arp nicht in deinem Linux installiert ist dann macht es aber eh keinen Sinn. Und ja, das Blockly-Exec gibt als Rückgabe genau die gefundene IP zurück, daraus bastele ich dann die URL die du so in deinem Request verwenden kannst. arp listet nicht zwangsläufig alle Geräte, sondern nur die zuletzt Traffic im Netzwerk hatten. Es wären also mehrere Ursachen für eine leere Rückgabe denkbar.Dein Setup des TP-Link habe ich nicht verstanden, du schreibst so als hättest du dort 'nur' den MAC-Filter eingestellt, der vergibt aber keine IP Adressen. Falls der noch einen DHCP-Server hat würde ich den unbedingt ausschalten, die Fritzbox jedenfalls vergibt immer die gleichen Afressen
-
@Aphofis
Probiere doch mal arp -a auf der Konsole, das listet alle gespeicherten Geräte mit MAC und IP. das Format könnte anders sein als bei meinem. Poste doch mal das Ergebnis. Wenn arp nicht in deinem Linux installiert ist dann macht es aber eh keinen Sinn. Und ja, das Blockly-Exec gibt als Rückgabe genau die gefundene IP zurück, daraus bastele ich dann die URL die du so in deinem Request verwenden kannst. arp listet nicht zwangsläufig alle Geräte, sondern nur die zuletzt Traffic im Netzwerk hatten. Es wären also mehrere Ursachen für eine leere Rückgabe denkbar.Dein Setup des TP-Link habe ich nicht verstanden, du schreibst so als hättest du dort 'nur' den MAC-Filter eingestellt, der vergibt aber keine IP Adressen. Falls der noch einen DHCP-Server hat würde ich den unbedingt ausschalten, die Fritzbox jedenfalls vergibt immer die gleichen Afressen
@fastfoot
für das getestete Gerät ist die arp ausgabeAqua-Control.fritz.box (192.168.0.57) auf 2c:f4:32:57:b7:14 [ether] auf eth0Nein TP Link hat keinen DHCP am laufen das wäre kontra produktiv
IPs vergint nur die Fritzbox ich meine ich habe im WLAN des TP Link nur die Geräte erlaubt per MAC adresse die da auch was zu suchen haben. Da mein Meerwasser Aquarium ein geschlossenes System ist. -
@Aphofis
Probiere doch mal arp -a auf der Konsole, das listet alle gespeicherten Geräte mit MAC und IP. das Format könnte anders sein als bei meinem. Poste doch mal das Ergebnis. Wenn arp nicht in deinem Linux installiert ist dann macht es aber eh keinen Sinn. Und ja, das Blockly-Exec gibt als Rückgabe genau die gefundene IP zurück, daraus bastele ich dann die URL die du so in deinem Request verwenden kannst. arp listet nicht zwangsläufig alle Geräte, sondern nur die zuletzt Traffic im Netzwerk hatten. Es wären also mehrere Ursachen für eine leere Rückgabe denkbar.Dein Setup des TP-Link habe ich nicht verstanden, du schreibst so als hättest du dort 'nur' den MAC-Filter eingestellt, der vergibt aber keine IP Adressen. Falls der noch einen DHCP-Server hat würde ich den unbedingt ausschalten, die Fritzbox jedenfalls vergibt immer die gleichen Afressen
@fastfoot also ich bekome bei arp -a genau 5 geräte angezeigt
mit arp-scan --localnet sind es alle
-
@fastfoot also ich bekome bei arp -a genau 5 geräte angezeigt
mit arp-scan --localnet sind es alle
@liv-in-sky sagte in Gerät per Mac Adr & Blockly ansprechen:
arp-scan
nein nein also es werden viele Geräte angezeigt
-
@fastfoot
für das getestete Gerät ist die arp ausgabeAqua-Control.fritz.box (192.168.0.57) auf 2c:f4:32:57:b7:14 [ether] auf eth0Nein TP Link hat keinen DHCP am laufen das wäre kontra produktiv
IPs vergint nur die Fritzbox ich meine ich habe im WLAN des TP Link nur die Geräte erlaubt per MAC adresse die da auch was zu suchen haben. Da mein Meerwasser Aquarium ein geschlossenes System ist.