Tôi cần tìm địa chỉ IP Raspberry PI trên mạng cục bộ mà không cần kết nối Raspberry với màn hình. Làm cách nào để thực hiện trên hệ thống Linux hoặc Mac OS?
Tôi cần tìm địa chỉ IP Raspberry PI trên mạng cục bộ mà không cần kết nối Raspberry với màn hình. Làm cách nào để thực hiện trên hệ thống Linux hoặc Mac OS?
Câu trả lời:
Tất cả các thiết bị mâm xôi Địa chỉ MAC bắt đầu bằng B8: 27: EB .
Vì vậy, trên các hệ thống * nix , điều này có thể được thực hiện bằng cách thực hiện lệnh sau:
sudo nmap -sP 192.168.1.0/24 | awk '/^Nmap/{ip=$NF}/B8:27:EB/{print ip}'
nơi 192.168.1.*
sẽ là mặt nạ mạng địa phương của bạn. Bạn sẽ nhận được một câu trả lời như:
Nmap scan report for raspberrypi.localnetwork.lan (192.168.1.179)
192.168.1.179 là địa chỉ IP Raspberry Pi trên mạng của bạn.
Nếu bạn đang sử dụng hệ thống Mac, bạn có thể sử dụng Homebrew để cài đặt nmap :
brew install nmap
Trên Windows , bạn có thể sử dụng Wireshark và sử dụng bộ lọc hiển thị sau:
eth.addr[0:3] == B8:27:EB
nmap -sP 192.168.1.0/24 | awk '/^Nmap/{ip=$NF}/B8:27:EB/{print ip}'
sudo nmap -p 22 --open -sV 192.168.0.0/24
theo bài đăng của anh chàng này .
Nếu bạn đang chạy MacOS hoặc Linux, hãy thử cái này:
$ arp -na | grep -i b8:27:eb
Trên cửa sổ, bạn có thể sử dụng:
arp -a | findstr b8-27-eb
arp -n | awk '/b8:27:eb/ {print $1}'
ngay bây giờ.
Tôi sử dụng mDNS / Bonjour để đặt cho Pi của tôi một tên địa phương như pi.local. Tôi không cần biết địa chỉ IP của nó và điều này hoạt động cho các phím tắt và khi bạn cần nhúng một liên kết ...
/etc/hosts
địa phương để có được chức năng này trên máy tính để bàn của mình, đây là một giải pháp tốt hơn! Cảm ơn rất nhiều cho con trỏ!
Nếu bạn muốn sử dụng ứng dụng GUI cho nó, bạn có thể sử dụng Yakala
công cụ ( https://github.com/mozcelikors/yakala ) cho Debian / Ubuntu. Công cụ này giúp bạn không chỉ tìm kiếm các mạng Loại B và Loại C có sẵn mà còn giúp bạn trực tiếp SSH vào mạng:
sudo add-apt-repository ppa:mozcelikors/yakala
sudo apt-get update
sudo apt-get install yakala
hoặc là
git clone https://github.com/mozcelikors/yakala
cd yakala && sudo ./install.sh
Tuyên bố miễn trừ trách nhiệm: Tôi là người tạo ra Yakala. Bất kỳ đề xuất / lỗi được thực hiện rất nghiêm túc.
Theo mặc định, tên của quả mâm xôi là raspberrypi. Bạn chỉ có thể 'ping raspberrypi' và phản hồi tiếng vang ICMP cung cấp cho bạn địa chỉ IP. Nó làm việc cho tôi. Hãy chắc chắn rằng máy chủ DHCP có thể truy cập được vì mặc định NIC của mâm xôi ở chế độ máy khách DHCP. Nếu không, quả mâm xôi có được địa chỉ APIPA.
Trong linux và MAC, bạn cũng có thể nhập "arp - a" trong thiết bị đầu cuối và bạn có thể nhận được danh sách các thiết bị được kết nối, tìm kiếm thiết bị có B8 trong đó, ví dụ: 192.168.4.5 @ B8 ... sẽ là mâm xôi pi IP.
Nếu bạn chạy MacOS, hãy sử dụng Pi Downloader , đây là một ứng dụng sẽ cho bạn biết IP của Raspberry Pi trên mạng của bạn.
Tôi sử dụng ứng dụng Finger miễn phí trong điện thoại thông minh Android của mình. Nó quét mạng và hiển thị các thiết bị được kết nối theo loại, bao gồm Raspberry Pi, cũng như quét các cổng có sẵn. Tiện dụng để xem SSH, web hoặc VNC có được bật và chạy không.
Sao chép phần sau vào Terminal / Console / Shell của bạn:
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
Vui lòng thích ứng 192.168.1. vào mạng cá nhân của bạn.
Đầu ra sẽ trông giống như thế này:
(192.168.1.109) B8: 27: EE: DD: CC: A
192.168.1.109 sẽ là IP Raspberry Pi của bạn :)
Đặt cái này trong pi.php trên máy chủ web của bạn:
<?php
$fp = fopen('pi', 'w');
fwrite($fp, $_REQUEST['ip'],1000);
fclose($fp);
?>
Bạn có thể phải tạo tệp pi trên máy chủ web của mình với quyền ghi cho máy chủ web của bạn.
Đặt
curl http://yourwebserver/pi.php -d ip=`hostname -I`
trong /etc/rc.local trên pi của bạn.
Nhận IP của pi của bạn bằng cách duyệt http: // yourwebserver / pi
Khi sử dụng bản cài đặt mới của NOOBS hoặc Raspbian, tên máy chủ mặc định là "raspberrypi" và trong một số cấu hình mạng (ví dụ: nếu mDNS đang được sử dụng và định cấu hình), bạn có thể sử dụng "raspberrypi.local". Một lựa chọn khác là chạy arp -a
và tìm kiếm raspberrypi
LƯU Ý: Điều này sẽ không hoạt động cho mọi trường hợp.
.local
có thể được sử dụng thường không phụ thuộc vào IPv6 và cũng không phụ thuộc vào bộ định tuyến. Khi hỗ trợ mDNS có sẵn thì pi-name.local sẽ giải quyết, IPv6 hay không. Một số bộ định tuyến gia đình cũng sử dụng .local làm miền DNS cục bộ của chúng, một lần nữa, điều này độc lập với IPv6 và phụ thuộc vào mô hình bộ định tuyến. Một số bộ định tuyến gia đình sử dụng các tên miền khác nhau, chẳng hạn như pi-name.fritz.box.
Bộ định tuyến của tôi gán cho các hệ thống mới được phát hiện một địa chỉ IP bắt đầu từ 192.168.1.2, theo tuần tự. Tôi đã đi qua tất cả các hệ thống trong nhà của tôi một ngày và dành địa chỉ cho họ.
Theo cách đó khi tôi tạo một hệ thống mới, rất có thể địa chỉ IP của nó sẽ là 192.169.1.18.
Một cách khác để sử dụng bàn điều khiển nối tiếp. Bạn có thể sử dụng một chương trình thiết bị đầu cuối nối tiếp để đăng nhập vào pi mâm xôi của bạn. Tôi sẽ đề nghị sử dụng cài đặt 8N1 (8 bit, không có bit chẵn lẻ, 1 bit stop) với tốc độ (tốc độ truyền) là 115.200. Bạn sẽ cần một đầu nối USB để nối tiếp (3V3).
Tôi giả sử bạn không thể kết nối với PI của mình, nếu không bạn sẽ biết IP của nó.
Nếu bạn đi đến trang bộ định tuyến của mình (thường là một cái gì đó như 192.168.1.1 trong trình duyệt của bạn) thì bạn sẽ có một phần với các thiết bị đã được kết nối. Bạn có thể thử cắm và rút phích cắm PI (và một thiết bị sẽ xuất hiện / biến mất khỏi danh sách)
'Ngón tay' hoặc 'Phân tích mạng' trên Android. Hiển thị toàn bộ mạng của bạn.