Armadilloフォーラム

Debian GNU/Linux 12(bookworm)におけるWiFi APモードでのWiFi接続について

kanbara

2024年3月5日 9時05分

Armadillo-IoT G3Lを使用したWiFi APモードでの接続問題について、技術的なアドバイスをいただければと思います。
以下に、私の環境と質問内容を記載いたします。

【環境】
機種:Armadillo-IoT G3L
OS:Debian GNU/Linux 12(bookworm)
ユーザーランド:debian-bookworm-armhf_aiotg3l_20240227.tar.gz
Linuxカーネル:Linux-6.1用 uImage-x1-v6.1-at1
DTB:Linux-6.1用 armadillo_iotg_g3l-v6.1-at1.dtb
ブートローダー:u-boot-x1-at24.bin

【質問内容】
Armadillo-IoT G3Lを用いたWiFi APモードでの接続設定を行っていますが、SSIDを数字のみで設定した場合に接続に失敗する現象が多発しています。

例えば、以下のコマンドを用いてSSIDを英文字列で設定した場合、接続は成功しますが、

root@armadillo:~# nmcli connection add con-name wifi type wifi ifname wlan0 ssid "wifi-ssid"
root@armadillo:~# nmcli connection modify wifi \
      802-11-wireless.mode "ap" \
      802-11-wireless-security.key-mgmt wpa-psk \
      802-11-wireless-security.psk "wifi-password" \
      ipv4.method share \
      ipv6.method disabled \
      connection.zone internal \
      connection.autoconnect no
root@armadillo:~# nmcli connection up wifi
root@armadillo:~# nmcli c
NAME                UUID                                  TYPE      DEVICE 
Wired connection 1  44c4db5a-921e-386a-bce4-213065f874c1  ethernet  eth0   
wifi                26b44447-51b2-4956-80e9-ce3c7299e4bf  wifi      wlan0  
lo                  4ebf566a-071e-456a-ade2-8f7a135c50b4  loopback  lo

SSIDを数字のみ(例: "123")で設定すると、以下のエラーが発生し、接続に失敗します。

nmcli connection delete wifi
root@armadillo:~# nmcli connection add con-name wifi type wifi ifname wlan0 ssid "123"
root@armadillo:~# nmcli connection modify wifi \
      802-11-wireless.mode "ap" \
      802-11-wireless-security.key-mgmt wpa-psk \
      802-11-wireless-security.psk wifi-password \
      ipv4.method share \
      ipv6.method disabled \
      connection.zone internal \
      connection.autoconnect no
root@armadillo:~# nmcli connection up wifi
root@armadillo:~# nmcli c
NAME                UUID                                  TYPE      DEVICE 
Wired connection 1  44c4db5a-921e-386a-bce4-213065f874c1  ethernet  eth0   
lo                  4ebf566a-071e-456a-ade2-8f7a135c50b4  loopback  lo     
wifi                fa40e384-614a-42c1-8c49-924cfb5d84a7  wifi      --

失敗するタイミングは「nmcli connection up wifi」で、エラーメッセージは「Error: Connection activation failed: 802.1X supplicant took too long to authenticate」が出力されます。
※成功時と失敗時のログを添付しております。

成功時と失敗時の両方のログを添付しております。この問題の原因、設定の不備、または追加で必要な設定についてご教示いただければ幸いです。

お忙しいところ大変恐縮ですが、ご確認いただけますと幸いです。よろしくお願いいたします。

ファイル ファイルの説明
接続OK時.txt
接続NG時.txt
コメント

at_syunya.ohshio

2024年3月5日 11時16分

大塩です。

> 【環境】
> 機種:Armadillo-IoT G3L
> OS:Debian GNU/Linux 12(bookworm)
> ユーザーランド:debian-bookworm-armhf_aiotg3l_20240227.tar.gz
> Linuxカーネル:Linux-6.1用 uImage-x1-v6.1-at1
> DTB:Linux-6.1用 armadillo_iotg_g3l-v6.1-at1.dtb
> ブートローダー:u-boot-x1-at24.bin
>
> 【質問内容】
> Armadillo-IoT G3Lを用いたWiFi APモードでの接続設定を行っていますが、SSIDを数字のみで設定した場合に接続に失敗する現象が多発しています。
>

