Seite 1 von 2

Wechselnde MAC-Adressen (CentOS 7.4)

Verfasst: 4. Jan 2018, 13:12
von gehrke
Moin *

Ich beobachte seit einiger Zeit sporadische Probleme mit DHCP bei statischer Adress-Zuweisung. Ursächlich scheint zu sein, dass ein CentOS-Client ab und zu mit wechselnden MAC-Adressen aufläuft.

Was steckt dahinter?
TNX

Glückauf, gehrke

EDIT:
Detailliertere Schilderung des Sachverhaltes: https://linux-club.de/forum/viewtopic.p ... 84#p783484

Re: Wechselnde MAC-Adressen (CentOS 7.4)

Verfasst: 4. Jan 2018, 13:43
von gehrke
Nachtrag: Es handelt sich um ein LAN-Interface (nicht WLAN).

Re: Wechselnde MAC-Adressen (CentOS 7.4)

Verfasst: 4. Jan 2018, 14:00
von marce
wechselnde MAC kann ja eigentlich nicht "einfach so" sein - entweder Du spielst daran herum oder z.B. es handelt sich um eine VM?

Re: Wechselnde MAC-Adressen (CentOS 7.4)

Verfasst: 4. Jan 2018, 14:06
von gehrke
Beides Nein.

Re: Wechselnde MAC-Adressen (CentOS 7.4)

Verfasst: 4. Jan 2018, 15:42
von Gräfin Klara
gehrke hat geschrieben:
4. Jan 2018, 13:12
Moin *

Ich beobachte seit einiger Zeit sporadische Probleme mit DHCP bei statischer Adress-Zuweisung. Ursächlich scheint zu sein, dass ein CentOS-Client ab und zu mit wechselnden MAC-Adressen aufläuft.

Was steckt dahinter?
TNX

Glückauf, gehrke
Bei RedHat gibt es ein file mit dem Namen /etc/sysconfig/network-scripts/ifcfg-eth0
(eth0 ist entsprechend)
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
Dort sollte die Variable HWADDR definiert sein.
Beispiel für GigaByte:
HWADDR=1C:6F:65:10:C1:2D
Damit wird die mac statisch gesetzt

Ob das bei CentOS auch so ist, mußt du selbst prüfen

Gruß
Gräfin Klara

Re: Wechselnde MAC-Adressen (CentOS 7.4)

Verfasst: 4. Jan 2018, 16:04
von /dev/null
Ich frage nur mal ganz leise: IPv4 oder IPv6

@Klara:
> Damit wird die mac statisch gesetzt
Wirklich gesetzt oder "nur" die "eingebrannte" mac dauerhaft nach Willen des Users geändert?
(Ich benutze openSUSE, und habe diese Datei auch. Und weil ich die "mitgelieferte" mac nutze, steht da keine drin - und will es auch nicht ändern.)

Und noch ein edit:
Der Networkmanager bietet im Zusammenhang mit der frei wählbaren MAC einen Button mit der Aufschrift: "Zufällig". Könnte es vlt. sein ... .


MfG Peter

Re: Wechselnde MAC-Adressen (CentOS 7.4)

Verfasst: 4. Jan 2018, 16:11
von gehrke
/dev/null hat geschrieben:
4. Jan 2018, 16:04
Ich frage nur mal ganz leise: IPv4 oder IPv6
Mein LAN verwendet IPv4. Aber es geht ja um die MAC-Adresse, auf deren Basis der DHCP-Server eine IPv4 zuordnet.

Re: Wechselnde MAC-Adressen (CentOS 7.4)

Verfasst: 4. Jan 2018, 16:15
von marce
Gräfin Klara hat geschrieben:
4. Jan 2018, 15:42
Bei RedHat gibt es ein file mit dem Namen /etc/sysconfig/network-scripts/ifcfg-eth0
(eth0 ist entsprechend)
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
Dort sollte die Variable HWADDR definiert sein.
Beispiel für GigaByte:
HWADDR=1C:6F:65:10:C1:2D
Damit wird die mac statisch gesetzt
sorry, aber gesetzt wird da gar nichts:
https://access.redhat.com/documentation ... interfaces

das dient nur dazu, daß die eth0 auch immer der richtigen Karte zugewiesen wird.

Re: Wechselnde MAC-Adressen (CentOS 7.4)

Verfasst: 4. Jan 2018, 16:19
von Sauerland
Gesetzt wird das in:
/etc/udev/rules.d/

