Hilfe WOL kommt nicht mehr beim Client an

Hallo zusammen,
ich bin ein bisschen ratlos. Seit einiger Zeit kann ich die Clients nicht mehr per WOL wecken. Seit wann kann ich leider auch nicht sagen. Es ist mir nur aufgefallen, dass am Wochenende viele Clients im Standby waren und nicht abends herunter gefahren sind. Dazu wecke ich sie um 17:56, damit sie um 18:00 herunterfahren.

Zunächst dachte ich, der Server sendet keine WOL-Pakete aus. Das habe ich mit tshark getestet:
grafik
Wenn ich WireShark trauen darf, ging das Paket ins Netzwerk.

Jetzt habe ich ein WOL-Paket von meinem unifi-Server (10.16.1.3) abgeschickt und geschaut, was beim Client ankommt:


In Zeile 1 sieht man, dass das WOL-Paket beim Client angekommen ist.
Dann habe ich vom server aus mit linbo-remote -i lz-r99 -w 1 nochmal ein WOL-Paket abgeschickt. Das Ergebnis beim Client sind die Zeilen 2 bis 6?
Danach habe ich mit wakeonlan 82:E6:79:17:1D:04 nochmal ein WOL-Paket abgeschickt. Da kam beim Client nichts an?!?

Server und Client sind am gleichen Switchport des Cisco SG300-28 angeschlossen. Die Server sind im VLAN 16 und der Client ist im VLAN 17.

Ich bin ein Bisschen Ratlos. Vom lmn-Server geht wohl das WOL-Paket raus. Der Switch leitet die Pakete weiter und beim Client kommen nur die vom unifi-Server an?!?

Hat mir jemand einen Tip?
Vielen Dank schon mal fürs Mitdenken.
Gruß
Mathias

Hallo Mathias,

ist es das?

LG
Holger

Hallo Holger,
ich hatte ja kurz Hoffnung. Beim Client im 16-er Netz kommt das an:
grafik
Ist der Rechner aber im VLAN 17 erhalte ich das:
grafik
Leider WOL-Paket.
Die realen Rechner im Lehrerarbeitsraum starten auch nicht…

Gruß
Mathias

Hallo zusammen,
in der Zwischenzeit habe ich einen kleinen SG300 10-Portswitch ausgepackt und nur die wichtigsten Dinge konfiguriert:

  • Layer-3 Modus aktiviert
  • Die VLANs 16 (Servernetz), 17 (Lehrernetz), 18 (Schülernetz) und 19 (Netzwerkgeräte) angelegt.
  • VLANs mit den Ports verbunden.
  • Jeder VLAN eine IP vergeben (10.17.255.254) usw…
  • Die Default-Route festgelegt (10.16.1.254 die OpnSense).
  • DHCP-Relaying eingerichtet.
  • ALCs und ACEs erstellt (Jeder darf alles…) und mit den VLANs verbunden.Und
  • Und UDP-Relaying für WOL eingerichtet.

Eigentlich kein Hexenwerk.
Ergebnis: Die Computer in den Computerräumen lassen sich von Hand starten. Alles (bis aufs Internet; hab ich weg gelassen) läuft. Die Rechner bekommen per DHCP ihre IP und man kann sich anmelden.
Aber WOL klappt nicht :frowning:

Naja, damit ist aber gezeigt, dass es wahrscheinlich nicht an einer Einstellung des Layer-3-Switches liegt.

Als Workaround kann ich natürlich das cron-gesteuerte Starten der Clients vom unifi-Server machen. Aber das ist halt nur ein Workaround :frowning:

Falls es jemanden interessiert, habe ich hier die Konfiguration des SG300-10.
cisco214_20260216.zip (6,7 KB)
.

Hatte jemand in letzter Zeit schon ähnliche Probleme? Für einen Tip wäre ich echt dankbar :slight_smile:
Viele Grüße
Mathias

Hi,

vielleicht hat es die gleiche Ursache: Wir hatten den Effekt, dass mit neuerem Kernel im Linbo wir eine Treiber-Einstellung zum Deaktivieren von energieeffizientem Ethernet als Kernelparameter setzen mussten: igb.EEE=0

siehe auch Wake-On-LAN mit Linbo 4.3.29 auf Dell Optiplex 3080 Rechnern

VG
Buster

Hallo Buster,
vielen Dank für deine Idee. Die werde ich morgen mal ausprobieren.
Allerdings befürchte ich, dass es daran nicht liegt. Wenn ein WOL Paket kommt, starten die Clients auch. Das Problem ist, dass das WOL-Paket gar nicht beim Client ankommt.
Irgendwie habe ich da den L3-Switch im Verdacht.
Aber schicke ich das WOL-Paket von meinem unifi-Server (10.16.1.3) ab, kommt es bei den Clients an. Der Weg von Proxmox über die Switche zum Client scheint es ncht zu sein.
Andererseits habe ich mit tshark (WireShark) gesehen, dass das WOL-Paket zumindes die Netzwerkkarte des Servers verlassen hat.
Das WOL-Paket müsste also beim Client ankommen. Tut es aber nicht?!?
Mir gehen die Ideen aus :face_with_diagonal_mouth:
VG
Mathias

