Raspberryをモニターに接続せずに、ローカルネットワークでRaspberry PIIPアドレスを検索する必要があります。 LinuxまたはMacOSシステムでそれを行うにはどうすればよいですか?
コメント
- の重複の可能性IPアドレスを知らなくてもラズベリーパイにSSHで接続する
- スマートフォンのLANスキャンアプリは、ネットワーク上のすべてのデバイスを表示します。
回答
すべてのラズベリーデバイスのMACアドレスは B8:27:EB で始まります(RPi4 Bの場合、dc:a6:32
、必要に応じて置き換えます。
したがって、* nix システムでは、これを実現できます。次のコマンドを実行します。
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はネットワーク上のRaspberryPiIPアドレスです。
Mac システムでは、自作を使用してインストールできます nmap :
brew install nmap
Windows 、 Wireshark を使用し、次の表示フィルターを使用できます:
eth.addr[0:3] == B8:27:EB
コメント
- またはパイプが少ない場合:
nmap -sP 192.168.1.0/24 | awk '/^Nmap/{ip=$NF}/B8:27:EB/{print ip}'
- @ripatに感謝します、それはもっとたくさんです簡潔-更新されました!少し詳しく説明しますが、管理者として実行する必要があります。そうしないと、nmapはMACアドレスを表示しません。
- オフィス環境でラズベリーパイを頭のない場所で見つけようとするまで、この回答の重要性を理解することはできません。 IP ‘は、DHCPを使用してディッシュアウトされます。この@ripatに乾杯
- nmapが’吐き出さなかったため、この回答は’うまくいきませんでした私のホスト名。ただし、nmapを使用して開いているsshポートを検索するように促されたため、piを見つけることができました:
sudo nmap -p 22 --open -sV 192.168.0.0/24
guy ‘の投稿。 - isn ‘ t ” sudo nmap -sP 192.168.1.0/24 “十分ですか(私にとっては心配でした)?
回答
MacOSまたはLinuxを実行している場合は、次の方法を試してください。
$ arp -na | grep -i b8:27:eb
Windowsでは、次のことができます。使用:
arp -a | findstr b8-27-eb
RPi 4Bでは、比較のために別の文字列を使用する必要があります(dc:a6:32:be:95
)。 RPiで確認してください
ip -br link
各ネットワークカードのエントリがあります。eth0
はケーブルインターネットです。 wlan0
はWiFiです。
コメント
- このソリューションはnmapソリューションよりもはるかに高速です!
- このソリューションは、thとは異なり、私にとってはうまくいきましたリストの一部のみを提供するnmapソリューション。
- これにより、arpテーブルに追加されたホストのみが表示されるため、静かなホストを見逃すことがあります。最初にnmapスキャンを実行すると役立つ場合があります。
- そうかもしれませんが、私にとってはこれが失敗することはありませんでした。さらに、’最初の試みは簡単です。
- ありがとうございます。少し変更して、今は
arp -n | awk '/b8:27:eb/ {print $1}'
を使用しています。
回答
mDNS / Bonjourを使用して、Piにpi.localのようなローカル名を付けています。 IPアドレスを知る必要はありません。これはショートカットで機能し、リンクを埋め込む必要がある場合は…
コメント
- すごい!以前は
/etc/hosts
ローカルでこの機能をデスクトップに表示するには、これははるかに優れたソリューションです!ポインタをありがとうございます!
回答
GUIアプリケーションを使用する場合は、Yakala
ツール( https://github.com/mozcelikors/yakala )Debian / Ubuntuの場合。このツールは、使用可能なタイプBおよびタイプ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
免責事項:私はYakalaの作成者です。提案やバグはすべて真剣に受け止められます。
コメント
- クラスフルネットワークは、非常に昔の1993年に廃止されました。
- クラスフルネットワーキングとは何ですか?
回答
デフォルトでは、ラズベリーの名前はraspberrypiです。「pingraspberrypi」を実行するだけで、ICMPエコー応答によってIPアドレスが提供されます。それは私のために働いた。ラズベリーのNICはデフォルトでDHCPクライアントモードであるため、DHCPサーバーに到達できることを確認してください。そうでない場合、ラズベリーはAPIPAアドレスを取得します。
回答
LinuxおよびMACでは、ターミナルに「arp –a」と入力して、接続されているデバイスのリストを取得し、B8が含まれているデバイスを探します。例:192.168.4.5 @ B8 …はラズベリーパイIPになります。
回答
無料の Fing アプリ。ネットワークをスキャンし、接続されているデバイスをRaspberry Piなどのタイプ別に表示し、使用可能なポートをスキャンします。SSH、Web、またはVNCが有効になっているかどうかを確認するのに便利です。実行中です。
回答
または、ブラウザからルーターにアクセスしてAndroidデバイスを見つけることもできます。ほとんどすべてのルーターGUIには現在ネットワークに接続されているすべてのデバイスを確認できるサービス。
回答
MacOSを実行している場合は、 PiFinder を使用します。これは、ネットワーク上のRaspberryPiのIPを通知するアプリケーションです。
回答
以下をターミナル/コンソール/シェルにコピーします:
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がRaspberryPiのIPになります…:)
回答
これをWebサーバーのpi.phpに入れます:
<?php $fp = fopen("pi", "w"); fwrite($fp, $_REQUEST["ip"],1000); fclose($fp); ?>
WebサーバーにWebの書き込み権限を持つファイルpiを作成する必要がある場合がありますサーバー。
パイの/etc/rc.localに
curl http://yourwebserver/pi.php -d ip=`hostname -I`
を配置します。
IPを取得します。 http://yourwebserver/pi
回答
NOOBSまたはRaspbianの新規インストールを使用する場合、デフォルトのホスト名は「raspberrypi」であり、一部のネットワークではオークの構成(つまりmDNSが使用され、構成されている場合)「raspberrypi.local」を使用できます。もう1つのオプションは、arp -a
を実行してraspberrypiを探すことです
注:これはすべてのインスタンスで機能するとは限りません。
コメント
- その答えはいくつかのことを混同しているようです:異なるIPバージョン、DNS、そしておそらくmDNS。
.local
を使用できるかどうかは通常ありません’ tはIPv6に依存し、ルーターが存在することにも依存しません。mDNSサポートが利用可能な場合、pi-name.localはIPv6であるかどうかを解決します。一部のホームルーターは.localをローカルDNSドメインも、IPv6に依存せず、ルーターモデルによって異なります。一部のホームルーターは、pi-name.fritz.boxなどの異なるドメインを使用します。
回答
ルーターは、新しく検出されたシステムに192.168.1.2から始まるIPアドレスを順番に割り当てます。ある日、自宅のすべてのシステムを調べて、それらのアドレスを予約しました。
そうすれば、新しいシステムを作成するときに、そのIPアドレスが192になる可能性があります。 .169.1.18。
シリアルコンソールを使用する別の方法。ラズベリーパイにログインするには、シリアルターミナルプログラムを使用できます。 115,200の速度(ボーレート)で8N1(8ビット、パリティビットなし、1ストップビット)設定を使用することをお勧めします。 「USB-シリアル(3V3)コネクタが必要です。
回答
Androidの場合は「Fing」または「NetAnalyzer」 。ネットワーク全体を表示します。
回答
Windowsを使用している場合は、このスクリプトを試してみることをお勧めします。ほとんどの場合、 「arp-a」コマンドに基づいていますが、余分な掘り下げを省き、RaspberryがまだArpテーブルにない場合に役立ちます。
次の内容のテキストファイルを作成し、名前を次のように変更します。 find_raspberry_pi.bat
@echo off :: This script, run from a Windows (10) machine, finds a Raspberry Pi on local network set raspIp= set myip= set subnet= :: Get IP for local PC for /f "tokens=1-2 delims=:" %%a in ("ipconfig^|find "IPv4"") do set myip=%%b set myip=%myip:~1% echo IP for local PC: %myip% :: Get subnet set subnet=%myip% setlocal enabledelayedexpansion for /l %%a in (1,1,31) do if NOT "!subnet:~-1!"=="." set subnet=!subnet:~0,-1! set subnet=%subnet:~0,-1% setlocal disabledelayedexpansion echo Subnet: %subnet% echo. :top :: Loop through arp table entries and look for Raspberry Pi"s MAC address for /f "tokens=1" %%f in ("arp -a ^| findstr b8-27-eb") do (set raspIp=%%f) if "%raspIp%"=="" ( echo Discovering network... :: Ping all IPs in subnet from 1 to 254 for /L %%N in (1,1,254) do start /b ping -n 1 -w 200 %subnet%.%%N >nul timeout 1 >nul goto :top ) else ( echo Found Raspberry PI with IP: %raspIp% ) echo. pause
免責事項:
- 私は元のスクリプトの作成者ではありません。RaspberryPiで動作するように少し調整しました。残念ながら、元の寄稿者が見つかりません。
- 防弾ではありません。スキャンを開始するサブネットが正しくない場合は機能しません。
それでも、何度も使用しましたが、それは「簡単な解決策
回答
2020年には、Raspberry Piに異なる範囲のMACアドレスが付属しているため、受け入れられた回答は機能しなくなりました。 「新しい」MACをコメントとして追加することもできますが、文字列はモデルごとに何度も変更される可能性があります。これは、より将来性のあるものです。
$ sudo nmap -sP 192.168.150.0/24 |grep "Raspberry Pi Trading" -B2 Nmap scan report for pi4-01.lan (192.168.150.186) Host is up (0.037s latency). MAC Address: DC:A6:32:1B:35:6A (Raspberry Pi Trading)
上記の主な違い:MACパターンを想定せず、このラベルは
自体。nmap
は継続的に更新されるため、Raspberry Pi MACアドレスの内部テーブルが含まれ(または他の基準を使用して検出)、次のように想定できます。
警告:スキャンで、使用していることがわかっているすべてのPiが識別されない場合ネットワークに接続してから、スキャンを最大10回繰り返します。ネットワークPower Management:on
を持つPiは、スキャンに常に応答するとは限りません。
電源管理はLAN上で複数のPiをスキャンしている場合は、繰り返しスキャンで1つのPiは検出されるが、別のPiは検出されない可能性があるため、問題が発生します。その場合は、スキャンを繰り返して違いを探します。 。(Piで電源管理が有効になっているかどうかを確認するには、Piにsshして実行します:/sbin/iwconfig wlan0|grep Management
)
Answer er
PIに接続できないと思います。そうしないと、IPがわかります。
ルーターページに移動した場合(通常は何かブラウザの192.168.1.1のように)そこには、すでに接続されているデバイスのセクションがあるはずです。 PIのプラグを抜き差しすることができます(リストから1つのデバイスが表示/非表示になります)
回答
これを試してください最初:
arp -a | grep -E --ignore-case "b8:27:eb|dc:a6:32"
このコマンドの2つの16進文字列(b8:27:eb|dc:a6:32
)は、2つの OUI 値は、” Foundation “がすべてのRPiデバイスの生産に使用します-RPiを介してこの記事の執筆時点でver4B。 RPiが arpキャッシュ このコマンドは、有用なものを何も生成しません。その場合は、お気に入りのエディターで次のファイルを作成し、pingpong.sh
として保存/書き込みます。
#!/bin/sh : ${1?"Usage: $0 ip subnet to scan. eg "192.168.1.""} subnet=$1 for addr in `seq 0 1 255 `; do ( ping -c 3 -t 5 $subnet$addr > /dev/null ) & done arp -a | grep -E --ignore-case "b8:27:eb|dc:a6:32"
実行可能にして実行します(ここでネットワークアドレスを使用します。必ずしも 192.168.1。):
$ chmod 755 pingpong.sh $ ./pingpong.sh 192.168.1.
結果は次のように表示される場合があります:
raspberrypi3b.local (192.168.1.131) at b8:27:eb:1:2:3 on en0 ifscope [ethernet] raspberrypi4b.local (192.168.1.184) at dc:a6:32:2:3:4 on en0 ifscope [ethernet]
この場合、ホスト名はmDNSの厚意により表示されます。mDNS/ avahi / etcを使用していない/使用していない場合、ホスト名は次の文字に置き換えられます:?
。
回答
ラズビアンはmDNS
と呼ばれるもので、ホスト名raspberrypi.local
でラズベリーパイにアクセスできます。
つまり、 「IPアドレスを検索する必要はありません。次のように接続してください:
ssh [email protected]