Raspberry PiでIoTなシステム開発:ワイヤレスアクセスポイントとして動作させるまで(改訂版)RASPBIAN WHEEZY

Posted on Posted in 趣味的なIT・ネットの話題

Raspberry PiでIoTなシステム開発:ワイヤレスアクセスポイントとして動作させるまで

先日書いたこちらの記事が以下の理由により使えないことが判明しました。その他にも色々と問題がありましたので、改訂版マニュアルを以下したためます。

Raspberry PiでIoTなIT:WordPressはダブルクォーテーションを置き換える

イメージの取得

公式のダウンロードサイト

スクリーンショット 2016-02-08 9.04.00

これを使います。ローカルでunzipする。

これでSDが刺さっているドライブのデバイス名をメモ。

eLinuxは1Mになっているけれどもエラーになる。1mで実行。ifはunzipしたイメージを指定。of以下のrdiskxのxはデバイス名の数字disk3s1の3の方に置き換える。

接続

Raspberry PiでIoTなシステム開発:OSXのインターネット共有でIPを割り当ててログイン

Macのインターネット共有を利用してRaspberry PiにIPを振る。ただしアクセスは次項の通りホスト名で。

ログイン

Raspberry PiでIoTなシステム開発:Raspberry Piにホスト名でアクセスする

今のwheezyはavahiがデフォルトでインストールされているようで、いきなりbonjourでホスト名の確認ができます。OSXのターミナルからホスト名でログイン。

最初の作業

Raspbianを入れたら最初はアップデート、タイムゾーン設定、電源設定変更。

しばらく時間がかかります。

スクリーンショット 2016-02-08 9.24.59

1 Expand Filesystemと4 Internationalization Optionを実行。4ではタイムゾーンをTokyoに設定。

起動安定化のため /boot/config.txtを編集。

末尾に追加。

USBドライバ設定の追加

以前は以下の設定を追加していましたが、現在のwheezyでは設定をせずともWN-G150UMを認識しました。設定を間違えると逆にwlan0が消えるので注意。何も触らない方が吉でしょう。

クライアントとして接続テスト

アクセスポイント化する前にクライアントとしてつながるかをテスト。

インターフェースの再起動

ifconfigでwlan0にIPアドレスが振られていれば成功。

pingは-Iオプションで使用するインターフェースを指定できる。ルーターや外部と通信できることを確認。

同じルーターの配下にある別のマシンからルーティングできていることを確認。

hostapdのインストール

ドライバ設定を追加しなくてもWN-G150UMを使えたのだからhostapdもそのままいけるのではと試して見たのですが、やはりRealtekの対応版に差し替えないとダメでした。まずは本家をインストールして、Realtek版にバイナリを差し替えます。

Realtek

realtekサイトはダウン比率が高い様ですね。なんとかgetしてください。私が使用したのは「0001-RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911.zip」です。とりあえずhostapdはGPLのようなので、その部分だけアップしておきます。

wpa_supplicant_hostapd-0.8_rtw_r7475.20130812.tar.gz

piからはアドレスが指定しにくいので、母艦のMacでダウンロードしてからSFTPで/home/piにアップロード。FileZillaを使っています。Mac用のFTPクライアントとしては一番使いやすいと思います。なのに何故かマイナー。

出来上がったバイナリを/usr/sbinにコピー。/usr/local/sbinではない。localに入れてしまうと置き換えられずに、コマンドラインから起動したら/usr/local/sbinの方が、起動スクリプトからだと/usr/localから起動してしまう。

hostapdの設定

設定ファイルを編集。

もちろんssidとwpa_passphraseは適宜変更で。構文チェックがかなり厳しくちょっとでも間違うとサービスが起動しないので注意。

IPアドレスを固定化

アクセスポイントにする以上IPが変わると困るので固定化。

WPASupplicantを停止させる。

ifplugdが作用するとwlan0のIPアドレスが飛んでしまうので、対象をeth0に限定する。

変更前

変更後

hostapdの起動

まずはサービスとしてでは無くコマンドラインから起動できるかの確認。

wlan0: Setup of interface done.と表示されればたぶん成功している。この時点でWifiアクセスポイントとして動作しているはずなので、MacとかiPhoneのアクセスポイント一覧に現れる。

スクリーンショット 2016-02-08 12.09.12

プロセスとしても動作しているはず。

ここでkillするかctrl+cして次はサービスとして起動させるための設定。initスクリプト(/etc/init.d/hostapd)から参照されている設定ファイルを変更。

こんな感じ。

DHCPサーバーのインストール

インストールする、必要はなかった。既にインストールされていて、最初のコマンドでアップデートされています。

DHCPサーバーの設定

動作対象のインターフェースの指定とIPの割り当て設定は別々のファイルで行います。
こちらは対象インターフェースの指定。

ファイル末尾の設定を変更。

こちらは割り当て設定。

この部分をコメントアウト。

ここでWifi端末からアクセスして、設定されたIPやDNSアドレスが割り振られていれば成功

S__6782980

おつかれさまでした

長い。これだけの手順を間違わずに再現するのは大変。設定方法が時々変わるので更に大変。そりゃシステムイメージでセットアップしたくなりますよね。

 

pi@raspberrypi:~ $ sudo service hostapd start

pi@raspberrypi:~ $ sudo service hostapd stop

 

 

 

 


Facebooktwittergoogle_pluspinterestlinkedinmail
納得したらすぐにシェア!

2 thoughts on “Raspberry PiでIoTなシステム開発:ワイヤレスアクセスポイントとして動作させるまで(改訂版)RASPBIAN WHEEZY

Comments are closed.