Hallo zusammen,

Mit wakeonlan -i 10.17.122.3 08:60:6E:72:EE:8B erreicht das WOL-Paket den Client. Daei ist die IP-Adresse die IP des Clients.

Aus irgendeinem Grund erreicht das WOL-Paket nur dann den Client, wenn man seine IP angiebt?!? Liegt’s doch am L3-Switch?

Gibt es eine Möglichkeit, zu checken, ob das WOL-Paket am L3-Switch ankommt und wohin es dann geht?

Gruß
Mathias

Hallo Mathias,

für mich klingt das noch immer nach dem Problem zu dem ich verlinkt hatte.
Hast du mal -u versucht?

LG
Holger

Hallo Holger,

Das habe ich tatsächlich probiert. Der Effekt war, dass das WOL-Paket nach 10.17.255.255 gebroadcastet wurde. Leider ist beim Client trotzdem nichts angekommen?!?

Gruß
Mathias

Hallo Mathias,

wo sniffst Du mit Wireshark? Direkt auf dem Server, der das Magic-Packet verschickt?

Um zu sehen, ob das Paket wirklich den Switch erreicht, müsstest Du auf dem Switch ein Port-Mirroring einrichten und mit einem separaten PC den gespiegelten Port sniffen.

VG aus Hamm

Heiko

Mrgn,

Kannst auch erstmal per tcpdump auf dem Ausgangsinterface von Proxmox schauen, so filtern, dass Du auch die Zieladresse siehst. Vielleicht schickt er die WOL-Pakete direkt ans Gateway, da Zielnetz nicht in der Routingtabelle, hatte das im anderen Thread schon erwaehnt.
So in etwa:
tcpdump -i vmbr0 dst port 9 -e -n

Wenn die zweite MAC die vom Gateway (ip n, arp -a) ist, dann stimmt was mit der Broadcastadresse nicht.

Gruss Harry

Hallo zusammen,

Ja, das war natürlich mein Problem. Kommt das WOL-Paket wirklich am Switch an? Zumal beim Unifi alles funktionieret. Als Zieladresse ist da auch 255.255.255.255. Sieht also so aus, als läge das Problem dort…

Super Tipp, das probiere ich aus. Zumal der lmn-Server und der Unifi-Server beide vmbr0 nutzen. Mal sehn, wo sich die beiden unterscheiden.

Vielen Dank schon mal für eure Tips.

Gruß

Mathias

So, jetzt kommen wir der Sache etwas näher.

Führe ich wakeonlan 08:60:6E:72:EE:8B auf dem Server aus, passiert auf vmbr3 nichts. Mach ich das vom unifi-Server aus, erhalte ich das:

root@pm:~# tcpdump -i vmbr3 dst port 9 -e -n
tcpdump: verbose output suppressed, use -v[v]… for full protocol decode
listening on vmbr3, link-type EN10MB (Ethernet), snapshot length 262144 bytes
19:00:43.754115 00:87:31:3e:f6:ba > ff:ff:ff:ff:ff:ff, ethertype IPv4 (0x0800), length 144: 10.16.1.2.42284 > 10.19.255.255.9: UDP, length 102
19:00:43.754655 00:87:31:3e:f6:ba > ff:ff:ff:ff:ff:ff, ethertype 802.1Q (0x8100), length 148: vlan 20, p 7, ethertype IPv4 (0x0800), 10.16.1.2.42284 > 10.20.255.255.9: UDP, length 102

Die Routing-Tabelle auf dem Server sieht so aus:

root@server:~# routel
Dst Gateway Prefsrc Protocol Scope Dev Table
default 10.16.1.254 static ens18
10.16.0.0/16 10.16.1.1 kernel link ens18
10.16.0.0/16 10.16.1.253 static ens18
10.17.0.0/16 10.16.1.253 static ens18
10.18.0.0/16 10.16.1.253 static ens18
10.19.0.0/16 10.16.1.253 static ens18
10.20.0.0/16 10.16.1.253 static ens18
10.16.1.1 10.16.1.1 kernel host ens18 local
10.16.255.255 10.16.1.1 kernel link ens18 local
127.0.0.0/8 127.0.0.1 kernel host lo local
127.0.0.1 127.0.0.1 kernel host lo local
127.255.255.255 127.0.0.1 kernel link lo local

Das Paket mit der Ziel IP-Geht also zur OpnSense (10.16.1.254) und nicht zum Switch (10.16.1.253).

