はじめてのRaspberry Pi – その4

開発 hironemuhironemu

これまでの記事はこちら。

はじめてのRaspberry Pi – その1

はじめてのRaspberry Pi – その2

社内勉強会 Chef & Raspberry Pi

はじめてのRaspberry Pi – その3

これまでRaspberry Piにイーサネットケーブルを接続して遊んでいましたが、これが結構面倒になってきました。

そこで、今回は、USBで接続するWi-Fiアダプタ(LogitecのLAN-W150NU2A)を購入したのでRaspberry Piに接続してみたいと思います。これで、Raspberry Piで遊ぶのが結構楽になるはずです。

環境

Raspberry Piには前回使用していた有線LAN側の設定がしてあります(前回の記事とIPが違ったりしますが、あまり気にしないでください)。Wi-Fiの設定が完了するまでは有線のネットワークからSSHで接続して設定を行います。

  • ルータ (192.168.10.1)
  • Raspberry Pi 有線インターフェース(192.168.10.201)
  • Raspberry Pi 無線インターフェース(192.168.10.202) < 今回追加する予定

USB Wi-Fiアダプタを接続

購入したWi-FiアダプタとイーサネットケーブルをRaspberry Piに接続し電源を入れます。

Wi-Fiの設定

有線側に設定したIPにSSHで接続します。その後、以下のコマンドでWi-Fiアダプタが認識されていることを確認します。wlan0が見えていればOKです。

pi@raspberrypi ~ $ ifconfig
eth0      Link encap:Ethernet  HWaddr b8:27:xx:xx:xx:xx
          inet addr:192.168.10.201  Bcast:192.168.10.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:81 errors:0 dropped:0 overruns:0 frame:0
          TX packets:56 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:10681 (10.4 KiB)  TX bytes:8011 (7.8 KiB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

wlan0     Link encap:Ethernet  HWaddr 34:95:xx:xx:xx:xx
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

次に、wpa_passphraseコマンドでSSIDとパスワードを指定し暗号化されたパスワードを取得します。以下の様な感じで出力されると思います。コメントアウトされている部分は平文のパスワードなので削除するのがいいでしょう。(コマンドの履歴も削除したほうがいいですね)

$ wpa_passphrase 001D0000B001 yourpassword
network={
    ssid="001D0000B001"
    #psk="yourpassword"
    psk=b771aca6e91cd2c7eb440fca0145125f318639ac4047cbdb227f62b7f6e2d221
}

ここで出力された内容を/etc/wpa_supplicant/wpa_supplicant.confに追加します。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

# 以下を追加
network={
        ssid="001D0000B001"
        scan_ssid=1
        proto=RSN
        key_mgmt=WPA-PSK
        pairwise=CCMP TKIP
        group=CCMP TKIP
        psk=b771aca6e91cd2c7eb440fca0145125f318639ac4047cbdb227f62b7f6e2d221
        id_str="home"
}

scan_ssidはステルスの無線APに接続する場合に必要となるようです。(ステルスでない場合はこの設定は外しておくとよいそうです)

id_str=”home”はネットワークを識別するIDになるのでわかりやすい名前をつけておきます(今回は、自宅のネットワークに接続するので”home”としています)。会社のネットワークを追加する場合にもこのファイルに同じように設定していく形になります。(これはまだ試していないので、試したらこの記事に追加しておきたいと思います)

次に、/etc/network/interfacesの設定を行います。(はじめなかなか接続設定ができなかったのですが、色々試した結果以下のようになりました。)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
auto lo

iface lo inet loopback
# iface eth0 inet dhcp
iface eth0 inet static
address 192.168.10.201
netmask 255.255.255.0

allow-hotplug wlan0
iface wlan0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

# 今回ここから追加
iface home inet static # homeはwpa_supplicant.confに設置した値
address 192.168.10.202 # IPアドレス
netmask 255.255.255.0  # ネットマスク
gateway 192.168.10.1   # ゲートウェイ(eth0のgatewayは削除)

# 以下もコメントアウト
# iface default inet dhcp

最後に、Raspberry Piを停止し、イーサネットケーブルを外してから、もう一度起動します。

今回設定した192.168.10.202にpingを飛ばし応答があれば、SSHで接続してみます。問題なく接続できれば設定完了です。

まとめ

意外と設定に手間取りました(同僚が同じように設定していたのを見ていたはずなのに)が、とりあえず、無線LANでの接続ができたのでよしとします(ここが本題ではないので・・)

これで、Raspberry Piを起動するまでの手間がだいぶ減ったので、もっと勉強してくれるでしょう(自分が)

参考サイト