4-3. Raspberry Pi Wi-Fiアクセスポイント化:ルーターの構築

Raspberry Pi をアドホック接続(直接通信)にした
1. bridge-utils:イーサネットブリッジを Linux 上で設定するユーティリティ
2. 旧式の /etc/network/interfaces で、IPアドレスを固定
3. アクセスポイントデーモン(hostapd)のインストール
  hostapd:無線LANのアクセスポイント機能を持つソフト
  デーモン:バックグラウンドプロセスとして動く常駐アプリ
4. Buffalo 無線LAN子機 WLI-UC-GNM のドライバー入手

Raspberry Piで 無線LAN のアクセスポイント = ルーターを構築し、 ラズベリーパイとiPhoneやipadを、無線LAN経由でアドホック接続(直接通信)にしてみた。



構築した環境。

◆ Raspberry Pi 2 Model B
◆ 2017-04-10-raspbian-jessie PIXEL version
◆ 無線LAN USBアダプタ:Buffalo 無線LAN子機 WLI-UC-GNM
◆ 使用ソフト:bridge-utils & hostapd

1. ブリッジ構築ツール(bridge-utils)の導入

sudo apt-get install bridge-utils

2. 固定IPアドレスの設定:ネットワーク管理を旧式で統一

IPアドレスを固定にするネットワーク管理の方法が、
・Wheezyのとき: /etc/network/interfaces を編集
・Jessieのとき: /etc/dhcpcd.conf を編集
と異なって来た。
 

JESSIEにて固定IPを使うときは、

/etc/dhcpcd.conf に

下記のように記載するという情報が多いが・・・・・

interface eth0
static ip_address=192.168.11.111/24
static routers=192.168.11.1
static domain_name_servers=192.168.11.1

Wheezyのときと同様に、

/etc/network/interfaces に

固定IPを記載するのが分かり易いので、旧式で統一することにした。


2-1. NetworkManager を無効化。

sudo systemctl stop NetworkManager
sudo systemctl mask NetworkManager

2-2. /etc/dhcpcd.conf の編集。

sudo nano /etc/dhcpcd.conf

denyinterfaces eth0 を入れる

2-3. /etc/network/interfaces の編集。

sudo nano /etc/network/interfaces

auto lo
iface lo inet loopback
iface eth0 inet static
address 192.168.11.111
netmask 255.255.255.0
gateway 192.168.11.1

auto wlan0
iface wlan0 inet static
address 0.0.0.0

auto br0
iface br0 inet static
address 192.168.11.111
netmask 255.255.255.0
gateway 192.168.11.1
bridge_ports eth0 wlan0
bridge_stp off

iface default inet dhcp



2-4. 再起動と確認。

ifconfig -s

br0 の存在を確認

3. hostapd(アクセスポイントデーモン)のインストール

sudo apt-get install hostapd

4. 使用する無線LANアダプターのソースコードの入手とビルド

Buffalo WLI-UC-GNM のドライバー入手。

sudo wget http://w1.fi/releases/hostapd-2.0.tar.gz
tar xvf hostapd-2.0.tar.gz

コンパイルにパッケージが必要。

sudo apt-get install libnl-genl-3-dev libssl-dev

ソースツリー内のhostapdに移動し、defconfigを.configとしてコピーし、
.configにCONFIG_LIBNL32=yを追加してからコンパイルする。

cd hostapd-2.0/hostapd
cp defconfig .config
echo CONFIG_LIBNL32=y >> .config
make

コンパイルされたhostapdで、オリジナルのバイナリを置き換える。

sudo mv /usr/sbin/hostapd /usr/sbin/hostapd_org
sudo mv hostapd /usr/sbin/

5. AP(アクセスポイント)デーモン(hostapd)でのアクセスポイント化

hostapd.conf を新たに作成し、設定を記述。

sudo nano /etc/hostapd/hostapd.conf

interface=wlan0
driver=nl80211
bridge=br0
ssid=raspi111
hw_mode=g
channel=3
wpa=2
wpa_passphrase=12345678
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP

hostapd を起動し、アクセスポイントに接続できるか確認。

sudo service hostapd stop
sudo hostapd /etc/hostapd/hostapd.conf

スマートフォンから無線LANのアクセスポイントを見てみる。OKなら、再度停止。

sudo service hostapd stop

hostapd を起動時に、作成したファイルが読み込まれるようにする。

sudo nano /etc/init.d/hostapd

#DAEMON_CONF= を DAEMON_CONF=/etc/hostapd/hostapd.conf

6. 再起動し、AP(アクセスポイント)として動作させる

sudo service hostapd start


iPhone からの接続結果。


参考:
★ 各種サーバーの構築



スポンサー リンク





関連ページ


スポンサー リンク


スポンサー リンク


スポンサー リンク