一部のSBCでのWiFiアクセスポイント機能について
天体機材の制御でSBCを使用する場合は、屋外ではWiFiのアクセスポイント機能を使用してタブレットなどからVNCなどでリモート操作ができると非常に便利です。
通常UbuntuやそのフレーバーのUbuntuMateなどではこの記事のようにシステム標準機能でGUIによりWiFiアクセスポイントを簡単に構築できます。
しかし、一部のSBCやArmbainなどのOSではこの機能が使えない(というか、存在しない)場合があります。
こうなるとWiFiのアクセスポイントの環境構築はかなりの大仕事になります。
ここで記載の説明は屋外でアクセスポイント機能を使用したいが、Ubuntu標準機能が使えない、もしくは何らかの関係でその機能が使えない方に向けてのものになります。(自分の備忘録も兼ねて)
前提条件
・ある程度Linuxの操作に慣れた方
・屋内では有線にて固定IPによるインターネット接続+リモート操作、屋外ではWiFiアクセスポイントにてインターネット接続がなくても独立してリモート操作を行いたい方。
・WiFiドライバなどがすでにインストールされてAP以外では使用できている方
・SynapticやSSHなど、環境構築の準備ができている方
システムに大分手を加えますので上記該当の方が対象になります。
上記環境構築でお困りの方はお試しください。
環境構築などの準備ができていない方はこちらやこちらの記事をご参考にして事前に準備をしてください。
構築手順
1.SSHで端末からifconfigを入力して有線Lan、無線Lanの動作状況、名称確認をする。(後ほどここで得られた名称を使用します。私の環境は下図、有線Lanはenxb827ebedaa4b、無線Lanはwlan0でした。)

2.SSHで以下コマンドでhostapd、dhcpd、create_apをインストール
hostapdのインストールコマンド
sudo apt-get install hostapd
dhcpdのインストールコマンド
sudo apt-get install dhcpd
create_apのインストールコマンド
git clone https://github.com/oblique/create_ap
cd create_ap
sudo make install
sudo mv ./create_ap /usr/local/bin/
sudo chmod +x /usr/local/bin/
上記によりcreate_apというスクリプトを用いてAPを構築します。dhcpd、hostapdは環境構築のために必要になります。
3.各種設定ファイルの変更
ネットワーク系のいくつかの設定ファイルを変更します。
・ネットワークインターフェイスの設定
有線Lanを固定IPでインターネット接続、無線Lanを独立したIPアドレスでルータのように機能させます。
SSHにて
sudo nano/etc/network/interfaces
上記ファイルを以下設定に変更
# interfaces(5) file used by ifup(8) and ifdown(8)
# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d
# The loopback network interface
#auto enxb827ebedaa4b
allow-hotplug ○○○
iface ○○○ inet dhcp
auto lo
iface lo inet loopback
allow-hotplug br0
iface br0 inet static
address 192.168.1.151
netmask 255.255.255.0
#network 192.168.1.1
gateway 192.168.1.1
broadcast 192.168.1.255
dns-nameservers 8.8.8.8 8.8.4.4
bridge_ports ○○○
auto △△△
#allow-hotplug △△△
iface wlan0 inet static
address 10.0.0.1
netmask 255.0.0.0
#gateway 192.168.1.1
network 10.0.0.1
iface default inet dhcp
以上をコピペします。〇〇○を有線Lanの名称に、△△△を無線Lanの名称に変更します。(私の場合は○○○はenxb827ebedaa4b、△△△はwlan0でした。)
上記ではルータアドレスを192.168.1.1、固定IPを192.168.1.151に、WiFiアクセスポイントはサーバとして10.0.0.1、dhcpにて接続側に10.0.0.2以降でアドレスを割り振る設定にしてあります。(つもり)
#印のついた部分は機能しません。(参照用として記載しました。)
・dhcpdの設定
SSHにて
sudo nano /etc/dhcp/dhcpd.conf
最終行に以下をコピペ
interface wlan0
static ip_address=10.0.0.1
記述したら保存して自動起動にします。
sudo systemctl enable dhcpd
sudo systemctl start dhcpd
・hostapdの設定
SSHにて
sudo nano /etc/hostapd/hostapd.conf
以下内容に書き換え
interface=△△△
driver=nl80211
ssid=xxx
hw_mode=g
channel=
bridge=br0
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=□□□
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
country_code=JP
interface=△△△部分は上記WiFiの名称に(私の場合はwlan0)
ssid=xxx部分は半角英字でお好みのアクセスポイント名を設定してください。
wpa_passphrase=□□□部分はWiFi接続時のパスワードになります。
記述が終了したら保存してこれも自動起動にします。
sudo systemctl enable hostapd
sudo systemctl start hostapd
・create_ap自動起動設定
SSHにて
sudo nano /etc/rc.local
exit0の前に下を追加
sudo create_ap -n △△△ xxx □□□
△△△部分はWiFiの名称(私の場合はwLan0)、xxx部分はアクセスポイント名(半角英字)、□□□部分にはパスワードを入力してください。(それぞれに半角スペースを空けてください)
以上が完了したら再起動してアクセスポイントが自動的に立ち上がっているか確認します。
有線Lanケーブルを接続しての起動や、外しての起動も試してみます。
上記前提条件を満たした環境ができたら終了です。
通常UbuntuやそのフレーバーのUbuntuMateなどではこの記事のようにシステム標準機能でGUIによりWiFiアクセスポイントを簡単に構築できます。
しかし、一部のSBCやArmbainなどのOSではこの機能が使えない(というか、存在しない)場合があります。
こうなるとWiFiのアクセスポイントの環境構築はかなりの大仕事になります。
ここで記載の説明は屋外でアクセスポイント機能を使用したいが、Ubuntu標準機能が使えない、もしくは何らかの関係でその機能が使えない方に向けてのものになります。(自分の備忘録も兼ねて)
前提条件
・ある程度Linuxの操作に慣れた方
・屋内では有線にて固定IPによるインターネット接続+リモート操作、屋外ではWiFiアクセスポイントにてインターネット接続がなくても独立してリモート操作を行いたい方。
・WiFiドライバなどがすでにインストールされてAP以外では使用できている方
・SynapticやSSHなど、環境構築の準備ができている方
システムに大分手を加えますので上記該当の方が対象になります。
上記環境構築でお困りの方はお試しください。
環境構築などの準備ができていない方はこちらやこちらの記事をご参考にして事前に準備をしてください。
構築手順
1.SSHで端末からifconfigを入力して有線Lan、無線Lanの動作状況、名称確認をする。(後ほどここで得られた名称を使用します。私の環境は下図、有線Lanはenxb827ebedaa4b、無線Lanはwlan0でした。)

