今回はRaspberry Piを無線アクセスポイントとして使用する方法を紹介します。Raspberry Piのオンボードの無線LANを使用しますので、無線アクセスポイントの設定をしておけば、ノートPC(無線LAN搭載)だけで、Raspberry Piをコントロールすることができるようになります。それでは手順を紹介します。
hostapdモジュールをインストール
無線アクセスポイント化に必要なモジュールです。下記コマンドでインストールします。
sudo apt-get install hostapd
設定ファイルのひな型を取得
無線アクセスポイント化するためには、ssidやpassword等の各種パラメータを設定するための設定ファイルを作成する必要があります。下記のサイトから設定ファイルのひな型をダウンロードし、編集してきます。まず、/etc/hostapdフォルダに移動します。
cd /etc/hostapd/
その後、hostapd.confをダウンロードします。
sudo wget https://w1.fi/cgit/hostap/plain/hostapd/hostapd.conf
hostapd.confファイルの編集
下記コマンドでhostapd.confファイルを開きます。
nano /etc/hostapd/hostapd.conf
かなり行数が多く、見つけにくいと思いますが、エディターの検索機能を使って下記のパラメータを設定していきます。ssidとwpa_passphraseは、Raspberry Piのアクセスポイント化後に接続する際のssidとパスワードになりますので、任意に設定して頂いて問題ありません。
interface=wlan0
driver=nl80211
ssid=testap
country_code=JP
hw_mode=g
channel=1
#rts_threshold=-1
#fragm_threshold=-1
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
ieee80211n=1
wpa=2
wpa_passphrase=12345678
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP
Raspberry Piのオンボード無線LANの設定
今回はDHCP等は使わず、設定が簡単な固定IP設定にします。/etc/network/interfacesに書かれているwlan0の設定を下記のように編集します。下記コマンドでinterfacesを開きます。
sudo nano /etc/network/interfaces
下記のように編集します。固定IPは192.168.0.10としています。
auto lo
iface lo inet loopback
iface eth0 inet manual
allow-hotplug wlan0
iface wlan0 inet static
address 192.168.0.10
netmask 255.255.255.0
無線アクセスポイントの有効化
上記の設定が終わったら、一度再起動をし、下記のコマンドを実行します。
sudo hostapd /etc/hostapd/hostapd.conf
※再起動後は、無線接続ができなくなりSSHでの操作が不可能になります。シリアルコンソールで接続するか、モニタを接続しておいてください。もしくは下記で説明する自動起動設定を行っておいてください。
※Operation Errorが発生していても、無線アクセスポイントとして正常に動作しているようです。
動作確認
ノートPC(無線搭載)やスマホから無線アクセスポイントの自動検索を行ってください。hostapd.confで設定したssidが表示されているはずです。選択するとパスワードを要求されますので、hostapd.confで設定したwpa_passphraseの文字列を入力します。これで、接続が可能となります。ノートPC(無線搭載)やスマホのIPアドレスを192.168.0.11等に設定後、teratermで接続できるようになります。
自動起動の設定
下記コマンドでファイルを開きます。
sudo nano /etc/default/hostapd
DAEMON_CONFのところにhostapd.confのパスを記入します。
DAEMON_CONF="/etc/hostapd/hostapd.conf"
これでラズパイ起動時に、自動的にアクセスポイントが有効になっているはずです。ノートPCしかない環境でも、Raspberry Piを制御できるようになりました。