C# を使用して、リモート マシンが (再起動/再イメージ化後に) 既に起動しているかどうかを確認したいと考えています。
現時点では、PING コマンドを実行して、マシンが応答するかどうかを確認することしか考えられません。エレガントな方法はありますか?
ありがとう!
編集
私の懸念の 1 つは、通常、マシンが Windows を起動すると PING が応答することです。一部のサービスは、それまでに開始されていない可能性があります。Anders Lindahlの回答を参照してください。
C# を使用して、リモート マシンが (再起動/再イメージ化後に) 既に起動しているかどうかを確認したいと考えています。
現時点では、PING コマンドを実行して、マシンが応答するかどうかを確認することしか考えられません。エレガントな方法はありますか?
ありがとう!
編集
私の懸念の 1 つは、通常、マシンが Windows を起動すると PING が応答することです。一部のサービスは、それまでに開始されていない可能性があります。Anders Lindahlの回答を参照してください。
NMAP コマンド nmap -sS -P0 -sV -O を使用する
< target > は、単一の IP、ホスト名、またはサブネットの場合があります
-sS TCP SYN スキャン (ハーフオープンまたはステルス スキャンとも呼ばれます)
-P0 オプションを使用すると、ICMP ping を無効にすることができます。
-sV オプションでバージョン検出が有効になります
-O フラグは、リモート オペレーティング システムの識別を試みます
その他のオプション:
-OSフィンガープリンティングとバージョン検出の両方を有効にするオプション
-v 冗長性を高めるには、-v を 2 回使用します。
nmap -sS -P0 -A -v <ターゲット>
ping は通常、マシンが正しく再起動したことを確認するのに十分ですが、起動するためにマシン上のサービスに依存している場合は、明示的に確認することをお勧めします。WMIを使用してクエリを実行する方法を見てみましょう。