2.SSHで以下コマンドでhostapd、dhcpd、create_apをインストール
hostapdのインストールコマンド
sudo apt-get install hostapd
dhcpdのインストールコマンド
sudo apt-get install dhcpd
create_apのインストールコマンド
git clone https://github.com/oblique/create_ap
cd create_ap
sudo make install
sudo mv ./create_ap /usr/local/bin/
sudo chmod +x /usr/local/bin/
上記によりcreate_apというスクリプトを用いてAPを構築します。dhcpd、hostapdは環境構築のために必要になります。
3.各種設定ファイルの変更
ネットワーク系のいくつかの設定ファイルを変更します。
・ネットワークインターフェイスの設定
有線Lanを固定IPでインターネット接続、無線Lanを独立したIPアドレスでルータのように機能させます。
SSHにて
sudo nano/etc/network/interfaces
上記ファイルを以下設定に変更
# interfaces(5) file used by ifup(8) and ifdown(8)
# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d
# The loopback network interface
#auto enxb827ebedaa4b
allow-hotplug ○○○
iface ○○○ inet dhcp
auto lo
iface lo inet loopback
allow-hotplug br0
iface br0 inet static
address 192.168.1.151
netmask 255.255.255.0
#network 192.168.1.1
gateway 192.168.1.1
broadcast 192.168.1.255
dns-nameservers 8.8.8.8 8.8.4.4
bridge_ports ○○○
auto △△△
#allow-hotplug △△△
iface wlan0 inet static
address 10.0.0.1
netmask 255.0.0.0
#gateway 192.168.1.1
network 10.0.0.1
iface default inet dhcp
以上をコピペします。〇〇○を有線Lanの名称に、△△△を無線Lanの名称に変更します。(私の場合は○○○はenxb827ebedaa4b、△△△はwlan0でした。)
上記ではルータアドレスを192.168.1.1、固定IPを192.168.1.151に、WiFiアクセスポイントはサーバとして10.0.0.1、dhcpにて接続側に10.0.0.2以降でアドレスを割り振る設定にしてあります。(つもり)
#印のついた部分は機能しません。(参照用として記載しました。)
・dhcpdの設定
SSHにて
sudo nano /etc/dhcp/dhcpd.conf
最終行に以下をコピペ
interface wlan0
static ip_address=10.0.0.1
記述したら保存して自動起動にします。
sudo systemctl enable dhcpd
sudo systemctl start dhcpd
・hostapdの設定
SSHにて
sudo nano /etc/hostapd/hostapd.conf
以下内容に書き換え
interface=△△△
driver=nl80211
ssid=xxx
hw_mode=g
channel=
bridge=br0
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=□□□
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
country_code=JP
interface=△△△部分は上記WiFiの名称に(私の場合はwlan0)
ssid=xxx部分は半角英字でお好みのアクセスポイント名を設定してください。
wpa_passphrase=□□□部分はWiFi接続時のパスワードになります。
記述が終了したら保存してこれも自動起動にします。
sudo systemctl enable hostapd
sudo systemctl start hostapd
・create_ap自動起動設定
SSHにて
sudo nano /etc/rc.local
exit0の前に下を追加
sudo create_ap -n △△△ xxx □□□
△△△部分はWiFiの名称(私の場合はwLan0)、xxx部分はアクセスポイント名(半角英字)、□□□部分にはパスワードを入力してください。(それぞれに半角スペースを空けてください)
以上が完了したら再起動してアクセスポイントが自動的に立ち上がっているか確認します。
有線Lanケーブルを接続しての起動や、外しての起動も試してみます。
上記前提条件を満たした環境ができたら終了です。
- 関連記事
-
- 環境づくりのために用意するもの
- 天体用アプリのインストールコマンド一覧
- バージョンアップの前には必ずイメージのバックアップを
- マイクロSDカードの問題
- Orange Pi2plusにVPNサーバを設置する
- 一部のSBCでのWiFiアクセスポイント機能について
- Beelink-AP34でハマる
- 安定した天体環境を作るには
- 天体機器の制御環境づくりで危険になるコマンド sudo apt update && sudo apt -y upgrade
- 四年目の浮気?(INDI vs ASCOM)
- Windows MiniPCでヘッドレスリモート制御に挑戦→轟沈
- Windows MiniPCでヘッドレスリモート制御に挑戦(リベンジ?)
- Windows MiniPCでヘッドレスリモートEAA環境ようやく全て動作(かな?)
- デュアルブートMiniPC、UBUNTU側の最終チェック
- シリアルの問題
スポンサーサイト