キーボード・マウス・ディスプレイ無しでRaspberry Pi 3 にノートパソコンから有線接続・SSHログインして、WiFi接続の設定をしてみました。以下は、すべてノートPCのターミナルでの作業です。
環境
- 使用キット:Raspberry Pi 3 スターターキット(スイッチサイエンス)
- RaspbianOSがインストールされたmicroSDカード付き
- パソコン:Lubuntu をインストールしたノートPC(SONY VAIO VGN-FZ52B)
- 無線インターフェイスwlp6s0(192.168.11.19/24) ※無線APからDHCPで設定
- 有線インターフェイスenp8s0(10.0.0.1/24)
- 無線AP
- IPアドレス 192.168.11.1
- ESSID “SampleAP”
- WPA2-PSK/TKIP
- 共有キー”abcd1234″
DHCPサーバの準備
無線LANルータにRaspberryPiを有線接続すれば、この作業は必要ないと思います。しかし、Piに割り当てられたIPアドレスの確認とその後のSSHログインが簡単にできるので、ノートPCのLinuxでDHCPサーバを立ち上げました。
取り急ぎのDHCP設定(ノートPCのLinux)は次のとおりです。subnet以外の設定は、デフォルト又は適当です。
ishidate@sony:~$ cat /etc/dhcp/dhcpd.conf | grep -v ^# ddns-update-style none; option domain-name "example.jp"; option domain-name-servers 192.168.11.1; default-lease-time 600; max-lease-time 7200; log-facility local7; subnet 10.0.0.0 netmask 255.255.255.0 { range 10.0.0.2 10.0.0.254; option routers 10.0.0.1; } ishidate@sony:~$ sudo /etc/init.d/isc-dhcp-server restart [sudo] ishidate のパスワード: [ ok ] Restarting isc-dhcp-server (via systemctl): isc-dhcp-server.service. ishidate@sony:~$
Raspberry Piへの接続
RaspberryPiの初期設定は、DHCP、SSH共に有効だったので、ノートPCとPiをストレートケーブルで繋ぎ、IPアドレスを確認したあと、すぐにSSHのログインが成功しました。
ishidate@sony:~$ sudo tail /var/log/syslog | grep raspberrypi Dec 28 21:57:41 sony dhcpd[4184]: DHCPREQUEST for 10.0.0.4 from b8:27:eb:**:**:** (raspberrypi) via enp8s0 Dec 28 21:57:41 sony dhcpd[4184]: DHCPACK on 10.0.0.4 to b8:27:eb:**:**:** (raspberrypi) via enp8s0 ishidate@sony:~$ ssh 10.0.0.4 -l pi The authenticity of host '10.0.0.4 (10.0.0.4)' can't be established. ECDSA key fingerprint is SHA256:5DIl6fv0G1KBDw4nKQPilCefNl6lP52Z8CpfZVV1pYQ. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '10.0.0.4' (ECDSA) to the list of known hosts. pi@10.0.0.4's password: raspberry The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. Last login: Fri May 27 11:50:25 2016 pi@raspberrypi:~ $ ifconfig eth0 Link encap:Ethernet HWaddr b8:27:eb:**:**:** inet addr:10.0.0.4 Bcast:10.0.0.255 Mask:255.255.255.0 inet6 addr: fe80::****:****:****:****/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:111 errors:0 dropped:0 overruns:0 frame:0 TX packets:111 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:10312 (10.0 KiB) TX bytes:15523 (15.1 KiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:192 errors:0 dropped:0 overruns:0 frame:0 TX packets:192 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1 RX bytes:15552 (15.1 KiB) TX bytes:15552 (15.1 KiB) wlan0 Link encap:Ethernet HWaddr b8:27:eb:**:**:** inet6 addr: fe80::****:****:****:****/64 Scope:Link UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:119 errors:0 dropped:119 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:46967 (45.8 KiB) TX bytes:0 (0.0 B) pi@raspberrypi:~ $
WiFiの設定
@0tofuの備忘録…さんのサイトに大変簡潔で分かりやすい説明がありましたので、参考(いや、ほぼそのまま)に無線接続の設定を行いました。ありがとうございます。インターフェイスwlan0の再起動後に、アクセスポイントからIPアドレス192.168.11.21が割当てられているのが確認できます。
pi@raspberrypi:~ $ sudo su root@raspberrypi:/home/pi# cat /etc/wpa_supplicant/wpa_supplicant.conf country=GB ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 root@raspberrypi:/home/pi# wpa_passphrase "SampleAP" "abcd1234" >> /etc/wpa_supplicant/wpa_supplicant.conf root@raspberrypi:/home/pi# vi /etc/wpa_supplicant/wpa_supplicant.conf root@raspberrypi:/home/pi# cat /etc/wpa_supplicant/wpa_supplicant.conf country=JP ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="SampleAP" #psk="abcd1234" psk=aba12d6b3421256e08c78e5ca705b9ce36dc2790f295f47cdc038657d1e5fae8 } root@raspberrypi:/home/pi# ifdown wlan0 root@raspberrypi:/home/pi# ifup wlan0 root@raspberrypi:/home/pi# ifconfig wlan0 wlan0 Link encap:Ethernet HWaddr b8:27:eb:**:**:** inet addr:192.168.11.21 Bcast:192.168.11.255 Mask:255.255.255.0 inet6 addr: fe80::****:****:****:****/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:440 errors:0 dropped:412 overruns:0 frame:0 TX packets:86 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:154753 (151.1 KiB) TX bytes:16201 (15.8 KiB) root@raspberrypi:/home/pi#
※途中、country=JPに修正しています。
WiFi経由のSSH接続
SSHでログインできることが確認できます。
ishidate@sony:~$ ssh 192.168.11.21 -l pi pi@192.168.11.21's password: raspberry The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. Last login: Fri May 27 12:09:15 2016 from 192.168.11.19 pi@raspberrypi:~ $
実は、10数台のPiの設定を行う必要があって、楽をできる方法を模索した結果でした。