Liebe Forengemeinde, ansich keine schwere Aufgabe, aber es will einfach nicht funktionieren. In der beigefügten Grafik seht Ihr meinen Netzwerkaufbau. Es befinden sich darin unter anderem das Nas und der PC1. Ich möchte gerne vom Nas aus den PC1 hochfahren. Entsprechend der zahlreich vorhandenen Anleitungen habe ich im Nas eine neue Aufgabe angelegt und den Befehl "/usr/syno/sbin/synonet --wake 4C:A0:CC:C5:BA:4E eth0" eingetragen. Der Besitzer ist root. Wenn ich nun das Skript starte, so erhalte ich zur Kontrolle die E-Mail aus der ersichtich ist, daß der Befehl fehlerfrei ausgeführt wurde. PC1 startet aber nicht. Folgendes habe ich bereits geprüft: 1.) Ich habe den PC1 vom Handy aus per WoL gestartet und es funktioniert. Daraus schließe ich, daß sowohl der Router als auch der Switch das Magic Packet weiterleiten und daß PC1 korrekt konfiguriert ist. 2.) Über SSH habe ich auf dem Nas den Befehl "ip addr" ausgeführt und somit festgestellt, daß eth0 der korrekte (und auch einzig hardwaremäßig vorhandene) Anschluß ist. 3.) Ich habe mit dem Wake on Lan Monitor (bei laufendem PC1) von Depicus geprüft, ob ein Paket ankommt. Ergebnis: Vom Handy ja, vom Nas nein. 4.) Ich habe die Prüfung wie in punkt 3.) auch mit einem Notebook durchgeführt (in der Skizze als PC2 eingezeichnet) mit dem gleichen Ergebnis wie in 3.) 5.) Ich habe die Mac Adresse so oft geprüft, daß ich sicher bin, keinen Tippfehler zu haben. Es scheint also, daß das Magic Packet irgendwie nicht aus dem Nas raus will. Hat dazu jemand eine Idee? Ich bin für alle Anregungen dankbar! Gruß, Nino.
Beitrag #6056497 wurde vom Autor gelöscht.
Ich nehme an, nahe liegendere Foren zur Synology hast du schon konsultiert? Denn das riecht ja nach einem Problem dieses Gerätes. NB: Zur MAC-Adresse fällt mir auf, dass der OUI 4CA0CC in der offiziellen Liste nicht zu finden ist.
Nino K.L. schrieb: > Befehl "/usr/syno/sbin/synonet --wake > 4C:A0:CC:C5:BA:4E eth0" > 2.) Über SSH habe ich auf dem Nas den Befehl "ip addr" ausgeführt und > somit festgestellt, daß eth0 der korrekte (und auch einzig hardwaremäßig > vorhandene) Anschluß ist. Log dich per SSH ein und starte den synonet-Befehl von Hand. Vielleicht gibt es eine Fehlermeldung, weitere Hinweise im SSH-Fenster oder Hinweise in den Logdateien. > 3.) Ich habe mit dem Wake on Lan Monitor (bei laufendem PC1) von Depicus > geprüft, ob ein Paket ankommt. Ergebnis: Vom Handy ja, vom Nas nein. Dann wäre der nächste Schritt zu kontrollieren ob ein Paket raus geht und wie weit es kommt. Synology DSM soll tcpdump enthalten. Wenn das so ist, dann schmeiß tcpdump an und schau dir an ob du ein ausgehendes WoL-Paket siehst. So etwas wie
1 | tcpdump -i eth0 -e -x '(ether proto 0x0842) or (udp port 0) or (udp port 5) or (udp port 7) |
sollte helfen (aus dem Kopf, nicht getestet). Wahrscheinlich könnte man auch auf die magischen sechs 0xFF Bytes filtern, aber das bekomme ich für tcpdump nicht aus dem Kopf zusammen. Auch mal ohne die Filter am Ende ausprobieren. Nicht dass ich die falschen Filter angegeben habe. Wenn du sicher bist, dass was aus dem NAS raus geht, dann wäre der nächste Schritt sich anzusehen was auf den Leitungen passiert. Hast du entsprechende Gerätschaften um dir das anzusehen? Z.B. ein Managed Switch mit Port Mirroring und daran ein Rechner mit Wireshark?
So rasche Antworten, wow, danke! > Ich nehme an, nahe liegendere Foren zur Synology hast du schon > konsultiert? Denn das riecht ja nach einem Problem dieses Gerätes. Hab' ich noch nicht gemacht. Ich hab' hier begonnen, weil ich dieses Forum sehr gerne lese und weil ich wußte, daß hier Profis unterwegs sind. Wäre aber auf jeden Fall noch eine Option, danke! > NB: Zur MAC-Adresse fällt mir auf, dass der OUI 4CA0CC in der > offiziellen Liste nicht zu finden ist. Ich wußte gar nicht, daß es da eine offizielle Liste gibt. Jedenfalls ist die genannte Mac Adresse eine Phantasieadresse. Ich leide auch unter Verfolgungswahn und wollte daher die originale Adresse nicht ins Internet schreiben. Danke für's checken. > Log dich per SSH ein und starte den synonet-Befehl von Hand. Vielleicht > gibt es eine Fehlermeldung, weitere Hinweise im SSH-Fenster oder > Hinweise in den Logdateien. Hab' ich gemacht, bringt leider keinen Erfolg. Der Befehl läuft problemlos ohne Fehlermeldung durch, PC1 startet trotzdem nicht. Mit Logdateien hab' ich leider keine Erfahrung. In welcher Datei müßte ich denn da nachsehen...? > Dann wäre der nächste Schritt zu kontrollieren ob ein Paket raus geht > und wie weit es kommt. Super Idee. Ich weiß nur leider nicht, wie man das macht. Ich bin ja in der Lage zu recherchieren, aber vielleicht bekomme ich Euch die richtigen Stichwörter für die Suchmaschine? Die Sache mit tcpdump muß ich mir ansehen (wird ein bißchen dauern) und die genannten Gerätschaften habe ich leider nicht. Aber zumindest weiß ich schonmal wie's weitergeht. Ich poste dann, sobald es Neues gibt. Vorerst schonmal vielen Dank für die Hilfe! Nino.
Nino K.L. schrieb: > Es scheint also, daß das Magic Packet irgendwie nicht aus dem Nas raus > will. Hat dazu jemand eine Idee? Ich bin für alle Anregungen dankbar! Ich halte es für wahrscheinlicher, das es nicht durch den Router (bzw. den eingebauten Switch) durch will. Ursache ist sehr viel wahrscheinlicher ein Fehlkonfiguration des Routers. Z.B.: "client isolation" aktiv. Es gibt aber noch etliche andere Möglichkeiten, etwas falsch zu konfigurieren. Aber auch eine Fehlkonfiguration des NAS wäre nicht ganz ausgeschlossen. Das könnte man aber immerhin relativ leicht überprüfen, jedenfalls wenn man über ein Notebook mit zwei NICs (eine davon ggf. per USB angeschlossen) zwischen NAS und Router hängt. Dann kann man dieses Notebook als Layer2-Bridge konfigurieren und darauf mitlauschen. Dann kann man sehen, ob überhaupt ein MagicPacket vom NAS emittiert wird und auch, ob dieses korrekt aufgebaut ist. Wenn beides der Fall ist, bleibt nur der Router als Ursache übrig.
Das war ein super Tip mit der Netzwerkbrücke. Danke! Ich hab's tatsächlich geschafft, auf meinem Notebook die Brücke vom LAN- zum WLAN-Adapter herzustellen und mit Wireshark mitzulesen. Das Nas ist mit dem Notebook per Kabel verbunden. Das Notebook mit dem Router per Wlan. In meinem Mitschnitt befindet sich definitiv kein Magic Packet. (Klarerweise habe ich keinen Mitschnittfilter aktiviert. Das Ausführen des synonet Befehls habe ich mir vom Nas per Email bestätigen lassen.) Der Vollständigkeit halber: Ich habe vorher noch versucht, das Nas direkt an den (unmanaged) Switch zu hängen, um den Router als Fehlerquelle auszuschließen. Ergebnis: Es ist kein Magic Packet an PC1 angekommen. Ich bin nun praktsch sicher, daß das NAS kein Magic Pacekt sendet. "praktisch" deswegen, weil ich kein Vollprofi bin und auch Fehler mache. Falls jemand eine Idee hat, was ich am NAS falsch eingestellt haben könnte, dann bitte ich um ein Posting. Danke! lg, Nino.
Nino K.L. schrieb: > In meinem Mitschnitt befindet sich definitiv kein Magic Packet. Poste mal den Mitschnitt.
Hallo, gab es denn eine Lösung des Problems? Ich habe nämlich auch noch nicht geschafft, einen PC von der DS aus zu starten und wäre für Aufklärung dankbar.
Möglichereweise hängt es mit den Rechten des Skriptes auf der Syno zusammen, vlt. darf das keinen Socket erstellen, der broadcastet ... Probier mal ein PHP-Skript, welches über den Apache auf der Syno ausgeführt wird. Ich benutze sowas, eingebettet in eine lokale Webseite, um div. Rechenr zu starten. Klappt immer. Als IP-Adresse genügt die des Netzes (bei /24), das letzte Oktett wird sowieso auf Broadcast 255 gesetzt ... weil ein schlafender PC ja keine IP hat. Man kann auch generell die 255.255.255.255 nehmen. Die HEX-Bytes der MAC-Adresse sind mit ":" zu trennen.
1 | function wakeonlan($addr,$mac) |
2 | { |
3 | $ip_parts =explode('.',$addr); |
4 | $brd_addr =$ip_parts[0].'.'.$ip_parts[1].'.'.$ip_parts[2].'.255'; |
5 | $addr_byte = explode(':', $mac); |
6 | $hw_addr = ''; |
7 | for ($a=0; $a < 6; $a++) $hw_addr .= chr(hexdec($addr_byte[$a])); |
8 | $msg = chr(255).chr(255).chr(255).chr(255).chr(255).chr(255); |
9 | for ($a = 1; $a <= 16; $a++) {$msg .= $hw_addr;} |
10 | $s = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP); |
11 | $opt_ret = socket_set_option($s, 1, 6, TRUE); |
12 | for ($a=0; $a<16; $a++){$e = socket_sendto($s, $msg, strlen($msg), 0, $brd_addr, 2050);} |
13 | socket_close($s); |
14 | } |
:
Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.