ブログ

Armadillo-IoT(G3/G3L)/X1:無線LANアクセスポイント化(dnsmasq+hostapdで実現:buster版)

at_kazutaka.bito
2023年3月5日 15時10分

Armadillo-IoT(G3/G3L)/X1を無線LANアクセスポイントのように使う方法です。
ここでは、dnsmasq+hostapdを使います。

1. 必要なパッケージのインストール

Armadillo-IoT(G3/G3L)/X1をインターネット接続可能なネットワークに接続して、
下記コマンドで必要なパッケージをインストールしておきます。

root@armadillo:~# apt-get update
root@armadillo:~# apt-get install dnsmasq hostapd

2. 無線LANの設定

2.1. NetworkManagerの管理対象から無線LANを外す

/etc/NetworkManager/NetworkManager.confのファイル末尾に下記の記述を追加します。

[keyfile]
unmanaged-devices=interface-name:wlan0

NetworkManagerをリスタートします。

root@armadillo:~# service NetworkManager restart
2.2. hostapd(アクセスポイントモード)の設定

/etc/hostapd/hostapd.confを下記の内容で作成します。

interface=wlan0
driver=nl80211
ssid=testssid
hw_mode=g
channel=10
ieee80211n=1
wpa=2
wpa_passphrase=testpassphrase
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP

/etc/default/hostapdの末尾に下記の記述を追加します。

DAEMON_CONF="/etc/hostapd/hostapd.conf"

カーネルの起動時にhostapdの設定を有効にするようにします。

root@armadillo:~# systemctl unmask hostapd.service
root@armadillo:~# update-rc.d hostapd enable

3. dnsmasq(DHCPサーバー)の設定

dnsmasq(DHCPサーバー)を設定します。
/etc/dnsmasq.confの変更点
ファイル末尾に下記の記述を追加します。

listen-address=127.0.0.1, 192.168.100.1
interface=wlan0
dhcp-range=192.168.100.100, 192.168.100.254, 12h

4. 再起動

再起動します。

root@armadillo:~# reboot

上記までの手順は、再起動以降は不要になります。

5. 無線LANをアクセスポイントモードで起動

下記コマンドで、無線LANを再起動します。
補足)下記では、Armadilloの無線LANのIPアドレスを192.168.100.1に設定しています。

root@armadillo:~# ip link set wlan0 down
root@armadillo:~# ip addr flush dev wlan0
root@armadillo:~# ip link set wlan0 up
root@armadillo:~# ip addr add 192.168.100.1/24 dev wlan0

アクセスポイントモードを再起動します。

root@armadillo:~# service hostapd restart

無線LAN端末から、下記のSSIDとパスフレーズで接続できます。
 SSID:testssid
 パスフレーズ:testpassphrase