รับชื่ออุปกรณ์บนเครือข่าย


14

ฉันต้องการทราบชื่อของอุปกรณ์ทั้งหมดในเครือข่าย ฉันได้ลองแล้วโดยไม่ประสบความสำเร็จอย่างยิ่งใหญ่พบคำสั่งมากมายในเว็บ แต่ไม่มีอะไรทำงานเหมือนที่ฉันต้องการ

โดยทั่วไปเมื่อฉันป้อนการตั้งค่าเราเตอร์ของฉันฉันจะได้รับชื่อของอุปกรณ์ที่เชื่อมต่อกับเน็ตของฉัน ฉันสามารถรับมันได้ในแอพพลิเคชั่นบางตัวด้วยดังนั้นฉันคิดว่ามันสามารถทำได้ในบางวิธี

ฉันต้องการรายการชื่อของอุปกรณ์ทั้งหมดที่เชื่อมต่อกับเครือข่าย Wi-Fi ของฉันผ่าน commandline

ขอบคุณ


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

คำตอบ:


8

ฉันมักจะใช้นิ้วในการนี้มันเป็นสแกนเนอร์ที่สแกนซับเน็ตที่คุณเปิดอยู่และพยายามแยกชื่อโฮสต์และแสดงไว้ข้าง IP และ MAC

Ex:

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

ในขณะที่คุณสามารถเห็นอุปกรณ์ทั้งหมดไม่ให้ชื่อโฮสต์ของพวกเขา; ตัวอย่างเช่นอุปกรณ์ต่อพ่วงบางอย่างเช่นเครื่องพิมพ์ไม่ได้ให้ชื่อโฮสต์เสมอไป แต่อุปกรณ์ส่วนใหญ่ทำ มันยังพยายามที่จะคาดเดาผู้ผลิตโดยการวิเคราะห์ id-part ของ MAC

มันทำงานบนราสเบอร์รี่ Pi ฉันติดตั้งบนของฉันสักครู่ที่ผ่านมาและทำงานตามที่คาดไว้


1
คุณติดตั้งนิ้วได้อย่างไร? ลิงก์ของคุณเสียชีวิตและไม่รวมอยู่ในที่เก็บ Raspberry Pi ใด ๆ
Patrick Cook

5
โปรดระบุวิธีที่คุณเรียกว่า fing เพื่อรับเอาต์พุตนั้น หากไม่มีคำสั่งคำตอบจะไม่สมบูรณ์
user666412

2
ฉันใช้ a apt-get install libpcap-dev ; wget https://www.fing.io/wp-content/uploads/2016/10/overlook-fing-3.0.deb ; dpkg -i overlook-fing-3.0.deb เพื่อติดตั้งแล้วfingเปิดใช้งาน มันไม่ได้รายงานชื่อโฮสต์สำหรับ Rpi ของฉัน HW Address: B8:27:EB:1B:E6:0C (Raspberry Pi Foundation)แต่ไม่ยอมรับว่าเป็น
Dave X

1
ไม่พบชื่อโฮสต์แม้แต่ชื่อเดียวในเครือข่ายอุปกรณ์ 22 แห่งในเครือข่ายทดสอบครั้งแรก เช่นเดียวกันกับอีก 24 โฮสต์ Fing, สำหรับตอนนี้ (Febr 2018) ดูเหมือนว่าฉันจะเป็นระเบียบ
Sopalajo de Arrierez

5
ลิงก์ยังถูกต้องหรือไม่ ดูเหมือนจะเป็นผลิตภัณฑ์ IoT แทนที่จะเป็นเครื่องมือบรรทัดคำสั่งทันที
Venryx

8

คำตอบข้างต้นไม่ได้ผลสำหรับฉันดังนั้นฉันจึงเริ่มยุ่งไปกับการสแกน arp ดังนั้นสิ่งที่ฉันพบว่าทำงานคือ:

arp-scan -I [WIFI INTERFACE] -l

arp-scan สแกนเครือข่ายของคุณและแสดงรายการอุปกรณ์ -I เลือกอินเตอร์เฟสและ -l บอกให้ arp-scan หาเครือข่ายท้องถิ่น ถัดไปพิมพ์

arp

การทำเช่นนี้จะส่งคืนอุปกรณ์ arp-scan ที่ตั้งอยู่และจะแสดงรายการชื่อโฮสต์และที่อยู่ MAC ของพวกเขา


6

ฉันคิดว่าคุณจะต้องมีความแม่นยำมากขึ้นเกี่ยวกับปัญหาของคุณโดยเฉพาะความหมายของการให้ชื่ออุปกรณ์

