インターネット経由のWake on LAN

インターネット経由のWake on LAN

私たちの大学のローカル ネットワークには、ローカル IP を持つコンピューターが多数あり、トラフィックを送受信するゲートウェイまたはサーバーがあり、静的 IP を持っています。そのため、そのネットワークから離れていて、そのネットワーク内のコンピューターにアクセスしたい場合、そのネットワーク内のコンピューターの MAC アドレスとローカル IP、およびそのネットワークの静的ライブ IP がわかります。

私のシステムには Ubuntu が入っています。システムをローカルで起動することはできますが、次のことも知りたいです。

  • インターネット経由でそれをするにはどうすればいいですか?
  • そのネットワーク内のシステムに ping を実行するにはどうすればよいでしょうか?
  • このような状況でポート転送を行うにはどうすればよいですか? または、ルーターでポートを転送する必要がない方法はありますか?

私は試したこれしかし、それは機能しません!

答え1

Wake-On-LANを使用して送信されるマジックパケットはインターネット経由で送信されないこのパケットは、たとえばリモート ログインを通じて、LAN 内のコンピューターの 1 つから送信する必要があります。

大学のLANのルーターやゲートウェイはNATゲートウェイへの管理アクセス権(ポート転送を構成するなど)がない限り、または LAN 上のマシンの 1 つにログインできない限り、NAT の背後にあるマシンにアクセスすることはできません。

ネットワークが IPv6 を使用している場合は、NAT を回避できます。IPv6 の NAT は一般的に使用されていない (使用すべきではない) ためです。ただし、これでもマジック パケットの送信には役立ちません。

答え2

ゲートウェイに SSH 接続できる必要があります。そこから、ネットワーク カードがサポートしていれば、マシンの電源をオンにすることができます。

まず、ネットワークカードがwakeonlanをサポートしていることを確認します。ターゲットマシンから、

 sudo aptitude install ethtool
 sudo ethtool eth0

の出力ethtoolに のような行が含まれていればSupports Wake-on: g、問題ありません。次に、マシンを設定してこれを許可するようにします。

sudo nano /usr/bin/wakewol

作成したファイルに次の行を追加します。

#!/bin/bash
ethtool -s eth0 wol g

ファイルを保存して実行し、sudo chmod 755 wakewol実行可能にします。次に、

sudo nano /etc/network/interfaces

ファイルの末尾に次の行を追加します。

post-down /usr/bin/wakewol

これで、マシンは wakeonlan をサポートするはずです。ただし、最初にゲートウェイ サーバーにログインしないと、これを行う方法はありません。次のようになります。

rana@local $ ssh rana@gateway
rana@gateway $ wakeonlan 01:02:03:04:05:06

01:02:03:04:05:06電源をオンにしたいマシンの実際の MAC アドレスに変更するだけです。これはwakeonlan、ゲートウェイ サーバーにがすでにインストールされていることを前提としています。

ゲートウェイで実行されるwakeonlanコマンドを渡すことで、これをさらに簡素化できます。ssh

ssh rana@gateway wakeonlan 01:02:03:04:05:06

参考文献:

http://community.linuxmint.com/tutorial/view/1062

関連情報