目次
あなたのような読者は、MUOをサポートするのに役立ちます。当サイトのリンクを利用して購入された場合、アフィリエイト報酬を得ることがあります。続きを読む
ネットワークに接続されている人を知ることは、時に役に立つことがあります。例えば、特定のデバイスのステータス(稼働中か停止中か)を確認したり、予備の静的IPアドレスを探したり、デバイスのインベントリーを作成したりする必要がある場合があります。さらに、この情報は、ネットワークや共有リソースへの不正なアクセスを特定するのにも役立ちます。
ルーターの設定画面で接続されているIPを確認することはできますが、静的IPアドレスは表示されません。幸いなことに、ネットワーク上のすべてのIPアドレスを見つけることができる他の方法がいくつかあります。ここでは、そのいくつかをご紹介します。
arpを使ったネットワーク上のIPアドレスの検索
arpは、システム’のARPキャッシュを表示および変更するために使用される組み込みコマンドラインユーティリティです。また、ARPキャッシュは通信するシステムのIPとMACアドレスのマッピングを保存するので、与えられたIPアドレスのシステムのMACアドレスを見つけるために使用されます。
arp コマンドを使用すると、ネットワーク上のすべての IP アドレスを検索することもできます。arpがLinuxマシンにプリインストールされていない場合、または誤って削除された場合は、次の簡単なコマンドでインストールすることができます:
Ubuntuを含むDebianベースのディストリビューションで:
sudo apt install net-tools
RHELベースのディストリビューションで:
sudo dnf install net-tools
Archベースのディストリビューションで:
sudo pacman -S net-tools
ネットワーク上のすべてのIPアドレスを調べるには、引数なしでarpコマンドを使用します:
arp
Windowsでは、-aフラグを使用して同じ情報を得ることができます:
arp -a
Nmapを使ったネットワーク上のIPアドレスの検索
Nmapは、ネットワークのスキャンとマッピングに使用されるフリーでオープンソースのツールです。Nmapを使用すると、ネットワークに接続している人、そのIPおよびMACアドレス、オペレーティングシステムの詳細、および実行しているサービスを調べることができます。LinuxとWindowsの両方で利用可能なクロスプラットフォームツールです。
ネットワーク上のすべてのIPアドレスを調べるには、nmapコマンドを使用します:
sudo nmap -sn /。
例えば、192.168.22.0/24のネットワーク上のすべてのIPアドレスを見つけるために、次のように実行する必要があります:
sudo nmap -sn 192.168.22.0/24
snオプションは、Nmapにホストスキャンのみを実行するよう指示します(ポートのプローブは行いません)。
IPアドレスのみを印刷し、その他の情報を削除する場合は、以下のコマンドを使用します。
sudo nmap -sn /。| グレップレポート|awk|'{ print $5 }’.
上記のコマンド(-snフラグ付き)は、Linuxでのみ動作します。
また、これらのIPアドレスに関連するOS情報は、以下のコマンドで確認することができます:
sudo nmap -sT -O /
Angry IP Scannerを使う
Angry IP Scannerは、オープンソースでクロスプラットフォームのIPアドレスとポートスキャナです。生存している各ホストについて、ホスト名、MACアドレス、ハードウェアメーカー、およびオープンポートを決定します。
また、スキャンした結果をCSV、TXT、XMLファイルでエクスポートすることができます。Angry IP Scannerは、Linux、Windows、macOSで利用可能です。
LinuxにAngry IP Scannerをインストールする
Ubuntu、Debian、FedoraなどのLinuxディストリビューションでは、GitHub ReleasesページからDEBまたはRPMパッケージをダウンロードするか、wgetコマンドを使用して、Angry IP Scannerを簡単にインストールすることができます。
ダウンロードAngry IP Scanner
Debianベースのディストリビューションで:
wget https://github.com/angryip/ipscan/releases/download/3.9.1/ipscan_3.9.1_amd64.deb
APTを使用してパッケージをインストールします:
sudo apt install ./ipscan*.deb
RHELベースのディストリビューションで:
wget https://github.com/angryip/ipscan/releases/download/3.9.1/ipscan-3.9.1-1.x86_64.rpm
その後、DNFを使用して、ローカルパッケージのインストールを実行します:
sudo yum localinstall ipscan*.rpm
最新版をお求めの場合は、GitHubページからの手動ダウンロードをお勧めします。
Arch Linux では、yay を使って Arch User Repository (AUR) から Angry IP Scanner をインストールすることができます:
イェーイ -S ipscan
Angry IP ScannerのWindowsへのインストール
Angry IP ScannerをWindowsにインストールするには、GitHub Releasesのページからインストーラーファイルをダウンロードします。ダウンロードしたら、インストーラーファイルをダブルクリックしてインストールします。
ダウンロードするAngry IP Scanner (Windows)
ネットワーク上のすべてのIPアドレスを検索するには、Angry IP Scannerを起動し、IP範囲(開始および終了IPアドレス)またはネットワークID(プレフィックス付き)を指定します。また、テキストファイルからIPアドレスをスキャンすることもできます。次に、Startボタンをクリックして、スキャン処理を開始します。
スキャンが完了すると、定義された範囲内でスキャンされたすべてのIPアドレスが表示されます。また、ツール>フェッチャーオプションから、MACアドレス、MACベンダー、ポートなどの追加の詳細を結果に含めることができます。
ツール>の環境設定から、デッドホストのスキャン、ポートスキャンの有効化、Ping送信方法と表示設定の変更など、さらに詳しい設定を行うことができます。
Netdiscoverを使ったネットワーク内のIPアドレスのリストアップ
Netdiscoverは、ARPリクエストを使用してネットワーク上のすべてのアクティブなホストを検出することができます別の便利なコマンドラインのネットワーク探査ユーティリティです。発見されたすべてのホストについて、そのIPアドレス、MACアドレス、およびハードウェアの製造業者を表示します。
また、Netdiscoverユーティリティを使用して、ネットワーク上のすべてのIPアドレスを見つけることができます。ただし、NetdiscoverツールはLinuxでのみ利用可能です。
Linuxディストリビューションでは、以下のコマンドを使用してNetdiscoverをインストールすることができます:
Debianベースのディストリビューションで:
sudo apt install netdiscover
Snap StoreからNetdiscoverをインストールするには、まずシステムにsnapをインストールし、次のコマンドを実行します:
sudo snap install netdiscover-ondra
Arch Linux では、まず yay をインストールしてセットアップする必要があります。次に、Netdiscover を実行することでインストールします:
イェーイ -S ネットディスカバー
インストール後は、netdiscoverコマンドを使用して、次のようにネットワーク上のすべてのIPアドレスを検出することができます:
netdiscover -r /
ネットワーク上のすべてのIPアドレスを検出する
ネットワーク上のすべてのIPアドレスを知ることは、潜在的なセキュリティリスクを特定し、接続の問題をトラブルシュートするのに役立ちます。arpやnetdiscoverのような基本的なコマンドは、IPとMACアドレスによって接続されたデバイスのリストを提供し、NmapやAngry IP Scannerなどのツールは、ライブホストに関するさらなる洞察を提供することができます。
ネットワークに接続している人を把握した上で、誰が、何のためにネットワークの帯域幅を使用しているかを確認することで、ネットワークのセキュリティと効率をさらに向上させることができます。