น่าเสียดายที่ฉันไม่สามารถเข้าถึง 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 ที่กำหนดแบบไดนามิกให้กับเซิร์ฟเวอร์ชื่อของคุณดังนั้นคุณจึงไม่สามารถดึงข้อมูลนี้ได้

ในการค้นหาอุปกรณ์ทั้งหมดภายในเครือข่ายของคุณคุณสามารถดัมพ์ตารางARPหลังจากส่ง Ping โฮสต์ทั้งหมด (เช่นใช้nmap -sP):

> 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) ซึ่งเป็นชื่อ windows

การเชื่อมต่อกับพอร์ตเปิดอื่น ๆ (เช่น 21 / ftp, 22 / ssh, 23 / telnet, ... ) อาจเสนอชื่อโฮสต์ แต่มักจะขึ้นอยู่กับวิธีการที่ขึ้นอยู่กับโปรโตคอล - และโฮสต์อาจเรียกตนเองว่าแตกต่างกันไปตามพอร์ตทั้งหมด

หรือคุณสามารถตั้งค่า DHCP และเซิร์ฟเวอร์ DNS ของคุณเองบน Pi และให้บริการ DNS ย้อนกลับที่ใช้งานได้

หากอุปกรณ์ทั้งหมดของคุณรองรับZeroconfคุณอาจสามารถค้นพบอุปกรณ์ด้วยวิธีนี้ได้


3

ในการรับชื่ออุปกรณ์ของโฮสต์ Windows ให้ใช้

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

(ที่มา: http://www.blackbytes.info/2013/07/finding-windows-host/ )


Ciao Simone! ใช้งานได้กับโฮสต์ windows เท่านั้น แต่ฉันต้องค้นหาชื่ออุปกรณ์ทุกชื่อในเครือข่ายของฉัน
Federico Ponzi

1
ฉันอาจจะผิด แต่ฉันไม่แน่ใจว่าแนวคิดของ "ชื่ออุปกรณ์" จะเป็นอย่างไรสำหรับเครื่อง Linux สิ่งที่ใกล้เคียงที่สุดที่ฉันคิดคือชื่อโฮสต์ที่กำหนดใน / etc / HOSTNAME หรือ / etc / hostname แต่ฉันไม่รู้ว่าคุณสามารถรับมันได้โดยถามเครื่อง (ยกเว้นแน่นอนเซิร์ฟเวอร์ DNS จะให้มัน) .
rand

1

บน 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 ตามการกำหนดค่าเครือข่ายของคุณ


สิ่งนี้สามารถแก้ไขชื่อ NetBIOS เท่านั้น
Pierz

และสำหรับการทดสอบของฉันดูเหมือนจะไม่แสดงชื่อ NetBIOS ทั้งหมดในเครือข่าย
Sopalajo de Arrierez

0

สามคำตอบที่นี่อ้างถึง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 ของคอมพิวเตอร์ไปยังอุปกรณ์ต่างๆ

โดยเฉพาะอย่างยิ่งฉันต้องการให้ "โตชิบา 43" 4K TV "แสดงมากกว่า" (ไม่ทราบ) "สำหรับ MAC 99:99:99:99:99:36(ไม่ใช่ที่อยู่จริง) ด้านบน

หลังจากนั้นฉันต้องการขยายโครงการผ่านเครือข่ายท้องถิ่นไปยังอินเทอร์เน็ตโดยที่ " Stack Exchange " จะแสดงแทน999.999.9.99หรือ " ถาม Ubuntu " จะแสดงแทน999.999.9.99เมื่อฉันดูที่อยู่ IP ภายนอกที่เครื่องของฉันโต้ตอบอยู่


-1

jcbermu อยู่ใกล้มาก แต่จาก man page ของ nmap:

-sL (List Scan) .
       The list scan is a degenerate form of host discovery that simply lists each host of the network(s) specified, without sending any packets to the target hosts. By default, Nmap still does
       reverse-DNS resolution on the hosts to learn their names.

หากมันถูกเก็บไว้ในรายการ rDNS สิ่งนี้จะพบได้มิฉะนั้นคุณอาจต้องฟังคำร้องขอ DHCP และดักจับพวกเขา


-2

คุณจำเป็นnmap ออกคำสั่งเช่น:

nmap -sP 192.168.1.0/24

และจะทำการค้นหาเครือข่ายในเครือข่ายย่อยที่192.168.1.0 - 192.168.1.255แสดงชื่อและที่อยู่ IP ของอุปกรณ์ทั้งหมดในเครือข่ายนั้น

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.