ค้นหาที่อยู่ Raspberry PI บนเครือข่ายท้องถิ่น


76

ฉันต้องการค้นหาที่อยู่ IP Raspberry PI บนเครือข่ายท้องถิ่นโดยไม่ต้องเชื่อมต่อ Raspberry กับจอภาพ ฉันจะทำมันบนระบบ Linux หรือ Mac OS ได้อย่างไร



แอพ Lan scan บนสมาร์ทโฟนจะแสดงอุปกรณ์ทั้งหมดในเครือข่ายของคุณ

คำตอบ:


90

ราสเบอร์รี่อุปกรณ์ทั้งหมดที่อยู่ MAC เริ่มต้นด้วยB8: 27: EB

ดังนั้นบนระบบ* nixสิ่งนี้สามารถทำได้โดยการรันคำสั่งต่อไปนี้:

sudo nmap -sP 192.168.1.0/24 | awk '/^Nmap/{ip=$NF}/B8:27:EB/{print ip}'

ที่192.168.1.*จะเป็นหน้ากากเครือข่ายท้องถิ่นของคุณ คุณจะได้รับคำตอบเช่น:

Nmap scan report for raspberrypi.localnetwork.lan (192.168.1.179)

192.168.1.179 เป็นที่อยู่ IP Raspberry Pi ในเครือข่ายของคุณ

หากคุณใช้ระบบMacคุณสามารถใช้Homebrewเพื่อติดตั้งnmap :

brew install nmap

บนWindowsคุณอาจใช้Wiresharkและใช้ตัวกรองการแสดงผลต่อไปนี้:

eth.addr[0:3] == B8:27:EB

2
หรือมีท่อน้อย:nmap -sP 192.168.1.0/24 | awk '/^Nmap/{ip=$NF}/B8:27:EB/{print ip}'
2557

2
ขอบคุณ @ripat ที่กระชับมากขึ้น - อัปเดต! รายละเอียดเล็ก ๆ น้อย ๆ คุณจะต้องเรียกใช้ในฐานะผู้ดูแลระบบมิฉะนั้น nmap จะไม่แสดงที่อยู่ MAC
เจ. คอสตา

3
คุณจะไม่ซาบซึ้งถึงความสำคัญของคำตอบนี้จนกว่าคุณจะได้ลองค้นหา raspberrypi ของคุณในการตั้งค่าสำนักงานโดยที่ DH ถูกใช้โดย DHCP ขอบคุณสำหรับ @ripat นี้
Voke Ransom Anighoro

1
คำตอบนี้ไม่ได้ผลสำหรับฉันเนื่องจาก nmap ไม่ได้แยกชื่อโฮสต์ให้ฉัน อย่างไรก็ตามมันเป็นแรงบันดาลใจให้ฉันค้นหาพอร์ต ssh แบบเปิดด้วย nmap และนั่นทำให้ฉันสามารถค้นหา pi: sudo nmap -p 22 --open -sV 192.168.0.0/24 ต่อการโพสต์ของผู้ชายคนนี้
Ross Rogers

"sudo nmap -sP 192.168.1.0/24" ไม่เพียงพอ (ทำให้ฉันเบื่อ)
Marian Paździoch

48

หากคุณใช้ MacOS หรือ Linux ลองสิ่งนี้:

$ arp -na | grep -i b8:27:eb

บน windows คุณสามารถใช้:

arp -a | findstr b8-27-eb

3
โซลูชันนี้เร็วกว่าโซลูชัน nmap มาก!
ryanm

วิธีนี้ใช้ได้ผลกับฉันไม่เหมือนกับโซลูชัน nmap ที่ให้เฉพาะส่วนของรายการ
Wilbert

7
สิ่งนี้จะแสดงเฉพาะโฮสต์ที่ทำให้มันเป็นตาราง arp ของคุณดังนั้นบางครั้งก็พลาดโฮสต์ที่เงียบ มันอาจช่วยในการสแกน nmap ครั้งแรก
โจเซฟ Sheedy

มันอาจ แต่สำหรับฉันนี้ไม่เคยล้มเหลว นอกจากนี้ยังเป็นความพยายามครั้งแรกที่ง่าย
amenthes

ขอบคุณสำหรับสิ่งนี้. ฉันแก้ไขมันเล็กน้อยและใช้arp -n | awk '/b8:27:eb/ {print $1}'ตอนนี้
0x01

