私は現在、WiFiカードでNAS)を使用してパドレス用のWiFiホットスポットを設定しています。
セットアップ:Ubuntu 13.10
Hostapdはeth0(br0)とブリッジされており、手動で再起動するとうまく機能します
Sudoサービスhostapdの再起動
*高度なIEEE802.11管理hostapdを停止しています[OK]
*高度なIEEE802.11管理hostapdを開始しています[OK}
ただし、再起動するとSSIDが表示されますが、接続しようとすると、ワイヤレスデバイスから(認証エラー/不正なパスワード)が表示されます。
上記のコマンドをssh/localターミナルで実行すると、すべてのデバイスが完全に接続されます。
これを回避するために、遅延cronジョブを追加してサービスを再起動してみました。
@reboot sleep 30; /fixscripts/hostapdstart.sh
上記と同様の形式で、サービスを停止して60秒後に開始するスクリプトも作成しました。 (SSIDが消え、60秒後に再び表示されるため、スクリプトは実行されたと思います)。
ただし、元の問題によると、wifiデバイスには引き続き認証エラーが表示され、以前と同様に、ログオンしてサービスを手動で再起動すると機能します。
以下は私のhostapd.confです。
ssid = Caprica
wpa_passphrase = mypassword
interface = wlan0
bridge = br0
auth_algs = 3
channel = 7
driver = nl80211
hw_mode = g
ieee80211n = 1
wmm_enabled = 1
logger_stdout = -1
logger_stdout_level = 2
max_num_sta = 5
rsn_pairwise = CCMP
wpa = 2
wpa_key_mgmt = WPA-PSK
wpa_pairwise = TKIP CCMP
以下の修正は「機能しました」が、デバイスは短時間で切断されました。最終的に、インストールしたUbuntu 12.04をクリーンアップしましたが、すべて正常に動作しているようです。
RcXファイルからhostapdサービスを削除して、サービスが自動的に開始されないようにします。
Sudo update-rc.d -f hostapd remove
起動直後にサービスを開始するためのcronジョブを提供します
Cronファイルを変更するには;
Sudo crontab -e
これが私が追加したCronJobsです。
@reboot sleep 10; /fixscripts/hostapdstart.sh
@ restart sleep 25; /fixscripts/hostapdrestart.sh
これにより、起動から10秒後にサービスが開始され、15(25-10)秒後にサービスが再開されます。
Hostapdベースのアクセスポイントを再起動した後、クライアント(Androidフォン)が自動的に再接続せず、SSID名の下に「認証の問題」と表示されたため、パスワードを再入力する必要がありました。
/ dev/randomの代わりに/ dev/urandomを使用していることがわかりました(これはブロックされ、認証タイムアウトを引き起こします)
たとえば、/ etc/rc.localでこれを使用します:
#!/bin/bash
if [ ! -f /dev/random.orig ] ; then
mv /dev/random /dev/random.orig
ln /dev/urandom /dev/random
fi
または(賢明だと思う場合)代わりにhavegedをインストールします(/ dev/randomをブロックせずにエントロピーをインクリメント(?)する) )問題を解決していました。
例:
apt-get install haveged