これは興味深いですね...可能な解決策は、Windowsサービスを作成し、それをサーバーまたは稼働していたコンピューターにインストールすることです。このサービスは基本的に、ネットワーク内のすべての tcp トラフィックをキャプチャするネットワーク スニファーです。以前に手動で、またはより良い方法で入力する必要があるipsとMACアドレス(IPからMACを取得するため)のテーブルがあります... ARPテーブルから(ARPテーブルからIP / MACを取得するプログラムを実行しましたが、問題があります...したがって、LANに接続された各マシンはMAC / IPを取得します)、また、このサービスは各IPに対して最後の日付のpingを実行します.
次に...どのように機能するか...サービスはすべてのTCPパケットをキャプチャし、個別のIPのリストを作成し、1〜2秒ごとにすべての個別のIPを取得します(これにより、サービスが多くのシステムリソースを消費していないことが保証されます)、および各個別の ip チェックで最後の ping を実行します。最後の ping が最後の 5 分または 10 分間に正常に実行された場合は何も実行されません (マシンは推測されます)。ping応答に基づいて...マシンが応答していない場合、マジックパケットがMACに送信されます(マシンが起動しているときにARPから提供されるか、前にコメントしたように手動で提供されます)。ping が応答する場合、何も行われません。毎回すべてのマシンへの ping を回避するために、ping の結果と日付が保存されます。ping の代わりに、ARP テーブルを読み取ることも可能です。
このアプローチでは、システム リソースが保持され、ping が適切に行われます。また、マシンが稼働している場合や推測されている場合は、マジック パケットは送信されません。
ファイアウォールは ICMP を許可する必要があることに注意してください。