8

ฉันใช้ mDNS / Bonjour เพื่อให้ Pi ชื่อท้องถิ่นของฉันเช่น pi.local ฉันไม่จำเป็นต้องรู้ว่ามันคือที่อยู่ IP และมันใช้งานได้กับทางลัดและเมื่อคุณต้องฝังลิงก์ ...

อย่างไรและทำไมต้องกำหนดชื่อท้องถิ่นให้กับ Pi ของคุณ


น่ากลัว! ฉันเคยคลุกคลีกับ/etc/hostsท้องถิ่นเพื่อรับฟังก์ชั่นนี้บนเดสก์ท็อปของฉันนี่เป็นทางออกที่ดีกว่ามาก! ขอบคุณมากสำหรับตัวชี้!
0x01

7

หากคุณต้องการใช้แอปพลิเคชัน GUI คุณสามารถใช้Yakalaเครื่องมือ ( https://github.com/mozcelikors/yakala ) สำหรับ Debian / Ubuntu เครื่องมือนี้ช่วยคุณไม่เพียง แต่ค้นหาเครือข่าย Type B และ Type C ที่มีอยู่ แต่ยังช่วยให้คุณสามารถ SSH เข้าสู่เครือข่ายได้โดยตรง:

sudo add-apt-repository ppa:mozcelikors/yakala
sudo apt-get update
sudo apt-get install yakala

หรือ

git clone https://github.com/mozcelikors/yakala
cd yakala && sudo ./install.sh

https://raw.githubusercontent.com/mozcelikors/yakala/master/docs/img/peekx2.gif

ข้อจำกัดความรับผิดชอบ:ฉันเป็นผู้สร้างของ Yakala ข้อเสนอแนะ / ข้อบกพร่องใด ๆ ที่จะดำเนินการอย่างจริงจังมาก


1
ระบบเครือข่ายที่มีระดับถูกทิ้งร้างในปี 1993 ซึ่งเป็นเวลานานมากแล้ว
การแข่งขัน Lightness ใน Orbit

เครือข่าย classfull คืออะไร?
เดนิส

6

โดยค่าเริ่มต้นชื่อของราสเบอร์รี่คือ raspberrypi คุณสามารถเพียง 'ping raspberrypi' และ ICMP echo reply จะให้ที่อยู่ IP แก่คุณ มันใช้งานได้สำหรับฉัน ตรวจสอบให้แน่ใจว่าเซิร์ฟเวอร์ DHCP สามารถเข้าถึงได้เนื่องจาก NIC ของราสเบอร์รี่เป็นค่าเริ่มต้นในโหมดไคลเอนต์ DHCP มิฉะนั้นราสเบอร์รี่จะได้รับที่อยู่ APIPA


4

ใน linux และ MAC คุณยังสามารถพิมพ์ "arp - a" ในเทอร์มินัลและคุณสามารถรับรายการอุปกรณ์ที่เชื่อมต่อค้นหาอุปกรณ์ที่มี B8 ในนั้นตัวอย่างเช่น 192.168.4.5 @ B8 ... จะเป็น IP ราสเบอร์รี่


3

หรือคุณสามารถเข้าถึงเราเตอร์ของคุณผ่านเบราว์เซอร์และค้นหาอุปกรณ์ android ของคุณ - เกือบทุก GUI ของเราเตอร์มีบริการที่คุณสามารถตรวจสอบอุปกรณ์ทั้งหมดที่เชื่อมต่อกับเครือข่ายของคุณ


3

หากคุณใช้ MacOS ให้ใช้PiFinderเป็นแอปพลิเคชั่นที่จะบอกคุณถึง IP ของ Raspberry Pi บนเครือข่ายของคุณ


3

ฉันใช้แอพFingฟรีในสมาร์ทโฟน Android ของฉัน มันสแกนเครือข่ายและแสดงอุปกรณ์ที่เชื่อมต่อตามประเภทรวมถึง Raspberry Pi รวมถึงการสแกนพอร์ตที่มี สะดวกในการดูว่าเปิดใช้งาน SSH, เว็บหรือ VNC แล้วหรือยัง


2

คัดลอกสิ่งต่อไปนี้ลงใน Terminal / Console / Shell:

for i in $(jot - 1 254); do ping -t 1 192.168.1.$i && arp -a | cut -f 2,4 -d " " | tr [:lower:] [:upper:] | grep B8:27:EB; done

โปรดปรับ192.168.1 ไปยังเครือข่ายส่วนตัวของคุณ

ผลลัพธ์จะมีลักษณะดังนี้:

(192.168.1.109) B8: 27: EE: DD: CC: A

192.168.1.109 จะเป็น IP ของ Raspberry Pi ของคุณ… :)