情報ありがとうございます。
上記ご報告頂いた内容につきまして、調査致します。

以上です。

at_syunya.ohshio

2024年3月5日 15時27分

大塩です。

頂いた内容について現象調査を行いましたが、こちらの環境ではssid が数値のみであった場合でも
問題なく動作しています。

各イメージのアップデートはそれぞれ個別アップデートを行ったでしょうか。
一度、以下のインストールディスクイメージで初期化を行った状態で同様の結果となるかお試しいただけますでしょうか。
■インストールディスクイメージ
install_disk_sd_bookworm_20240227_iotg3l.img
https://armadillo.atmark-techno.com/resources/software/armadillo-iot-g3…

また、型番によって発生の有無がある可能性もありますので
お手数ですがご利用のArmadillo-IoT G3L の型番を記載いただけますでしょうか。

以上です。

大塩様
ご回答ありがとうございます。

> 各イメージのアップデートはそれぞれ個別アップデートを行ったでしょうか。
各イメージを個別にアップデートしました。

> 一度、以下のインストールディスクイメージで初期化を行った状態で同様の結果となるかお試しいただけますでしょうか。
インストールディスクイメージを用いてインストールを実施しましたが、結果は同様でした。

> お手数ですがご利用のArmadillo-IoT G3L の型番を記載いただけますでしょうか。
型番についてですが、筐体のシールには以下のように記載がありました。

AT3933J 009417
Armadillo-IoTゲートウェイ3L
AGL3100
S/N:009417

大塩様

> > お手数ですがご利用のArmadillo-IoT G3L の型番を記載いただけますでしょうか。
> 型番についてですが、筐体のシールには以下のように記載がありました。
>
> AT3933J 009417
> Armadillo-IoTゲートウェイ3L
> AGL3100
> S/N:009417
型番については、お知らせした内容で問題なかったですか?
もし、他に必要なものがあればご連絡ください。

at_syunya.ohshio

2024年3月12日 11時43分

大塩です。

返答が遅くなり申し訳ありません。
こちらでもそれらしき現象が確認できましたので調査致します。

以上です。

at_syunya.ohshio

2024年3月13日 15時23分

大塩です。

確認したところ、チャンネルを指定することで正常にconnection up 出来ることを確認できました。
ご確認いただけますでしょうか。

こちらでは以下の設定で動作確認を行いました。

nmcli connection add con-name wifi type wifi ifname wlan0 ssid "123456789"
nmcli connection modify wifi 802-11-wireless.mode "ap" 802-11-wireless-security.key-mgmt wpa-psk 802-11-wireless-security.psk "wifi-password" 802-11-wireless.band bg 802-11-wireless.channel 6 ipv4.method share ipv6.method disabled connection.zone internal connection.autoconnect no

以上です。

大塩様

確かにチャンネルを指定すると正常にconnection up出来ました。
マニュアルにはチャンネルの指定について記載はありませんでしたが、必須の設定項目なのでしょうか?

at_syunya.ohshio

2024年3月14日 11時45分

大塩です。

> 確かにチャンネルを指定すると正常にconnection up出来ました。
> マニュアルにはチャンネルの指定について記載はありませんでしたが、必須の設定項目なのでしょうか?

こちらでLinux 4.9 と Linux 6.1 で動作比較を行いましたが、4.9 ではこの現象が発生しない(または発生しにくい)ように見えましたので、Linux 6.1 で必須となったのか修正可能なのかは調査中です。

以上です。

大塩様

接続が失敗する際に下記のログが出ており、周波数として2472(チャネル13)と出力されていることに気づきました。

NetworkManager[1353]: <info>  [1706306293.8648] Config: added 'frequency' value '2472'

wpa_cli get_capability freqコマンドを確認すると、チャネル12~14にNO_IRと表示されます。
日本ではチャネル12~14が使用可能と認識しておりますが、規制ドメインは日本となっているでしょうか?
また、G3Lは技適を取得済みでしょうか?