Die Routing-Tabelle des Unifi OS Servers sieht so aus:

root@uos-server:~# routel
Dst Gateway Prefsrc Protocol Scope Dev Table
default 10.16.1.253 10.16.1.2 dhcp ens18
10.16.0.0/16 10.16.1.2 dhcp link ens18
10.16.1.2 10.16.1.2 kernel host ens18 local
10.16.255.255 10.16.1.2 kernel link ens18 local
127.0.0.0/8 127.0.0.1 kernel host lo local
127.0.0.1 127.0.0.1 kernel host lo local
127.255.255.255 127.0.0.1 kernel link lo local

Da führt die Default-Route zum L3-Switch.

Ich ändere beim Server mal die Default-Route ab…

Gruß

Mathias

Schade nachdem ich in /etc/netplan/01-netcfg.yaml die Default-Route auf 10.16.1.253 gesetzt habe und den Server neu gestartet habe, ist leider kein WOL-Paket aus vmbr3 gesendet worden…

Habt ihr eine Idee woran das liegen könnte?

Gruß

Mathias

Hallo Matthias,

die Defaultroute stimmt ja: die muss am Server die Firewall sein.

Willst du ein Paket in ein in der Routing Tabelle vorhandenes Segment schicken, dann nimmt er das dort angegebene Gateway.

Die Defaultroute auf 10.16.1.253 zu setzten halte ich für sehr falsch.

Wie ist den die IP des “zu weckenden” Clients?

LG
Holger

Hallo Mathias,
einen Unterschied sehe ich, wenn ich den Befehl hier auf dem Server verwende und zwar sind das die Netzmasken:
Bei uns sind überall „/24er“ Netze eingetragen – bei Dir aber überall die großen „/16er“ Netze. Vielleicht ist das ein Hinweis?
Viele Grüße,
Michael

Hallo Michael,

.. gut beobachtet: ich hatte es übersehen.

Das ist natürlich falsch.

Da müßte überall 24 stehen.

@Mathias: poste doch mal deine subnets.cfg

LG
Holger

Hi,

noch ein Aspekt zum Nachdenken:

Wenn der Server 10.16.1.2 hat, dann ist die Route in Zeile 2 (meines Zitats) überflüssig, weil der Server das Paket immer direkt zustellt bzw. zustellen sollte, da das Ziel in seinem eigenen Netz liegt.

Warum sollte da überall /24 statt /16 stehen? Kennt ihr sein Netz im Detail? Wenn die Unterscheidung der Netze im 2. Oktett der IP statt im 3. Oktett vorgenommen wird, dann ist /16 durchaus korrekt. Ich gehe mit, dass /24 nicht zu haben ein Fehler wäre, wenn die Netze so aussehen würden:

10.0.16.0/24
10.0.17.0/24
10.0.18.0/24
10.0.19.0/24
10.0.20.0/24

VG
Buster

Hallo zusammen,

ja, ich habe 16-er Netze.

  • 10.16.0.0/16 ist das Netz, in dem nur Server, der unifi-Server, OpnSense und der L3_Switch stehen.
  • 10.17.0.0/16 ist das Netz des Lehrerarbeitsraums. Da sind nur Geräte für Lehrer drin.
  • 10.18.0.0/16 ist das Schülernetz. Da sind alle Geräte, mit denen die Schüler arbeiten.
  • 10.19.0.0/16 ist das Servicenetz. Da sind Drucker, APs und Switche.
  • 10.20.0.0/16 WLAN für Laptops.

Bis auf die Schülernetze kann man sich natürlich überlegen, ob 24-Netze nicht besser wären.
Naja, ich habe die IPs mit 10.16 bis 20.Raumnummer.Rechnernummer vergeben. So kann man schon an der IP ablesen, wo der Rechner steht und was es ist.

Ok, die schmeiß ich mal raus… Mal seh’n, was passiert…

Gruß
Mathias

… Ok, die Änderungen sind gemacht:

root@server:~# routel
Dst Gateway Prefsrc Protocol Scope Dev Table
default 10.16.1.254 static ens18
10.16.0.0/16 10.16.1.1 kernel link ens18
10.17.0.0/16 10.16.1.253 static ens18
10.18.0.0/16 10.16.1.253 static ens18
10.19.0.0/16 10.16.1.253 static ens18
10.20.0.0/16 10.16.1.253 static ens18
10.16.1.1 10.16.1.1 kernel host ens18 local
10.16.255.255 10.16.1.1 kernel link ens18 local
127.0.0.0/8 127.0.0.1 kernel host lo local
127.0.0.1 127.0.0.1 kernel host lo local
127.255.255.255 127.0.0.1 kernel link lo local

Leider geht aus vmbr3 kein WOL-Paket raus :frowning:

VG
Mathias