Bei mir in 70-persistent-net.rules:

Code: Alles auswählen

cat /etc/udev/rules.d/70-persistent-net.rules 
# This file was automatically generated by the /usr/lib/udev/write_net_rules
# program,run by the persistent-net-generator.rules rules file.
#
# You can modify it,as long as you keep each rule on a single
# line,and change only the value of the NAME= key.
# PCI device 0x10ec:0x8168 (r8169)
# PCI device 0x14e4:0x43b1 (wl)
# PCI device 0x14e4:0x43b1 (wl)
# PCI device 0x10ec:0x8168 (r8169)
# PCI device 0x14e4:0x43b1 (wl)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="70:8b:cd:2e:5b:2b", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="wlan*", NAME="wlan0"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="10:7b:44:4a:5a:16", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
Ich hatte da mit einem alten Laptop und Wlan auch schon mal Probleme, da wurde bei jedem Start des Laptops das wlan um eines hochgezählt: wlan0, wlan1, wlan2 usw.

Re: Wechselnde MAC-Adressen (CentOS 7.4)

Verfasst: 4. Jan 2018, 16:32
von gehrke
Gräfin Klara hat geschrieben:
4. Jan 2018, 15:42
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
Dort sollte die Variable HWADDR definiert sein.
Ich habe auf 5 CentOS-Systemen nachgeschaut. Nur auf einem davon ist diese Variable gesetzt, aber dieses System ist auch speziell, weil es 3 NICs hat. Das angesprochene Verhalten beobachte ich lediglich auf einem einzigen Notebook seit ca. einem halben Jahr.

Re: Wechselnde MAC-Adressen (CentOS 7.4)

Verfasst: 4. Jan 2018, 16:32
von Gräfin Klara
/dev/null hat geschrieben:
4. Jan 2018, 16:04
@Klara:
> Damit wird die mac statisch gesetzt
Wirklich gesetzt oder "nur" die "eingebrannte" mac dauerhaft nach Willen des Users geändert?
(Ich benutze openSUSE, und habe diese Datei auch. Und weil ich die "mitgelieferte" mac nutze, steht da keine drin - und will es auch nicht ändern.)

MfG Peter
Die Hardwareadresse einer eth wird vom kernel über den driver nur einmal gelesen und dann im kernel eingetragen.
Nur dieser Kerneleintrag wird im ethernet_traffic verwendet und dieser Eintrag kann mit HWADDR oder anderen Programmen über die NETLINK Schnittstelle im Kernel geändert werden.
Eine permanente Änderung der mac im eeprom oder controller auf der Hardware ist natürlich auch möglich, ergibt aber unter Linux keinen Sinn, weil sowieso nur der Kernel die mac liefert.
>> Und weil ich die "mitgelieferte" mac nutze, steht da keine drin - und will es auch nicht ändern.)
Wer auf Sicherheit wert legt, sollte die mac in Richtung router wenigstens bei jedem boot ändern. (random)

Gruß
Gräfin Klara

Re: Wechselnde MAC-Adressen (CentOS 7.4)

Verfasst: 4. Jan 2018, 16:35
von marce
Gräfin Klara hat geschrieben:
4. Jan 2018, 16:32
Wer auf Sicherheit wert legt, sollte die mac in Richtung router wenigstens bei jedem boot ändern. (random)
Sorry, aber: Bullshit.

Re: Wechselnde MAC-Adressen (CentOS 7.4)

Verfasst: 4. Jan 2018, 16:40
von gehrke
Sauerland hat geschrieben:
4. Jan 2018, 16:19
Gesetzt wird das in:
/etc/udev/rules.d/
Das Verzeichnis ist leer, bis auf ein Sample, worin aber alles auskommentiert ist.

BTW: Bei WLAN habe ich schon mal gehört, dass es zum Schutz der Privatsphäre (Tracking) ein Randomizing der MAC-Adressen gibt. Aber hier geht es um einen LAN-Port.

Re: Wechselnde MAC-Adressen (CentOS 7.4)

Verfasst: 4. Jan 2018, 16:51
von gehrke
/dev/null hat geschrieben:
4. Jan 2018, 16:04
Und noch ein edit:
Der Networkmanager bietet im Zusammenhang mit der frei wählbaren MAC einen Button mit der Aufschrift: "Zufällig". Könnte es vlt. sein ... .
Edit erst jetzt gesehen:
Eine solche Einstellung sehe ich nicht beim LAN.

Lediglich beim WLAN ist unter

