LANで生きているホストのリストを表示する

231, 2019-10-24

LANで生きているホストを一覧表示したいことがあったので↓のようなコードをBashで書きました。

#!/bin/bash

base='192.168.11.'

for i in `seq 0 255`; do

    host=$base$i

    if ping -c 1 -W 1 $host > /dev/null; then
        echo "\"$host\" is alive"
    fi
done

しかしこれは非常に遅いため、あまり実用性が無いスクリプトです。
Windows環境ではarp -aを実行すると手軽にホストのリストを得ることが出来ます。

PS C:\tmp> arp -a

ARPはIPアドレスからMACアドレスを得るためのプロトコルです。
arpコマンドはARPで使用したテーブルを表示するコマンドです。
手元のホストが各ホストに対してARPによる問い合わせを行っている場合は↑のコマンドでIPアドレスを得ることが出来ます。

投稿者名です。64字以内で入力してください。

必要な場合はEメールアドレスを入力してください(全体に公開されます)。

投稿する内容です。

スポンサーリンク

スポンサーリンク

スポンサーリンク

スポンサーリンク