LAN内で使用中のIPアドレス(pingで応答があるノード)を簡易に調査するワンライナー(Windows編)

Dell

諸事情で、WindowsのPCを使わざるをえない状況だったので・・・。簡易な感じで。

> for /l %i in (1,1,254) do ping -w 50 -n 1 192.168.1.%i && arp -a 192.168.1.%i >> ping.log

↑を実行すると、192.168.1.1 〜 192.168.1.254に対して連続してping(ICMP echo)を実行して、ログファイルに結果(応答があったノード)を書き込みます。タイムアウトは念のため50msecにしました。LAN内だったら、もっと小さくても良いと思います。
(対象IPアドレスは"dynamic"とか"動的"とか書かれている行になります。←でgrepしてやるとIPアドレスの一覧が取れます。ちなみに余談ですが、arpの実行結果なので、MACアドレスも記録されます。)


# Windowsのコマンドプロンプトなんて普段使わねー。。。

さらに追記

ブロードキャストアドレスにpingを・・・というコメントを頂きましたが、ブロードキャストパケットを拒否するノードに対応できなかったので、↑のようにしています。そこを考慮しなくて良い場合は、そちらの方がシンプルで良いと思います!(ま、コピペして実行だと思うので、変わらないとは思いますが。)


Windowsコマンドプロンプトスパテク242 Vista/XP/2000対応

Windowsコマンドプロンプトスパテク242 Vista/XP/2000対応

  • 作者:飯島 弘文
  • 出版社/メーカー: 翔泳社
  • 発売日: 2008/03/14
  • メディア: 単行本(ソフトカバー)