Hallo Zusammen,
Ich habe das mal gemacht. Und zwar geht das folgendermasen. Richte ein Portforwarding auf die Broadcastaddresse ein. z.b.
TCP Port 3030 -> 192.168.0.255
Dan nehme dieses PHP Script und lade es auf einen Webserver mit PHP.
<h4>This service allows you to turn on your Computer over the Internet.
<p>Prequisite</p>
<ul type="disc">
<li>NIC with WOL</li>
<li>A Port open on your Firewall/Router which is forwarded to the Broadcastaddress</li>
<li>The MAC Address from the target machine</li>
</ul></h4>
<?
if (isset($showsource)) {
echo('</center><font size="3">');
show_source("./wakeonlan.php");
echo('<center></font>');
}
elseif (isset($submit)) {
for ($i = 0; $i<6; $i++) {
$magicpacketarray[$i] = "\xff";
}
$macaddr_strarray = explode(":", $macaddr);
if (count($macaddr_strarray) != 6 ) {
die("Ungültige Macadresse. Im Format 00:11:22:33:44:55 angeben !\n");
}
for ($i = 1; $i<=16; $i++) {
for ($j = 0; $j<6; $j++) {
$magicpacketarray[$i*6+$j] = chr(hexdec($macaddr_strarray[$j]));
}
}
$magicpacketstr = implode("", $magicpacketarray);
$fp = @fsockopen("udp://$ip", $port)
or die("Hostname/IP oder Port ungültig !");
if (!fwrite($fp,$magicpacketstr, count($magicpacketarray))) {
echo("Konnte Magic-Packet nicht senden :(");
}
else {
echo("Magic-Packet mit der Mac-Adresse $macaddr wurde an $ip an Port $port gesendet...\n");
}
fclose($fp);
}
else {
?>
<form name="form" method="post" action="/">
Hostname/IP:<br>
<input type="text" name="ip">
<br>
Port:<br>
<input type="text" name="port">
<br>
Mac-Adresse:<br>
<input type="text" name="macaddr">
<br>
<input type="submit" name="submit" value="wakeup">
</form>
Dann musst du nur noch die MAC Addressen deiner Server kennen, welche natürlich auf WOL eingestellt sind.
mfg
U-Fighter