Unser lokales College-Netzwerk hat viele Computer mit lokalen IPs und es gibt ein Gateway oder einen Server, der den Datenverkehr sendet und empfängt und eine statische IP hat. Wenn ich mich also nicht in diesem Netzwerk befinde und auf meine Computer in diesem Netzwerk zugreifen möchte, kenne ich ihre MAC-Adressen und ihre lokalen IPs in diesem Netzwerk sowie die statische Live-IP dieses Netzwerks.
Ich habe Ubuntu auf meinen Systemen. Ich kann die Systeme lokal einschalten, möchte aber auch wissen:
- Wie kann ich das über das Internet machen?
- Wie kann man ein System in diesem Netzwerk überhaupt anpingen?
- Wie funktioniert in dieser Situation die Portweiterleitung? Oder gibt es eine Methode, bei der Sie die Ports in Routern nicht weiterleiten müssen?
Ich habe es versuchtDasaber es funktioniert nicht!
Antwort1
Das mit Wake-On-LAN gesendete Magic Packet istnicht über das Internet übertragen. Sie müssen dieses Paket von einem der Computer im LAN senden, z. B. über einen Remote-Login.
Der Router oder das Gateway im LAN Ihrer Universität scheintNATSofern Sie nicht über Administratorzugriff auf das Gateway verfügen – um beispielsweise die Portweiterleitung zu konfigurieren – oder sich bei einem der Rechner im LAN anmelden können, besteht keine Möglichkeit, auf einen Rechner hinter dem NAT zuzugreifen.
Sie könnten NAT umgehen, wenn das Netzwerk IPv6 verwendet, da NAT in IPv6 nicht häufig verwendet wird (und nicht verwendet werden sollte). Dies hilft Ihnen jedoch immer noch nicht beim Senden des Magic Packet.
Antwort2
Sie müssen in der Lage sein, per SSH auf das Gateway zuzugreifen. Von dort aus können Sie Ihre Maschinen einschalten, sofern Ihre Netzwerkkarten dies unterstützen.
Stellen Sie zunächst sicher, dass Ihre Netzwerkkarte WakeOnLan unterstützt. Führen Sie auf dem Zielcomputer Folgendes aus:
sudo aptitude install ethtool
sudo ethtool eth0
Wenn die Ausgabe von ethtool
eine Zeile wie enthält Supports Wake-on: g
, sollte alles in Ordnung sein. Richten Sie nun die Maschine so ein, dass dies möglich ist:
sudo nano /usr/bin/wakewol
Fügen Sie der gerade erstellten Datei diese Zeilen hinzu:
#!/bin/bash
ethtool -s eth0 wol g
Speichern Sie die Datei und führen Sie sie aus, sudo chmod 755 wakewol
um sie ausführbar zu machen. Führen Sie nun
sudo nano /etc/network/interfaces
und fügen Sie diese Zeile am Ende der Datei hinzu:
post-down /usr/bin/wakewol
Ihr Computer sollte jetzt WakeOnLan unterstützen. Dies ist jedoch nur möglich, wenn Sie sich zuerst beim Gateway-Server anmelden. Etwa so:
rana@local $ ssh rana@gateway
rana@gateway $ wakeonlan 01:02:03:04:05:06
Ändern Sie einfach 01:02:03:04:05:06
die Adresse in die tatsächliche MAC-Adresse des Computers, den Sie einschalten möchten. Dies setzt voraus, dass dies wakeonlan
bereits auf dem Gateway-Server installiert ist.
Dies kann weiter vereinfacht werden, indem der wakeonlan
Befehl zur ssh
Ausführung auf dem Gateway übergeben wird:
ssh rana@gateway wakeonlan 01:02:03:04:05:06