foo are you, man.

基本的には技術ネタ書きます. 備忘録的な感じで行きます!

ディスプレイ無しでRaspberry Piをセットアップした時のIPアドレス

4kとかそこらで変えるRaspberry Pi。小さいパソコンだけに、その利点を活かすべくラズパイ自体にはあまりごちゃごちゃと周辺機器は接続したく無いですよね。
自分の場合ですがラズパイ自体には一回もディスプレイは接続したことはありません。


さて、LANにラズパイを参加させてあげるとDHCPさんのお陰でプライベートIPアドレスが振り当てられる訳ですが、ラズパイセットアップwithoutディスプレイを行うにはこのIPアドレスを何とかしてでも知る必要があります。
もちろんルータによっては設定画面から接続されている機器のIPアドレスがわかったりもするので自分で差分チェックすればめでたくラズパイのIPアドレスは取得できます。
しかし我が家のルータはどうやらそういった機能は無いようでした。


さて、ここでMACアドレス解決のarpとかブルートフォースよろしく総当りでping飛ばしまくるソフトとか色々ありますが自分の場合Pythonでサクッとスクリプトを書いてあげました。

import os
for val in range(256):
    os.system("ssh pi@192.168.0.%d"%val)

我が家のプライベートIPアドレスはクラスCなので192.168.0.はハードコーディングです。
あとはsshを叩いてくれるのでスクリプトを動かして放っておけばそのうちラズパイに接続されてるだろうっていうアレです。
自分の場合192.168.0.3だったのですぐ終わりましたが環境によってケースバイケースです。
しかも、正確には192.168.(0~255).(0~255)なのでこのスクリプトでは歯が立たない場合もあるはず。。。


突っ込みどころ満載ですが、Pythonを使えばこういう事も簡単にできるよ!っていうアピールということでw(シェルスクリプトでいいじゃん!っていうのは置いておいて)
ちなみに見事ラズパイのIPアドレスが割り出せ、sshでログインできたらあとはtightvncserverとか入れてあげて仮想デスクトップでGUI操作できるようにしておけばかなり便利だと思います!
それでは!