尚、iw reg getではcountry 00と表示され、iw reg set JPで規制ドメインを変更しようとしましたが、変更できませんでした。
下記のフォーラムでは規制ドメインの変更にパッチが必要と記載されていますが、G3Lでも規制ドメインを変更するためにはパッチが必要でしょうか?

WLAN+BTコンボモジュール代替部品(評価用サンプルモジュール)にてWifi通信中、Bluetooth制御コマンド送信後にWifi通信が途切れる
https://armadillo.atmark-techno.com/forum/armadillo/13772

at_syunya.ohshio

2024年3月18日 13時31分

大塩です。

この現象につきまして、nmcli でのAP作成を実施されていますが、
アットマークテクノとしては、マニュアルや ブログ等 にて hostapd や create-ap でのAP作成方法を推奨しております。
nmcli を用いたAP作成でなければならない理由等はありますでしょうか。

以上です。

大塩様

hostapdやcreate-apを利用して無線LANアクセスポイント化を紹介しているブログを拝見いたしました。
おそらく、以下と思いますが、合っていますか?
https://armadillo.atmark-techno.com/blog/615/14599
https://armadillo.atmark-techno.com/blog/615/8642

また、どちらの記事でも設定ファイル上でWi-Fiのチャンネルを指定しているようですが、指定がなくてもWi-Fi接続可能でしょうか?

at_syunya.ohshio

2024年3月19日 13時14分

大塩です。

> hostapdやcreate-apを利用して無線LANアクセスポイント化を紹介しているブログを拝見いたしました。
> おそらく、以下と思いますが、合っていますか?
> https://armadillo.atmark-techno.com/blog/615/14599
> https://armadillo.atmark-techno.com/blog/615/8642

はい、そちらを参考にAPが作成できるかお試しいただければと思います。

> また、どちらの記事でも設定ファイル上でWi-Fiのチャンネルを指定しているようですが、指定がなくてもWi-Fi接続可能でしょうか?

channel の指定は必須になります。
create-ap 側はインストール時にcreate_ap.conf のデフォルト値が CHANNEL=default になっていると思いますが、default は 1 に設定されているため、任意の数値に置き換えるのが良いです。

以上です。

大塩様

状況を整理しました。
SSIDを英字文字列のみで設定する場合、Wi-Fi接続にほとんど問題はありません。しかし、SSIDを数字のみで設定した際には、Wi-Fiチャンネルを明示的に指定しないと接続が成功しない現象が多発しています。

これまでDebian 9やDebian 10をArmadillo-IoT G3Lで利用してきた際には、このような挙動は見られませんでした。数字のみのSSIDでも、接続はスムーズに行われていました。さらに検証を進めるため、一般的なPCにDebianプロジェクトからダウンロードしたDebian 12をインストールし、同じ条件でテストを行ったところ、こちらでもSSIDを数字のみで設定しても接続に成功しました。

この問題がLinux 6.1において新たに必須となった挙動なのか、それとも何らかの方法で修正可能なのかは調査頂ければ幸いです。
どうぞよろしくお願いいたします。

at_syunya.ohshio

2024年3月21日 14時06分

大塩です。

ご確認ありがとうございます。

> これまでDebian 9やDebian 10をArmadillo-IoT G3Lで利用してきた際には、このような挙動は見られませんでした。数字のみのSSIDでも、接続はスムーズに行われていました。さらに検証を進めるため、一般的なPCにDebianプロジェクトからダウンロードしたDebian 12をインストールし、同じ条件でテストを行ったところ、こちらでもSSIDを数字のみで設定しても接続に成功しました。

1つ確認させてください。
Armadillo bookworm に入っている network-manager のバージョンは 1.42.4 ですが、PCで動作確認されたNetworkManagerのバージョンはいくつでしょうか。

以上です。

大塩様

> Armadillo bookworm に入っている network-manager のバージョンは 1.42.4 ですが、PCで動作確認されたNetworkManagerのバージョンはいくつでしょうか。
PCで動作確認した際のNetworkManagerのバージョンも 1.42.4 でした。

