Wemos D1 Mini - Hostname und MAC-Adresse nicht änderbar

OP (Firma: Q3) #5546094
Lesenswert?

Ich möchte mit dem folgenden Code Hostname und MAC-Adresse eines D1 Mini 
ändern. (Programmiere in der Arduino-IDE)

Der Code wird zwar anstandslos compiliert, der Effekt ist aber absolut 
Null: Weder MAC noch Hostname werden geändert, sondern stehen eisern auf 
Werkseinstellungen.
1
  WiFi.hostname(host);
2
  WiFi.macAddress(mac);
3
  wifi_set_macaddr(STATION_IF, mac);
4
  WiFi.mode(WIFI_STA);
5
  WiFi.begin(ssid,pass); delay(100);
6

7
  wifi_connect(); delay(100);
8
  server.begin(); delay(100);

Alles andere funktiniert wie vorgesehen. Die Variablen für host, ssid 
und
pass sind vom Typ "const char* = ...", mac ist ein Array of Byte.

Was ist falsch? Danke für Tips.
Gast #5546107
Lesenswert?

Hallo Frank E.,

kannst du den gesammten Code posten und die angaben, die du nicht 
angeben willst einfach abändern.
Möglicherweise ist bei der Deklarierung oder Initialisirung der ssid, 
mac, host, .. etwas falsch gelaufen.
Ich habe den Hostnamen und eine Feste IP auch mal genutzt, testweise, 
das hat eigentlich einwandfrei funktioniert, so kann ich auf anhieb 
erstmal keinen Fehler in deinem Code sehen.

LG
Marcel
Gast #5546135
Lesenswert?

Hallo Frank,

die Mac Adresse wird nicht gesetzt, da du dir den Inhalt der Variable 
mac durch die Funktion WiFi.macAddress(mac) wahrscheinlich 
überschreibst. Diese Funktion ruft intern die SDK Funktion 
wifi_get_macaddr auf, welche als Aufrufparameter auch die Variable 
übergeben bekommt.
Gast #5546368
Lesenswert?

Frank E. schrieb:
>
1
>   WiFi.hostname(host);
2
>   WiFi.macAddress(mac);
3
>   wifi_set_macaddr(STATION_IF, mac);
4
>   WiFi.mode(WIFI_STA);
5
>   WiFi.begin(ssid,pass); delay(100);
6
> 
7
>   wifi_connect(); delay(100);
8
>   server.begin(); delay(100);
9
> 
10
>


Mit
1
WiFi.hostname(host);
holst Du die aktuelle Mac-Adresse.

Mit
1
wifi_set_macaddr(STATION_IF, mac);
setzt Du sie auf den schon bestehenden Wert.
Ist also sinnlos.
Schreib da mal eine neue rein.
Beitrag #5546703 wurde von einem Moderator gelöscht.
(Firma: www.wolfgangrobel.de) #5546718
Lesenswert?

Harry L. schrieb:
> Wozu sollte man auch die MAC-Adresse ändern?
> Die ist eindeutig und das reicht vollkommen aus.
>
> Mir fällt kein plausibler Grund ein

Wenn Geräte im Verbund z.B. anhand der MAC-Adressen erkannt werden und 
eine Netzwerkkarte kaputt gegangen ist - dann ist man froh, wenn man das 
Ersatzgerät auf die alte MAC umprogrammieren kann, weil man dann absolut 
nichts umkonfigurieren muss.
#5546739
Lesenswert?

Wolfgang R. schrieb:
> Harry L. schrieb:
>> Wozu sollte man auch die MAC-Adresse ändern?
>> Die ist eindeutig und das reicht vollkommen aus.
>>
>> Mir fällt kein plausibler Grund ein
>
> Wenn Geräte im Verbund z.B. anhand der MAC-Adressen erkannt werden und
> eine Netzwerkkarte kaputt gegangen ist - dann ist man froh, wenn man das
> Ersatzgerät auf die alte MAC umprogrammieren kann, weil man dann absolut
> nichts umkonfigurieren muss.

Es ist ja wohl einfacher, die neue MAC-Adresse im DHCP-Server zu 
hinterlegen, als die MAC-Adresse des Gerätes zu ändern.

Das ist die normale Vorgehensweise.
Alles Andere ist Frickellei von Amateuren die keine Ahnung haben.
Beitrag #5546749 wurde von einem Moderator gelöscht.
Beitrag #5546758 wurde von einem Moderator gelöscht.
Gast #5546831
Lesenswert?

Harry L. schrieb:
> Es ist ja wohl einfacher, die neue MAC-Adresse im DHCP-Server zu
> hinterlegen, als die MAC-Adresse des Gerätes zu ändern.

Kleiner Tip: MAC-Adressen werden nicht nur von DHCP-Servern benutzt und 
selbst da führt es, aufgrund der üblichen Zentralisierung der IT, 
schneller zum Ziel die MAC zu übernehmen und später alles zu bereinigen.
Bei uns laufen die Anlagen 24/7, die zentrale IT arbeitet aber nur 8/5, 
ist billiger.
#5546849
Lesenswert?

Horst schrieb:
> Harry L. schrieb:
>> Es ist ja wohl einfacher, die neue MAC-Adresse im DHCP-Server zu
>> hinterlegen, als die MAC-Adresse des Gerätes zu ändern.
>
> Kleiner Tip: MAC-Adressen werden nicht nur von DHCP-Servern benutzt und
> selbst da führt es, aufgrund der üblichen Zentralisierung der IT,
> schneller zum Ziel die MAC zu übernehmen und später alles zu bereinigen.
> Bei uns laufen die Anlagen 24/7, die zentrale IT arbeitet aber nur 8/5,
> ist billiger.

Das Unvermögen der BWLer, die Notwendigkeit eines 24/7 verfügbaren 
Admin-Team zu erkennen ("die gammeln ja nur den ganzen Tag vor dem 
Rechner rum") ist keine hinreichende Begründung für so eine 
Vorgehensweise.

Wenn so eine "wichtige MAC" an mehr als einer Stelle hinterlegt ist, ist 
bereits im Vorfeld ganz viel schief gelaufen.

Das ist genau die Art von Frickellei, die früher oder später ins Chaos 
führt.
(Firma: www.wolfgangrobel.de) #5546876
Lesenswert?

Harry L. schrieb:
> Wenn so eine "wichtige MAC" an mehr als einer Stelle hinterlegt ist, ist
> bereits im Vorfeld ganz viel schief gelaufen.
>
> Das ist genau die Art von Frickellei, die früher oder später ins Chaos
> führt.

Ach Harry, hätten sie dich nur vorher schon in der Planungsphase 
dabeigehabt...

Dein arrogantes Gehabe hilft nicht weiter, wenn die Dinge nun mal so 
sind, wie sie sind - dann kann es durchaus die schnellste und günstigste 
Lösung sein, die MAC zu ändern. Kann übrigens auch Hardware-Dongles 
betreffen...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren