読者です 読者をやめる 読者になる 読者になる

min117の日記

初期desireもち。趣味Mac,メインFedora,仕事xp。

RaspberryPi 3 自宅と職場それぞれの無線環境に固定IPで自動接続する(複数WiFi対応)

 

RaspberryPi(USB無線LAN子機付き)を持ち運んだ先で、自動でWiFiに接続されるようにしたい。

↓ 青く光るのが無線LAN子機

f:id:min117:20160718064859j:plain

RaspberryPiの電源さえ入れれば、自宅にいるときは自宅のWiFiに、職場なら職場WiFiに、自動で繋がるようにする。

ーーー

仮に

 自宅無線LAN → 192.168.3.***

 職場無線LAN → 192.168.2.***

と仮定して設定する。

ーーー

まずは自宅無線LANSSIDへの接続に使うパスワードを用意する。

 SSIDJITAKU

 パス:password

だとすると

# sudo -s

wpa_passphrase JITAKU password

wpa_passphraseコマンドを使ってpasswordを暗号化する)

 

f:id:min117:20160718065747p:plain

psk=46808… という長い文字列が、暗号化されたパスワード。

ーーー

同じように、職場SSIDの分も用意する。

 SSIDSYOKUBA

 パス:password2

だとすると

# sudo -s

# wpa_passphrase SYOKUBA password2

f:id:min117:20160718070248p:plain

これで、自宅と職場それぞれのSSIDと、それに対応するパスワード(psk)ができた。あとはこれをRaspberryPiの設定に埋め込めばいい。

ーーー

# vim /etc/wpa_supplicant/wpa_supplicant.conf

f:id:min117:20160718070556p:plain

自宅と職場それぞれの設定を記載する。

f:id:min117:20160718072206p:plain

ssid

 自宅WiFiSSIDを記載する。

proto

 接続に使うプロトコル(接続方式)。WPA-PSK2を使うので「WPA2」とする。

key_mgmt

 WPA-PSK2 で接続する場合であっても「WPA-PSK」とする(末尾に2は付けない)。

pairwise

 「TKIP CCMP」としておけばOK。

group

 「CCMP」としておけばOK。

#psk

 行ごと消してOK(シャープでコメントアウトされている。備忘のためだけ。あるとパスワードが丸見えだから、消したほうがいいと思う)。

psk

 6行目のSSIDに対応したパスワード。事前にwpa_passphraseコマンドで作っておいた文字列をコピペする。

id_str

 設定を一意に識別するための文字列。複数WiFiに対応する際のキモ。このあと、/etc/network/interfaces を編集するときに使う。

ーーー

最後に、上記で作った id_str を無線LANのインターフェースに割り当てる。

# sudo -s

# vim /etc/network/interfaces

f:id:min117:20160718072555p:plain

f:id:min117:20160718073416p:plain

# interfaces(5) file used by ifup(8) and ifdown(8)

# Please note that this file is written to be used with dhcpcd

# For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf'

# Include files from /etc/network/interfaces.d:

source-directory /etc/network/interfaces.d

 

auto lo

iface lo inet loopback

 

iface eth0 inet static

address 192.168.3.30

netmask 255.255.255.0

gateway 192.168.3.1

 

allow-hotplug wlan0

iface wlan0 inet manual

wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

iface default inet dhcp

 

iface wlan_JITAKU inet static

address 192.168.3.31

netmask 255.255.255.0

gateway 192.168.3.1

 

iface wlan_SYOKUBA

inet static

address 192.168.2.31

netmask 255.255.255.0

gateway 192.168.2.254

 

#wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

iface default inet dhcp

ーーー

ここまでできたら、あとはRaspberryPiを再起動すれば、いる場所(自宅or職場)の無線LANに繋がる。

ーーー

2016/11/27追記

もっとわかりやすく結論だけまとめた。

min117.hatenablog.com