Raspberry Pi 3をUpdateしたらWiFiに繋がらなくなった

久しぶりにメンテをしようと引っ張り出してきたRaspberry Pi 3。
とりあえず何も考えずに下記を行った。

 pi@raspberrypi:~ $ sudo apt-get update
pi@raspberrypi:~ $ sudo apt-get upgrade


最新版にしておけばなんとかなるっしょ!という安易な考え。
まぁこれで良く痛い目見ているんだけどね。

さぁてアップデートも終わったことだし、再起動して状態の確認でもするかな。

 pi@raspberrypi:~ $ sudo reboot


そろそろ再起動も終わったかな?どれどれSSHっと・・・。

あれ?繋がらないな・・・。
アドレス間違ったかな?ともう一度試すもやっぱり繋がらない。

あーこれはWiFiがまた認識しなくなったのかな?
実は前にもアップデートが原因でWiFiが繋がらなくなったことがあった。

その時は綺麗にしようとOSごと再インストールしてなんとか復活したのだが、
今回はそこまでやる気力が残っていない。

とりあえず有線で繋げてSSH接続を試みる。
有線LANにはDHCPで固定でアドレスが振られるようにしてあるのだ。
ルータ側にRaspberry Pi 3のMACアドレスを静的に設定してあるので、
たとえ初期化されても有線で繋げれば同じアドレスが振られるというわけだ。

これは昔痛い目を見たので、保険のために設定しておいたのだが、
こんなに早く役に立つ日が来るとは思わなかった。

ちなみに有線接続ではSSHは問題なくできた。
ということでWiFiに問題が起こっていることは明らかだ。
急いで状態を確認せねば!


WiFiの状態を確認する


とりあえずWiFiのNICを認識しているのかを確認。
前に喰らった時はNICが認識されておらず、どうしようもなかった。

 pi@raspberrypi:~ $ ifconfig
eth0: flags=xxxx<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.xx.xx netmask 255.255.255.0 broadcast 192.168.xx.xx
ether b8:27:eb:xx:xx:xx txqueuelen 1000 (イーサネット)
RX packets 227 bytes 19126 (18.6 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 207 bytes 25449 (24.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

~中略~

wlan0: flags=xxxx<UP,BROADCAST,MULTICAST> mtu 1500
ether b8:27:eb:xx:xx:xx txqueuelen 1000 (イーサネット)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0


おや?wlan0が確認できるので、今回はちゃんとWiFiが認識されているな。
ではなんだろう?

eth0と見比べるとwlan0は"running"していないのがわかる。
IPが取れていない?設定ファイルが読み込めないのかな?
ということでWiFiの設定ファイルを確認することに。

 pi@raspberrypi:~ $ sudo cat /etc/wpa_supplicant/wpa_supplicant.conf 
country=JP
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
ssid="XXXXX"
psk=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
}


むむ・・・特に変なところはないな。
なんだこれ?

GUIで見ると周りの電波は拾っているようだ。
自宅のSSIDはステルスにしているので表示はされなかったが。

他のコマンドでも確認してみる。

 pi@raspberrypi:~ $ iwconfig
wlan0 IEEE 802.11 ESSID:off/any
Mode:Managed Access Point: Not-Associated Tx-Power=31 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Power Management:on


設定ファイルは存在しているが、SSIDが取れていないのがわかる。
設定ファイルの書き方が変わったとかあるのかな?

と、ここでふと思った。
ステルスがいけないのか?
今までは問題なかったが、アップデートで追加設定が必要になったとか?


SSIDがステルスの場合の追加設定


色々と調べてみると、元々LinuxではSSIDがステルスの場合は追加設定が必要らしい。
今まで追加設定なしで繋がっていたのが不思議なのかな?
詳細は不明だが、下記を参考にさせてもらい、事象は解消した。
ありがとうございます!
※参考:ラズパイでステルスのSSIDへ内蔵WiFiで接続する

自分の場合は一行追加するだけで大丈夫だった。
対処法は設定ファイルに下記赤字を追加するだけ。

 pi@raspberrypi:~ $ sudo vi /etc/wpa_supplicant/wpa_supplicant.conf 
country=JP
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
ssid="XXXXX"
psk=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
scan_ssid=1
}


SSIDがステルスの場合は、基本この一行を追加しておくこと。
無くても繋がる場合もあるが、入れておいたほうが無難。

ファイルへの追記が終わったら、設定を反映させるために再起動をする。

 pi@raspberrypi:~ $ sudo reboot


再起動後、Interfaceの状態を確認。

 pi@raspberrypi:~ $ ifconfig
eth0: flags=xxxx<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.xx.xx netmask 255.255.255.0 broadcast 192.168.xx.xx
ether b8:27:eb:xx:xx:xx txqueuelen 1000 (イーサネット)
RX packets 67 bytes 6560 (6.4 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 80 bytes 11495 (11.2 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

~中略~

wlan0: flags=xxxx<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.xx.xx netmask 255.255.255.0 broadcast 192.168.xx.xx
ether b8:27:eb:xx:xx:xx txqueuelen 1000 (イーサネット)
RX packets 46 bytes 5802 (5.6 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 33 bytes 5125 (5.0 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0


今度はちゃんとアドレスが取れている。
iwconfigでも念の為確認。

 pi@raspberrypi:~ $ iwconfig
wlan0 IEEE 802.11 ESSID:"XXXXX"
Mode:Managed Frequency:2.472 GHz Access Point: xx:xx:xx:xx:xx:xx
Bit Rate=24 Mb/s Tx-Power=31 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Power Management:on
Link Quality=70/70 Signal level=-40 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0


こちらでもちゃんと認識しているのが確認できる。

これで不具合は解決したが、この一行の設定を追加するのに、
数時間を要してしまった・・・。
やはり今回も痛い目を見るハメになってしまった。

まぁとりあえずは良しとしよう。


今回は以上で。



これ1冊でできる! ラズベリー・パイ 超入門 改訂第4版
Raspberry Pi 1+/2/3/Zero/Zero W対応


人気記事