Raspberry Pi を アドホック接続(直接通信)にする
手順
1. bridge-utils
イーサネットブリッジを Linux 上で設定する、
ユーティリティを導入。
2. IPアドレスを固定
旧式の /etc/network/interfaces で設定。
3. アクセスポイントデーモン(hostapd)のインストール
hostapd:無線LANのアクセスポイント機能を持つソフト。
デーモン:バックグラウンドプロセスとして動く常駐アプリ。
4. Buffalo 無線LAN子機 WLI-UC-GNM のドライバー入手
スポンサー リンク
構築した環境
◆ Raspberry Pi 2 Model B
◆ 2017-04-10-raspbian-jessie PIXEL version
◆ 無線LAN USBアダプタ:Buffalo 無線LAN子機 WLI-UC-GNM
◆ 使用ソフト:bridge-utils & hostapd
◆ 2017-04-10-raspbian-jessie PIXEL version
◆ 無線LAN USBアダプタ:Buffalo 無線LAN子機 WLI-UC-GNM
◆ 使用ソフト:bridge-utils & hostapd
1. ブリッジ構築ツールの導入
sudo apt-get install bridge-utils
2. 固定IPアドレスの設定:ネットワーク管理を旧式で統一
IPアドレスを固定にするネットワーク管理の方法が、
・Wheezyのとき: /etc/network/interfaces を編集
・Jessieのとき: /etc/dhcpcd.conf を編集
と異なって来た。
・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
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
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
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
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 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
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
cp defconfig .config
echo CONFIG_LIBNL32=y >> .config
make
コンパイルされたhostapdで、オリジナルのバイナリを置き換える。
sudo mv /usr/sbin/hostapd /usr/sbin/hostapd_org
sudo mv hostapd /usr/sbin/
sudo mv hostapd /usr/sbin/
5. APデーモンでのアクセスポイント化
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
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
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 からの接続。raspi111 が現れる。
以上。
(2017.04.18)
スポンサー リンク