Nmapでローカルネットワークに接続しているデバイスを調べよう

ネットワークを学ぶ為にローカルネットワークについて見ていきます。

先にローカルネットワークについて触れておきますと、ローカルネットワークとは自宅でインターネットを契約した時にルータが送られてきます。


パソコンやスマホでインターネットに接続する時に最初にWiFiやLANケーブルでルータと接続した後にブラウザで各サイトの閲覧をします。



この時、ルータを中心にして、ルータにWiFiやLANケーブルで繋いだ各パソコンやスマホ同士で作るネットワークをローカルネットワークと呼びます。

各パソコンをデバイスと呼び、ゲーム機、インターネットを経由したプリンタや中継機もデバイスに含まれます。


上記の説明ではインターネットに契約した時に送られてきたルータを中心にしてと記載しましたが、詳しくはラズベリーパイ等でルータを自作して、外のネットワークから遮断した閉じたローカルネットワークを構築することも可能です。

※ルータの自作に関して:ラズベリーパイをローカルネットワーク用のルーターにしてみる



今、外のネットワークと内のネットワークに分けましたが、外のネットワークの方(上の図の電柱より左側)をグローバルネットワークと呼び、内のネットワーク(上の図の電柱より右側)をローカルネットワークと呼びます。


それでは早速ローカルネットワークについて触れていきましょう。




今回の話はラズベリーパイを含むLinuxでの操作を想定しています。

プログラミング教育用のパソコンの選び方


パソコンをルータに接続しますと、ローカルネットワーク用のIPアドレスというものが振り分けられます。


自身のマシンに振り得てられましたIPアドレスを確認してみます。

ターミナルを開き、下記のコマンドを実行してみます。

$ hostname -I

※ $はプロンプトの入力待ちを意味していまして、コマンドの入力時に$を入力する必要はありません


今試しているデバイスでの実行結果は

192.168.1.106 2400:2650:6143:300:bef3:856c:42ff:e6c3

になりました。


この実行結果には

192.168.1.106

2400:2650:6143:300:bef3:856c:42ff:e6c3

の値がありまして、前者の方がIPv4の規格の値になりまして、後者の方がIPv6の規格の値になります。


ローカルネットワークを学ぶ上での各操作はIPv4の方を用います。


ローカルネットワーク用で割り振られましたIPアドレスの192.168.1.106ですが、この値には意味があります。

192.168 は小規模のローカルネットワークという意味になります。

これは各家庭にありますルータで同じ値を使いますが、ローカルネットワーク自体がルータ内で構築された閉じたネットワークになり外のネットワークからアクセス出来ないので問題ありません。


次の 1 はローカルネットワーク内のグループを表しています。

最後の 106 は 1グループに接続されたデバイスに振られた番号になります。




続いて、ローカルネットワーク内でどんなデバイスが接続されているのか?を確認してみます。

確認の際には



Nmap(ネットワークマッパー)というツールを使います。

Nmap: the Network Mapper - Free Security Scanner


Nmapはネットワークを調査する為のツールになりまして、ローカルネットワークを学ぶ際にも重宝します。


それでは早速Nmapをインストールして、ローカルネットワーク内に接続しているデバイスを見てみましょう。


始めに下記のコマンドでNmapをインストールします。

$ sudo apt update
$ sudo apt install nmap

Nmapの動作確認として、自身のIPアドレス(今回は192.168.1.106)についてを調べてみます。

$ nmap 192.168.1.106
Starting Nmap 7.93 ( https://nmap.org ) at 2026-04-13 11:42 JST
Nmap scan report for 192.168.1.106
Host is up (0.00012s latency).
Not shown: 988 closed tcp ports (conn-refused)
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
443/tcp  open  https

開いているポートの一覧が返ってきました。


$ sudo nmap -O 192.168.1.106

でデバイスやOSに関する情報も調べてみます。

OS等の情報を得るためには必ずsudor権限でコマンドを実行してください。


Starting Nmap 7.93 ( https://nmap.org ) at 2026-04-13 11:45 JST
Nmap scan report for 192.168.1.106
Host is up (0.0000050s latency).
Not shown: 988 closed tcp ports (reset)
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
443/tcp  open  https
Device type: general purpose
Running: Linux 2.6.X
OS CPE: cpe:/o:linux:linux_kernel:2.6.32
OS details: Linux 2.6.32
Network Distance: 0 hops

ポート番号の他にデバイスやOSの情報が付与されました。




次にローカルネットワークに接続しているデバイスを調べてみます。

$ sudo nmap -sn 192.168.1.0/24

-snオプションを付与して、IPアドレスを指定します。

個別に振り分けられる数字は何でも良く、IPアドレスの横に24を付与すると、1グループに接続されているデバイスのみの検索になります。


Starting Nmap 7.93 ( https://nmap.org ) at 2026-04-13 11:48 JST
Nmap scan report for 192.168.1.1
Host is up (0.0054s latency).
MAC Address: 0C:67:14:BA:2D:68 (Unknown)
Nmap scan report for 192.168.1.5
Host is up (0.0041s latency).
MAC Address: 9C:53:22:A7:BF:97 (Unknown)
Nmap scan report for 192.168.1.23
Host is up (0.085s latency).
MAC Address: 4A:8C:EC:9C:B4:AA (Unknown)
Nmap scan report for 192.168.1.100
Host is up (0.0015s latency).
MAC Address: B8:7B:D4:96:E9:41 (Unknown)
Nmap scan report for 192.168.1.102
Host is up (0.039s latency).
MAC Address: 1C:CE:51:B1:35:84 (Unknown)
Nmap scan report for 192.168.1.103
Host is up (0.047s latency).
MAC Address: 5A:D6:28:2A:BF:C6 (Unknown)
Nmap scan report for 192.168.1.107
Host is up (0.040s latency).
MAC Address: 34:9F:7B:F7:62:40 (Canon)
Nmap scan report for 192.168.1.106
Host is up.
Nmap done: 256 IP addresses (8 hosts up) scanned in 4.65 seconds

UnknownやCanonの箇所が使用しているデバイスになりまして、検索の際にデバイスの情報が得られなければ、Unknownの値になります。


もし、デバイスの詳細を把握したければ、nmapコマンドの実行時に-Oを付与して、調べたいIPアドレスを指定すれば良いです。


例:

$ sudo nmap -O 192.168.1.100
京都の東本願寺で開催されているプログラミング教室で講師をしています。
詳しくはTera schoolを御覧ください。
同じカテゴリーの記事
マインクラフト用ビジュアルエディタを開発しています。

詳しくはinunosinsi/mcws_blockly - githubをご覧ください。