Forum: Mikrocontroller und Digitale Elektronik Wemos D1 Mini - Hostname und MAC-Adresse nicht änderbar


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Frank E. (Firma: Q3) (qualidat)


Bewertung
0 lesenswert
nicht 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.

von Marcel (Gast)


Bewertung
0 lesenswert
nicht 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

von Jannik (Gast)


Bewertung
0 lesenswert
nicht 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.

von Harry L. (mysth)


Bewertung
0 lesenswert
nicht lesenswert
Wozu sollte man auch die MAC-Adresse ändern?
Die ist eindeutig und das reicht vollkommen aus.

Mir fällt kein plausibler Grund ein

von honk (Gast)


Bewertung
-2 lesenswert
nicht 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


Nur weil Dir die Phantasie fehlt, ist das noch kein Grund für andere, 
nicht kreativ zu sein...

von honk (Gast)


Bewertung
0 lesenswert
nicht 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.

von honk (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Sollte natürlich
1
WiFi.macAddress(mac);

bei der ersten Zeile heissen.

Beitrag #5546703 wurde von einem Moderator gelöscht.
von Wolfgang R. (Firma: www.wolfgangrobel.de) (mikemcbike)


Bewertung
0 lesenswert
nicht 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.

von Harry L. (mysth)


Bewertung
-2 lesenswert
nicht 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.
von Horst (Gast)


Bewertung
0 lesenswert
nicht 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.

von Harry L. (mysth)


Bewertung
-2 lesenswert
nicht 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.

: Bearbeitet durch User
von Wolfgang R. (Firma: www.wolfgangrobel.de) (mikemcbike)


Bewertung
0 lesenswert
nicht 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

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.