空いているIPアドレスを探す方法

IPアドレスを設定する時、サブネット内で使ってよいIPアドレスを調査したい時があります。

本項では、空いているIPアドレスを探す方法を説明します。

pingで空いているIPアドレスを探す

pingを実行すると、指定したIPアドレスの機器が存在すると応答があります。以下は、Windowsのコマンドプロンプトでpingを実行した例です。

【ping実行例】
C:¥>ping 192.168.8.1
 
192.168.8.1に ping を送信しています 32 バイトのデータ:
192.168.8.1 からの応答: バイト数 =32 時間 =11ms TTL=54
192.168.8.1 からの応答: バイト数 =32 時間 =11ms TTL=54
192.168.8.1 からの応答: バイト数 =32 時間 =12ms TTL=54
192.168.8.1 からの応答: バイト数 =32 時間 =12ms TTL=54

192.168.8.1 の ping 統計:
    パケット数: 送信 = 4、受信 = 4、損失 = 0 (0% の損失)、
ラウンド トリップの概算時間 (ミリ秒):
    最小 = 11ms、最大 = 12ms、平均 = 11ms

指定したIPアドレスが存在しない場合、タイムアウトなどが表示されます。

このため、応答がないIPアドレスは使われていない可能性がありますが、pingに応答しない機器もあります。

ARPで探す方法

pingに応答しない場合でも、ARPには応答します。

同一サブネット内にWindowsパソコンがある場合、pingを行った後にコマンドプロンプトからarp -aでARPテーブルを表示できます。

【arp -a実行例】
C:¥>arp -a
 
インターフェイス: 192.168.1.2 --- 0x10
  インターネット アドレス   物理アドレス      種類
  192.168.1.2           11-ff-11-ff-11-ff     動的
  192.168.1.3           ff-11-ff-11-ff-11     動的

ARPテーブルに表示されているIPアドレスは使われています。このため、サブネット内のすべてのIPアドレスに対してpingを行い、ARPテーブルで表示して確認を行うことで空いているIPアドレスの調査ができます。

例えば、IPアドレスが192.168.1.10で、サブネットマスクが255.255.255.0の場合、192.168.1.1〜192.168.1.254までのIPアドレスにpingを行い、ARPテーブルに表示されるか確認します。

IPアドレス存在を順番に確認する方法

コマンドプロンプトで実行すると手間がかかりますが、Expingなどで実行すると簡単です。

また、サブネットが異なる場合でも、pingを行った後にルーターのARPテーブルを確認することで確認が行えます。

なお、装置が起動していないとARPには応答しません。このため、会社などで多数の機器があると確実に空いているとは言い切れませんが、数日に渡って調査することで精度が向上します。自宅などでは、すべての機器を起動した後に調査を行うと確実です。

関連ページ

基本編「ARP
ARPのしくみを説明しています。
トラブル対応「Exping
Expingの使い方を説明しています。