2

ใส่สิ่งนี้ใน pi.php บนเว็บเซิร์ฟเวอร์ของคุณ:

<?php
$fp = fopen('pi', 'w');
fwrite($fp, $_REQUEST['ip'],1000);
fclose($fp);
?>

คุณอาจต้องสร้างไฟล์ pi บนเว็บเซิร์ฟเวอร์ของคุณด้วยสิทธิ์การเขียนสำหรับเว็บเซิร์ฟเวอร์ของคุณ

ใส่

curl http://yourwebserver/pi.php -d ip=`hostname -I`

ใน /etc/rc.local บน pi ของคุณ

รับ IP ของ pi ของคุณโดยไปที่http: // yourwebserver / pi


2

เมื่อใช้การติดตั้งใหม่ของ NOOBS หรือ Raspbian ชื่อโฮสต์เริ่มต้นคือ "raspberrypi" และในการกำหนดค่าเครือข่ายบางอย่าง (เช่นถ้า mDNS ใช้งานอยู่และกำหนดค่า) คุณสามารถใช้ "raspberrypi.local" อีกตัวเลือกหนึ่งคือเรียกใช้arp -aและค้นหา raspberrypi

หมายเหตุ: วิธีนี้ใช้ไม่ได้กับทุกอินสแตนซ์


คำตอบนั้นดูเหมือนจะรวมหลายสิ่งเข้าด้วยกัน: เวอร์ชั่น IP ที่ต่างกัน, DNS และอาจจะเป็น mDNS ไม่ว่าจะ.localสามารถใช้งานได้หรือไม่นั้นขึ้นอยู่กับ IPv6 และไม่ได้มีเราเตอร์อยู่ด้วย เมื่อรองรับ mDNS แล้ว pi-name.local จะแก้ไข IPv6 หรือไม่ โฮมเราเตอร์บางตัวยังใช้. local เป็นโดเมน DNS ภายในเครื่องอีกครั้งสิ่งนี้ไม่ขึ้นอยู่กับ IPv6 และขึ้นอยู่กับรุ่นของเราเตอร์ โฮมเราเตอร์บางตัวใช้โดเมนที่ต่างกันเช่น pi-name.fritz.box
TheDiveO

2

เราเตอร์ของฉันกำหนดระบบที่อยู่ IP ที่ค้นพบใหม่เริ่มต้นที่ 192.168.1.2 ตามลำดับ ฉันผ่านทุกระบบในบ้านของฉันในวันหนึ่งและที่อยู่ที่สงวนไว้สำหรับพวกเขา

ด้วยวิธีนี้เมื่อฉันสร้างระบบใหม่โอกาสที่ไอพีแอดเดรสของมันจะเป็น 192.169.1.18

อีกวิธีในการใช้ซีเรียลคอนโซล คุณสามารถใช้โปรแกรมเทอร์มินัลอนุกรมเพื่อเข้าสู่ระบบ raspberry pi ของคุณ ฉันขอแนะนำให้ใช้การตั้งค่า 8N1 (8-bit, parity bit, 1 stop bit) ด้วยความเร็ว (baud rate) 115,200 คุณต้องใช้ตัวเชื่อมต่อ USB เป็นอนุกรม (3V3)


1

ฉันคิดว่าคุณไม่สามารถเชื่อมต่อกับคุณ PI มิฉะนั้นคุณจะรู้ว่า IP ของมัน

หากคุณไปที่หน้าเราเตอร์ของคุณ (โดยปกติแล้วจะเป็น 192.168.1.1 ในเบราว์เซอร์ของคุณ) คุณควรมีส่วนที่มีอุปกรณ์ที่เชื่อมต่ออยู่แล้ว คุณสามารถลองเสียบและถอดปลั๊ก PI ได้ (และอุปกรณ์หนึ่งอันควรปรากฏขึ้น / หายไปจากรายการ)


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