hgot07 Hotspot Blog

主に無線LANや認証連携などの技術についてまとめるブログです。ネコは見る専。

GL.iNet Beryl AXでなんとかPasspointを吹いてみる (VHT160/HE160もあるよ)

GL.iNet Beryl AX (GL-MT3000)でPasspointを吹くことに成功したので、ご報告です。

Beryl AXというと、ファームウェアが色々と微妙でした。WPA2 Enterpriseすら満足に使えなかったので、しばらく放置していました。以前の記事はこちら ↓

hgot07.hatenablog.com

さて、時は流れて、なんとなくOpenWrt 23.05のリリースノートを眺めていたらGL-MT3000の文字が!(゚∀゚)

もしこれがhostapdベースなら、Passpointもイケるのでは?

 

OpenWrt版ファームウェア

ファームウェアはこちら。glinet_gl-mt3000-squashfs-sysupgrade.bin をダウンロードして、Beryl AXのLuCIからあっさりアップグレードできました。一度は文鎮になりそうと覚悟していたのですが。

へぇ、MT7xxxはFilogicというブランド名になったんだ。

ただし、OpenWrt 21.xベースの純正ファームウェアからだいぶバージョンが飛んでいるので、設定はフルリセットしないとだめです

ちなみに、執筆時点 (2023/11)の純正ファームウェアはsnapshotが4.5.0で、まだ21.xベースでした。

 

パッケージの入れ替えにご用心

さっそくLuCIやopkgコマンドで探ってみると、ありました、wpad!hostapdが統合されているので、wpadでも大丈夫です。

Wirelessメニューを見ると、バァーーンとこのとおり、きちんとMediaTek MT7981が認識されています。

無線LANデバイスが正しく認識されている

無線LANバイスが正しく認識されている

適当に無線LANSSIDを追加してから /var/run の下を見ると、hostapd-phy1.conf ができていました。これはイケそう。

ここで大きな注意点です。iw-fullに入れ替えようとiwを削除したところ、デバイスが正常に認識されなくなりました。iw-full を入れても、iw を入れなおして、削除された他のパッケージを再インストールしても、WirelessメニューがGeneric表示になり、iw phyで表示が出なくなりました。どうやら、MediaTekのドライバが壊れるみたいです。iw のパッケージは、絶対にいじらないようにしましょう。

Passpointを試したいので、wpad-basicのままではいけません。wpad-opensslなどのFullバージョンに入れ替えます。入れ替えた後に、一度システムをリブートすれば、LuCIでWPA-EAPの選択肢が表示されて、WPA2 Enterpriseの設定もできるようになります。

 

Wi-Fiまわりの設定

 [2023/11/22追記] 

/etc/config/wireless の config wifi-device セクションに、最初は option country がありません。ここはきちんと JP に設定しましょう。

option country 'JP'

 

Passpointの設定

WPA2 EnterpriseのSSIDを吹いてから、過去記事のように /etc/config/wireless に追記すればOKです。

hgot07.hatenablog.com

ほいきた!(゚∀゚)

Windows 10のPasspoint表示

Windows 10のPasspoint表示

Android 13が接続された様子

Android 13が接続された様子

Android 13が接続された様子 (速度など)

Android 13が接続された様子 (速度など)

接続直後にPixel 7がピロンと鳴ったので、通知を見たところ、このような画面が。

Venue Info URL

Venue Info URL

なるほど、Android 13はPasspointのVenue Info URLに対応しているわけですね。iw_venue_url にダミーのURLを入れてあったので、本番環境では正しいサイトに向けないといけません。

 

160MHz幅に挑戦

[2023/11/22追記, 2024/2/19修正]

HT80の設定ではあっさり動きましたが、VHT160/HE160では少してこずりました。注意点として、channelをautoにした上でしばらく待たないと、電波が出てきません。こうです ↓

option channel 'auto'
option htmode 'HE160'

うひょー、これはこれは(・∀・)

VHT160のチャネルグラフ

HE160のチャネルグラフ

VHT160のチャネル詳細

HE160のチャネル詳細

VHT160でリンクしているPixel 7

HE160でリンクしているPixel 7

VHT160でspeedtest (2.5GbE接続)

HE160でspeedtest (2.5GbE接続)

iperf3も試してみます。Beryl AXにiperf3のパッケージを入れて iperf3 -s で起動……、だけではうまくいきません。Firewallの設定も必要です。

Pixel 7で試してみた結果がこちらです。

iperf3の結果

iperf3の結果

Wi-Fiの仕様の半分程度ですが、こんなものでしょうかね。

 

Wireguardを試す

[2023/11/22追記]

Wireguardを売りにしているGL.iNetですが、OpenWrt 21.x系のファームウェアを入れると速度が半分になってしまう問題がありました。兄貴分のGL-AXT1800では、メーカー謹製の対策版パッケージらしきものが入っていました。Beryl AXのOpenWrt版ファームウェアではどうでしょう?

ほい!

Wireguardの速度

Wireguardの速度

製品仕様では300Mbpsとうたわれていますが、それを超える十分な速度が出ています。これは助かる。

 

おまけ:純正ファームウェアでWPA2 Enterprise

純正ファームウェアはまだhostapdベースではないので、早くOpenWrt 23.5.xベースにしてねと、GL.iNetに要望を出しておきました。いつになることやら……。

ところで、純正ファームウェアでもWPA2 Enterpriseなら設定できることが分かりました。/etc/config/wireless の中に、次のように書きます。

option key '<RADIUS secret>'
option encryption 'wpa2'
option server '<RADIUS server IP address>'

聞き出すのに苦労しましたが。

 

どのモデルがいい?

GL.iNetの最近のモデルですと、以下のものでPasspointが使えることを確認しています。

多少大きくてもよいならSlate AXがお奨めです。

 

おしまい