Raspberry Pi で Wi-Fi が一度切れると二度と繋がらない、という現象に遭遇した。しかたないので変なことをした。
#!/bin/sh
msg() {
echo $1
logger $1
}
while true
do
if ifconfig wlan0 | grep -q "inet addr:"; then
sleep 60
else
msg "Network connection down! Attempting reconnection."
ifdown --force wlan0
sleep 5
ifup wlan0
/etc/init.d/dhcpcd reload
sleep 30
fi
done
ifplugd とかも触ってみたけど、これが結局確実っぽい。なんかどうも dhcpd が ifup 時に反応してくれなくて、手動で reload してる。うーん。もっと一発で解決する方法があればいいんだけど……