hostapdとWifiClientの切り替え
Hostapd起動中は別途USBのWifiアダプタなどを使用しない限りWifiクライアントとして利用できないため、それを簡単に切り替えれるように設定します。
Hostapd
を利用するために設定したファイルのうち、以下のファイルを編集します。
/etc/dhcpcd.conf
/etc/sysctl.conf
/etc/network/interfaces
今回はこれらのファイルに対し、AP化オン時オフ時それぞれのファイルを作成し、設定に対して上記のファイルを差し替えます。
なお、切り替え時は~/.ap_mode
ファイルの中身が1
ならAP化オン、0
ならAP化オフにし、sudo reboot
することで設定が反映されるようにします。
Hostapdオン時の設定ファイルの退避
新しく、~/
以下に.ap
ファイルを作成します。
1 2 |
|
その後、.ap/
ディレクトリに移動し、その中にon_ap_configfiles/
, on_wifi_configfiles/
を作成します
1 2 3 |
|
なお、~/.ap/on_ap_configfiles/
内に AP化オン時の設定ファイル、~/.ap/on_wifi_configfiles/
内に AP化オフ時の設定ファイルを保存します。
Hostapdの設定を行ってあることが前提 で、次のコマンドを実行し、AP化オン時の設定ファイルをコピーします
1 2 3 4 |
|
/etc/dhcpcd.conf ファイルの編集
以下のコマンドで、dhcpcd.conf
ファイルを~/.ap/on_wifi_configfiles/
にコピーします
1 2 |
|
このコピーしてきた(~/.ap/on_ap_configfiles/
以下の)ファイルを編集します。
編集方法は簡単で、その他すべての設定ファイルについてもHostapd設定時に変更した点を戻せばいいだけです。
ファイルの末尾に記述した、
1 2 3 |
|
以上の記述を以下のようにコメントアウトします
1 2 3 |
|
/etc/network/interfaces ファイルの編集
以下のコマンドで、intefaces
ファイルを~/.ap/on_wifi_configfiles/
にコピーします
1 2 |
|
このコピーしてきた(~/.ap/on_ap_configfiles/
以下の)ファイルを編集します。
1 2 3 4 |
|
この記述を、
1 2 3 4 |
|
このように、wpa_conf ...
という記述のある行のコメントアウトを外します
/etc/sysctl.conf ファイルの編集
以下のコマンドで、sysctl.conf
ファイルを~/.ap/on_wifi_configfiles/
にコピーします
1 2 |
|
このコピーしてきた(~/.ap/on_ap_configfiles/
以下の)ファイルを編集します。
1 2 3 |
|
この記述を、
1 2 3 |
|
コメントアウトします。
自動実行されるスクリプトファイルの作成
この設定を反映させるために、起動時に実行するスクリプトを書きます。
~/.ap/
以下にtoggle_ap_wifi.sh
ファイルを作成し、ここに以下のスクリプトを記述します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
|
ここまでのディレクトリツリー
ここまでのディレクトリツリーを確認します。 以下のようになっていなかったら、再度手順を見直してください
1 2 3 4 5 6 7 8 9 10 11 12 |
|
自動実行されるように設定
/etc/rc.local
に以下の記述をします
1 2 3 4 5 6 7 |
|
注意 : exit 0
の直前に記述してください
その後、実際に~/.ap_mode
ファイルを作成し、
1 |
|
ないしは
1 |
|
と記述して、sudo reboot
し、動作が正しいことを確認してください
注意 ) なお、この設定を施したあとに/etc/network/interfaces
, /etc/dhcpcd.conf
, /etc/sysctl.conf
ファイルを変更する際は ~/.ap/on_ap_configfiles/
,~/.ap/on_wifi_configfiles/
内のファイルを両方変更してください