大塩様

接続が失敗する際に下記のログが出ており、周波数として2472(チャネル13)と出力されていることに気づきました。

NetworkManager[1353]: <info>  [1706306293.8648] Config: added 'frequency' value '2472'

wpa_cli get_capability freqコマンドを確認すると、チャネル12~14にNO_IRと表示されます。
日本ではチャネル12~14が使用可能と認識しておりますが、規制ドメインは日本となっているでしょうか?
また、G3Lは技適を取得済みでしょうか?

尚、iw reg getではcountry 00と表示され、iw reg set JPで規制ドメインを変更しようとしましたが、変更できませんでした。
下記のフォーラムでは規制ドメインの変更にパッチが必要と記載されていますが、G3Lでも規制ドメインを変更するためにはパッチが必要でしょうか?

WLAN+BTコンボモジュール代替部品(評価用サンプルモジュール)にてWifi通信中、Bluetooth制御コマンド送信後にWifi通信が途切れる
https://armadillo.atmark-techno.com/forum/armadillo/13772

at_syunya.ohshio

2024年3月29日 11時02分

大塩です。

情報ありがとうございます。

> 日本ではチャネル12~14が使用可能と認識しておりますが、規制ドメインは日本となっているでしょうか?

以下でご確認されている通り、iw reg get で country 00: DFS-UNSET と表示されるため、デフォルトでは未設定となっております。

> また、G3Lは技適を取得済みでしょうか?

Armadillo-IoT G3L は技適取得済みのコンボモジュールを使用しているため、技適としては問題ありません。
https://manual.atmark-techno.com/armadillo-iot-g3l/armadillo-iotg-g3l_p…

hostapd や create-ap でのAP設定にて、country code を JP とした上で ch 12~14が正常に立てられることは確認済です。

> 尚、iw reg getではcountry 00と表示され、iw reg set JPで規制ドメインを変更しようとしましたが、変更できませんでした。
> 下記のフォーラムでは規制ドメインの変更にパッチが必要と記載されていますが、G3Lでも規制ドメインを変更するためにはパッチが必要でしょうか?

こちらで確認したところ、正常にcountry code を JP に設定出来ています。

root@armadillo:~# iw reg get
global
country 00: DFS-UNSET
        (755 - 928 @ 2), (N/A, 20), (N/A), PASSIVE-SCAN
        (2402 - 2472 @ 40), (N/A, 20), (N/A)
        (2457 - 2482 @ 20), (N/A, 20), (N/A), AUTO-BW, PASSIVE-SCAN
        (2474 - 2494 @ 20), (N/A, 20), (N/A), NO-OFDM, PASSIVE-SCAN
        (5170 - 5250 @ 80), (N/A, 20), (N/A), AUTO-BW, PASSIVE-SCAN
        (5250 - 5330 @ 80), (N/A, 20), (0 ms), DFS, AUTO-BW, PASSIVE-SCAN
        (5490 - 5730 @ 160), (N/A, 20), (0 ms), DFS, PASSIVE-SCAN
        (5735 - 5835 @ 80), (N/A, 20), (N/A), PASSIVE-SCAN
        (57240 - 63720 @ 2160), (N/A, 0), (N/A)
 
root@armadillo:~# iw reg set JP
root@armadillo:~# iw reg get
global
country JP: DFS-JP
        (2402 - 2482 @ 40), (N/A, 20), (N/A)
        (2474 - 2494 @ 20), (N/A, 20), (N/A), NO-OFDM
        (4910 - 4990 @ 40), (N/A, 23), (N/A)
        (5170 - 5250 @ 80), (N/A, 20), (N/A), AUTO-BW
        (5250 - 5330 @ 80), (N/A, 20), (0 ms), DFS, AUTO-BW
        (5490 - 5710 @ 160), (N/A, 23), (0 ms), DFS
        (57000 - 66000 @ 2160), (N/A, 10), (N/A)
 
root@armadillo:~#

この状態で現象が発生せずにAPが立てられることは確認しています。

以上です。