12

Web言語、できればphpを使用したwake on lanスクリプトはありますか? また、サーバーで有効にする必要があるものなど、機能させる方法に関するドキュメントがあるものもあります

4

5 に答える 5

13
function wol($broadcast, $mac)
{
    $hwaddr = pack('H*', preg_replace('/[^0-9a-fA-F]/', '', $mac));

    // Create Magic Packet
    $packet = sprintf(
        '%s%s',
        str_repeat(chr(255), 6),
        str_repeat($hwaddr, 16)
    );

    $sock = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);

    if ($sock !== false) {
        $options = socket_set_option($sock, SOL_SOCKET, SO_BROADCAST, true);

        if ($options !== false) {
            socket_sendto($sock, $packet, strlen($packet), 0, $broadcast, 7);
            socket_close($sock);
        }
    }
}

動作するはずです-ブロードキャストIPアドレスとMACアドレスで呼び出します

于 2011-05-19T08:20:15.117 に答える
8

これは古い質問であることは知っていますが、これはまだ最初のGoogleの結果であるため、少し調査した結果、次のようになりました。

前提条件:

  • 同じネットワーク上の Linux ボックス
  • wakeonlanシステムのパッケージ マネージャーからパッケージをインストールします
        (つまりsudo apt-get install wakeonlan) 。

これで、スクリプトは次のように簡単になります。

<?php
    # replace with your target MAC address
    $mac = 'aa:bb:cc:11:22:33';

    exec("wakeonlan $mac");
?>

 

それが誰かを助けることを願っています。

于 2013-11-19T07:06:55.790 に答える