Windows 社内のパソコンが点いているかを一括確認 Ping Sweep

IT関連

原理

宛先(PC)にデータを送って応答を待つping(ピングもしくはピン)というコマンドがある。

pingを送って応答があったパソコンは点いているということ。

これを利用してネットワーク全体にpingを送って、返事があるか確認する。

 

用途

  • ネットワーク管理者が関知していないPCや機器が、勝手に接続されていないか調査する
  • 空いているIPアドレスがあるか確認する

など。

 

やり方

コマンドプロンプトを開く

Windowsキーを押しながら「R」を押す。

出てくる枠に「cmd」と入力しエンターキー。

黒い枠が出てくる。それがコマンドプロンプトというコマンドを入力する画面。

 

試しにpingを送ってみる

全体にpingコマンドはひとまず置いておいて、一カ所にpingを送ってみる。

C:\Users\User> ping 192.168.0.253

 

こんな感じで、「~からの応答」と返ってくれば、このIPアドレスには機器が存在し、かつ点いているということ。

余談だが、ping -a 宛先と、-aをつけて送れば、宛先のPC名も確認できる。

 

全体にpingを送ってみる(Ping Sweep)

あたたた・・とpingを送ることを、Ping Sweep(ピングスイープ)と言います。

 

コマンドは

C:\Users\User> FOR /L %F IN (100,1,254) DO ping -n 1 -w 3 192.168.0.%F | find “からの” >> C:\Users\User\desktop\pingoutput.txt

こんな感じ。

 

コマンド説明

 

FOR

データの集合を作成して個々のデータごとにコマンドを実行する。要するにループです。pingを繰り返し送るおまじない。

 

/L

繰り返し送るといっても、同じIPアドレスに繰り返し送ってもしょうがないので、宛先IPアドレスを変化させなければいけない。その変化の値を使いますよというおまじない。

 

%F

これが変化する値のおまじない。変数と言います。アルファベットはなんでも構わない。%Aでも%BでもOK。

 

IN(100,1,254)

%Fに入る数。100から254まで1づつ増加して、カウントする。という意味。IN(初期値,増加値,最終値)

 

DO

以下の命令を実行するということ。

 

ping -n 1 -w 3 192.168.0.%F

pingのコマンド。

-n 1は確認のデータを送る回数。基本は3回送るのだが1回で十分。
-w 3は待ち時間。3ミリ秒。ネットワークの世界は物凄い早いので、これで十分。
192.168.0.%Fは宛先。192.168.0.は固定で、%Fのところに、さきほど指定したIN(100,1,254)が入る。

すなわち、
ping 192.168.0.100
ping 192.168.0.101
ping 192.168.0.102
ping 192.168.0.103
ping 192.168.0.104

192.168.0.254まで連続してpingを送るということ。

 

| find “からの”

さきほどpingを送った内容を見れば解ると思うが、

こんな余計な情報まで送られてくると、一覧で見たいときに解りにくい。

なので応答データだけに絞る。応答データには上記図のとおり、「からの」という文字があるので、「からの」があった場合だけを出力対象とする。

 

>> C:\Users\User\desktop\pingoutput.txt

この黒い画面にドドドドと表示しても管理できないので、ファイルにダウンロードする。

Userはご使用の環境のユーザ名に置き換えてください。

 

出力結果

 

こんな感じです。102,104,106・・・というふうにPCが点いているIPアドレスだけ一覧化することができた。

一覧にないIPアドレスは機器が接続されていない、もしくは機器が点いていないということ。

 

注意点

WindowsPCは同一ネットワークでないとPingを返さない設定なので、別ネットワークの場合は使えませんのでご注意を。

拠点内などの管理に使おうと思えば使えるかも。

あとあまりネットワーク帯域を圧迫するような行為なので、一般ユーザは使わないように。

怒られても私は知りません。使用は自己責任にて。

コメント

タイトルとURLをコピーしました