Code: Alles auswählen

Duplizierte Adresse: permanent
gesetzt.

Re: Wechselnde MAC-Adressen (CentOS 7.4)

Verfasst: 4. Jan 2018, 16:56
von gehrke
marce hat geschrieben:
4. Jan 2018, 16:35
Gräfin Klara hat geschrieben:
4. Jan 2018, 16:32
Wer auf Sicherheit wert legt, sollte die mac in Richtung router wenigstens bei jedem boot ändern. (random)
Sorry, aber: Bullshit.
Wie schon geschrieben macht dieses Feature IMHO bei WLAN Sinn. Mittlerweile wird sogar versucht, Menschen aufgrund der Karten-Signaturen im öffentlichen Bereich zu identifizieren und global zu tracken. Ist aber mehr Schutz der Privatsphäre und weniger Security.

Aber wie gesagt: Hier geht es um das gute alte kabelgebundene Netz.

Re: Wechselnde MAC-Adressen (CentOS 7.4)

Verfasst: 4. Jan 2018, 17:03
von josef-wien
Sauerland hat geschrieben:
4. Jan 2018, 16:19
Gesetzt wird das in:
/etc/udev/rules.d/
Bei mir in 70-persistent-net.rules
Das einzige, was mit den udev-Regeln gesetzt wird, ist der Name, der für die Karte mit der angegebenen MAC-Adresse vom Kernel verwendet wird.
_______

Hast Du unter /etc/systemd/network/ etwas definiert (siehe https://www.freedesktop.org/software/sy ... .link.html)? (Für die Beantwortung von Fragen dazu bin ich als systemd-freie Zone nicht zuständig.)

Liefert

Code: Alles auswählen

grep . /sys/class/net/*/address
beim Auftreten des Problems einen anderen Wert als sonst?

Re: Wechselnde MAC-Adressen (CentOS 7.4)

Verfasst: 4. Jan 2018, 17:27
von Gräfin Klara
gehrke hat geschrieben:
4. Jan 2018, 16:32
Gräfin Klara hat geschrieben:
4. Jan 2018, 15:42
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
Dort sollte die Variable HWADDR definiert sein.
Ich habe auf 5 CentOS-Systemen nachgeschaut. Nur auf einem davon ist diese Variable gesetzt, aber dieses System ist auch speziell, weil es 3 NICs hat. Das angesprochene Verhalten beobachte ich lediglich auf einem einzigen Notebook seit ca. einem halben Jahr.
Dann setze auf diesem Notebook die HWADDR

Re: Wechselnde MAC-Adressen (CentOS 7.4)

Verfasst: 4. Jan 2018, 17:29
von gehrke
josef-wien hat geschrieben:
4. Jan 2018, 17:03
Hast Du unter /etc/systemd/network/ etwas definiert (siehe https://www.freedesktop.org/software/sy ... .link.html)?
Nein.
josef-wien hat geschrieben:
4. Jan 2018, 17:03
Liefert

Code: Alles auswählen

grep . /sys/class/net/*/address
beim Auftreten des Problems einen anderen Wert als sonst?
Kann ich jetzt nicht beantworten, derzeit steht dort die aktuelle Adresse. Beim nächsten Auftreten (in vielleicht 3 Wochen) kann ich nachsehen...

Re: Wechselnde MAC-Adressen (CentOS 7.4)

Verfasst: 4. Jan 2018, 17:47
von gehrke
Gräfin Klara hat geschrieben:
4. Jan 2018, 17:27
Dann setze auf diesem Notebook die HWADDR
Bin unentschlossen. Sollte funktionieren, aber ich würde auch gerne wissen, woran das liegt.
TNX

Re: Wechselnde MAC-Adressen (CentOS 7.4)

Verfasst: 4. Jan 2018, 17:51
von gehrke
Habe zwecks besserem Debugging mal ein Logging hierfür angelegt:

Code: Alles auswählen

[root@j3 .config]# cat /etc/cron.hourly/log-mac.sh 
#!/bin/sh
# collect mac adress
now=`date +%Y.%m.%d:%H:%M` && mac_enp2s0=`ifconfig enp2s0 | grep ether | awk '{ print $2 }'` && mac_wlan=`ifconfig wlp0s29f7u3 | grep ether | awk '{ print $2 }'` && echo "$now $mac_enp2s0 $mac_wlan" >> /var/log/mac.log
Vielleicht kann man mit diesen Details mehr erkennen und genauer in den Logs forschen.