web-dev-qa-db-ja.com

ネットワーク上のデバイスの名前を取得する

ネットワーク上のすべてのデバイスの名前を知りたいのですが。私はすでに多くのコマンドをWebで見つけて大成功せずに試しましたが、思ったように機能するものはありませんでした。

基本的に、ルーターの設定を入力すると、ネットに接続されているデバイスの名前を取得できます。一部のアプリケーションでも取得できるので、何らかの方法で実行できると思います。

コマンドラインを介してWi-Fiネットワークに接続されているすべてのデバイスの名前のリストが必要です。

ありがとう


pi@raspberrypi ~ $ nmap -sP 192.168.4.0/24

Starting Nmap 6.00 ( http://nmap.org ) at 2015-03-05 13:55 UTC
Nmap scan report for 192.168.4.1
Host is up (0.0055s latency).
Nmap scan report for 192.168.4.2
Host is up (0.42s latency).
Nmap scan report for 192.168.4.4
Host is up (0.045s latency).
Nmap scan report for 192.168.4.5
Host is up (0.47s latency).
Nmap scan report for 192.168.4.6
Host is up (0.0032s latency).
Nmap scan report for 192.168.4.7
Host is up (0.79s latency).
Nmap scan report for 192.168.4.8
Host is up (0.0024s latency).
Nmap scan report for 192.168.4.9
Host is up (0.038s latency).
Nmap scan report for 192.168.4.10
Host is up (0.034s latency).
Nmap scan report for 192.168.4.11
Host is up (0.029s latency).
Nmap scan report for 192.168.4.22
Host is up (0.12s latency).
Nmap scan report for 192.168.4.27
Host is up (0.031s latency).
Nmap scan report for 192.168.4.28
Host is up (0.012s latency).
Nmap scan report for 192.168.4.100
Host is up (0.0038s latency).
Nmap done: 256 IP addresses (14 hosts up) scanned in 49.30 seconds
14
Federico Ponzi

私は fing を使用する傾向があります。これは、現在のサブネットをスキャンし、ホスト名を抽出してIPおよびMACとともに表示しようとするスキャナーです。

例:

14:19:05 > Discovery profile: Default discovery profile
14:19:05 > Discovery class:   data-link (data-link layer)
14:19:05 > Discovery on:      192.168.1.0/24

14:19:05 > Discovery round starting.
14:19:05 > Host is up:   192.168.1.151
           HW Address:   XX:XX:XX:XX:XX:XX
           Hostname:     My-laptop-hostname

14:19:05 > Host is up:   192.168.1.1
           HW Address:   YY:YY:YY:YY:YY:YY
           Hostname:     router.asus.com

14:19:06 > Discovery progress 25%
14:19:07 > Discovery progress 50%
14:19:08 > Discovery progress 75%
14:19:05 > Host is up:   192.168.1.10
           HW Address:   AA:BB:CC:DD:EE:FF (ASUSTek COMPUTER)

14:19:05 > Host is up:   192.168.1.11
           HW Address:   GG:HH:II:JJ:KK:LL

14:19:06 > Host is up:   192.168.1.99
           HW Address:   MM:NN:OO:PP:QQ:RR (Apple)
           Hostname:     iPhoneOfSomeone

ご覧のとおり、すべてのデバイスがホスト名を提供しているわけではありません。たとえば、プリンタなどの一部の周辺機器は常にホスト名を提供するわけではありませんが、ほとんどのデバイスは提供します。 MACのid部分を分析して、メーカーを推測することも試みます

Raspberry Piで動作しますが、少し前にインストールしましたが、期待どおりに動作します。

8
Jake

上記の答えはどれもうまくいかなかったので、arp-scanをいじり始めました。だから、私がうまくいったのは:

arp-scan -I [WIFI INTERFACE] -l

arp-scanはネットワークをスキャンし、デバイスを一覧表示します。 -Iはインターフェースを選択し、-lはローカルネットワークを確認するようにarp-scanに指示します。次に、

arp

これにより、配置されたばかりのデバイスarp-scanが返され、ホスト名とMACアドレスがリストされます。

8
GarrukApex

あなたはあなたの問題、特にデバイス名の定義についてもっと正確にする必要があると思います。

残念ながら、現時点ではRaspberry Piにアクセスできないため、ここに表示されるものはすべて、私のDebian 7ボックスからのものです。

nmap -sPは逆DNSルックアップを行うため、デバイスに逆DNSエントリがある場合、その出力は次のようになります。

> nmap -sP 192.168.4.0/24
Starting Nmap 6.00 ( http://nmap.org ) at 2015-03-12 06:24 CET
Nmap scan report for device1.local (192.168.4.1)
Host is up (0.0021s latency).
Nmap scan report for device2.local (192.168.4.2)
Host is up (0.014s latency).
…

Pingプローブをブロックするホストは出力に表示されません。また、-pオプションを使用してスキャンするポートでサービスを提供しないホストもありません。 -p 0-65535を使用してポート範囲全体をスキャンしても、かなりのネットワークフットプリントが生成されますが、開いているポートがないホストは表示されません。

ネットワーク内のホストに関する唯一の信頼できる情報は、それらがMACアドレスとIPアドレスを持っているということです。 DHCPサーバーはIPアドレスを割り当てているため、両方を認識しています。さらに、多くのDHCPクライアントはDHCP要求に含まれるホスト名を送信するため、DHCPサーバーにはこのデバイスの名前があり、たとえその名前が他の場所(DNS、SMBなど)に表示されない場合でも同じです。

残念ながら、DHCPサーバーは動的に割り当てられたIPアドレスをネームサーバーに報告しないため、この情報を取得できません。

ネットワーク内のすべてのデバイスを検索するには、すべてのホストにpingした後(たとえば、nmap -sPを使用して) [〜#〜] arp [〜#〜] テーブルをダンプします。

> arp -vn
Address               HWtype  HWaddress           Flags Mask            Iface
192.168.4.1           ether   12:34:56:78:9a:bc   C                     wlan0
192.168.4.2           ether   11:22:33:44:55:66   C                     wlan0
…

MACアドレスとIPアドレスを使用すると、ネットワークの近隣に関する一貫した情報のみが得られます。開いているポート445をプローブすると、SMB(つまり、Windowsネットワーク)をサポートしている可能性が高いため、ウィンドウ名が付いているデバイスが表示されます。

他の開いているポート(例:21/ftp、22/ssh、23/telnet…)に接続することでもホスト名を提供できますが、常にプロトコルに依存する方法であり、ホストはすべてのポートで理論的に異なる方法で自身を呼び出す場合があります。

あるいは、Piに独自のDHCPおよびDNSサーバーをセットアップし、機能する逆引きDNSサービスを提供することもできます。

すべてのデバイスが Zeroconf をサポートしている場合、この方法でデバイスを検出できる可能性があります。

6
ua2b

Windowsホストのデバイス名を取得するには、次を使用します。

nmap --script smb-os-discovery -p 445 192.168.1.0/24

(ソース: http://www.blackbytes.info/2013/07/finding-windows-Host/

3
rand

Linuxでは、nbtscanを使用して目的の機能を実現できます。

Sudo apt-get install nbtscanを実行してインストールします。

ネットワークに接続されているデバイスのホスト名を表示するには、

Sudo nbtscan 192.168.0.1-192.168.0.255を実行します。

ホストが192.168.0.1にあり、255.255.255.0のサブネットマスクを使用すると仮定します。ネットワーク構成に応じてIP範囲を調整します。

1

ここでの3つの回答はnmapを参照していますが、接頭辞Sudo(いずれの回答もしない)が世界ですべての違いを生み出すことがわかりました。

$ nmap -sP 192.168.1.0/24

Starting Nmap 7.01 ( https://nmap.org ) at 2019-07-13 14:55 MDT
Nmap scan report for 192.168.1.65
Host is up (0.00037s latency).
Nmap scan report for 192.168.1.66
Host is up (0.00035s latency).
Nmap scan report for 192.168.1.67
Host is up (0.00028s latency).
Nmap scan report for 192.168.1.68
Host is up (0.00025s latency).
Nmap scan report for 192.168.1.70
Host is up (0.017s latency).
Nmap scan report for 192.168.1.254
Host is up (0.00070s latency).
Nmap done: 256 IP addresses (6 hosts up) scanned in 6.86 seconds

$ Sudo nmap -sP 192.168.1.0/24

Starting Nmap 7.01 ( https://nmap.org ) at 2019-07-13 14:56 MDT
Nmap scan report for 192.168.1.65
Host is up (0.00050s latency).
MAC Address: 99:99:99:99:99:A6 (Unknown)
Nmap scan report for 192.168.1.66
Host is up (0.00016s latency).
MAC Address: 99:99:99:99:99:D9 (Sony)
Nmap scan report for 192.168.1.70
Host is up (-0.087s latency).
MAC Address: 99:99:99:99:99:36 (Unknown)
Nmap scan report for 192.168.1.254
Host is up (0.0020s latency).
MAC Address: 99:99:99:99:99:00 (Actiontec Electronics)
Nmap scan report for 192.168.1.67
Host is up.
Nmap scan report for 192.168.1.68
Host is up.
Nmap done: 256 IP addresses (6 hosts up) scanned in 2.41 seconds

コンピューターでコード化されたIPアドレスやMACアドレスではなく、人が読める名前をデバイスに表示する方法についてプロジェクトを研究しているため、このQ&Aに出会いました。

特に、上記のMAC 99:99:99:99:99:36(実際のアドレスではない)の「(不明)」ではなく、「Toshiba 43」4K TVを表示してほしい。

後でプロジェクトをローカルエリアネットワークを越えてインターネットに展開します。この場合、「Stack Exchange999.999.9.99の代わりに表示されます」または「Ask Ubuntは代わりに表示されますof 999.999.9.99私が私のマシンが相互作用している外部IPアドレスを見ているとき。

0