NetdiscoverでLAN内のホストを調査

Kalilinux

netdiscoverは同一LAN内のPC・ルータ・その他ネットワークに接続されたデバイスを調査するコマンドです。

kali linuxではツールの1つとして分類されています。

netdiscoverの起動

kali ー 01-Information Gathering ー netdiscoverで起動

netdiscover

起動画面:ヘルプが表示されています。

netdiscover

netdiscoverの実行

コマンドには ” sudo ” が必要です。

sudo netdiscover -r 192.168.xx.0/24

” xx ” には自分のLANに固有の数値が入ります。(=自分のIPアドレスを調べて、3番目の数字がそれです。)

4番目の数字 ” 0/24 ” は、4番目が0番から255番までの全部を調べるという意味。

下の例では ” 192/168.11.0/24 ” で実行しています。

netdiscover

8つのホストが検出されました。

なおこの中には自分自身は含まれていません(ちなみに自分は ” 192.168.11.21 ” です。)

LAN内のデバイスにARP問い合わせを行い、帰ってきた返答のMACアドレスから、機器のベンダーを推定しています。

ARP(Adress Resolution Protocol)問い合わせ:ご近所さん(LAN内)に放送をかけて、この住所(IPアドレス)の方はいらっしゃいますか? もしいらっしゃったら名前(MACアドレス)を教えてください。と呼びかける行為。

このARPを0番地(192.168.11.0)から255番地(192.168.11.255)まで順に行って、返答があった名前をまとめたのが上記の結果です。

ARPはIPアドレスとMACアドレスを対応させます。

LAN内で新たに機器を立ち上げると

同一LAN内で新たに機器を立ち上げて再度 ” sudo netdiscover -r 192.168.11.0/24 ” と実行した結果。

netdiscover

呼びかけに応答した機器が増えているせいで、検出された機器は10に増加しています。

arp -a コマンド

似たようなコマンドに ” arp ” コマンドがあります。

これは自分の持っている、「ご近所さんの番地と名前の対照表(=arpテーブル)」を表示する機能です。

arp -a

arp -a

この対照表は普段はOSが管理しています。

arpコマンドとnetdiscoverコマンドの違い

番地(IPアドレス)は時々変更がありえますので、或いは新しい機器が随時LAN内に参加してくることがあり得ますので、arpテーブルの情報は最新とは言えません。

またarpコマンドではベンダー情報は表示されません。

netdiscoverの方が、arpコマンドに比べて最新かつ詳細ということになります。

nmapとの違い

参考までに ” sudo nmap -O ” コマンドでもLAN内ホストのOS調査ができます。

sudo nmap -O 192.168.11.0/24

こちらはLAN内の全てのホストにフレーム(パケット)を送りつけてその反応から様々な調査をおこなります。調査結果は一番詳しく出ますが一つ一つのIPアドレスにつき、多くのポートを調べますので何しろ時間がかかります。

上記の ” netdiscover ” や ” arp -a ” では1秒で結果が出ましたが、 ” nmap -O ” では40分もかかりました。

nmap
nmap

nmapの結果を早める方法

nmapのオプションで、調べる対象や項目を削減してスキャン速度を上げる手があります。

例えば、オプション ” -sP ” では20秒で終わります。但しOSの調査は出来ず、ホストの存在診断のみの結果となります。

nmap

nampのオプション ” -sP ” では、LAN内の各ホストにpingを打って、その応答を調べています。

まとめ

同一LAN内にどんな機器がつながっているのか、そしてそのIPアドレスを調べたい場合。

コマンド/ツールnetdiscoverarpnmap
情報の鮮度新鮮やや古い新鮮
ホストの情報NICベンダー名少ない多い
速さ速い速い遅い

コメント

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