hgot07 Hotspot Blog

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

Edgecore Networks EAP101のPasspoint設定 (v12.4.1編)

ほぼ一年前の2022年8月に、こんな記事を書いていました。当時のファームウェア v11.6.4-1333 では、CLIからごそごそいじって、やっとPasspointがだましだまし使えるレベルでした。一応v12からGUIに設定メニューが入ったものの、紆余曲折あって、v12.3.1でもまだGUIだけでは設定が投入できない状況。うーん……

hgot07.hatenablog.com

待望のまともに動く版GUIファームウェアが出ました!ヽ(・∀・)ノ

v12.4.1です。ファームウェアはこちらでダウンロードできます。

https://support.edge-core.com/hc/en-us/articles/4404531198233-EAP101

https://support.edge-core.com/hc/en-us/articles/4405892429081-EAP102

 

Edgecore EAP101

Edgecore EAP101

Edgecore EAP101裏面

Edgecore EAP101裏面

 

Passpoint設定の変更点

実は、一つ前のv12.4.0でも、GUIだけでPasspointの設定が投入できるようになっていました。OpenWrtベースのEAP101では、設定ファイル /etc/config/wireless の中で、config wifi-iface セクションに、Passpoint (Hotspot 2.0)関係のオプションが入る仕組みでした。しかし、これでは、バンドごとにPasspointの設定を書かないといけないという面倒くささがありました。Passpoint設定をインタフェースから独立させて、バンドステアリングできるようにするのが、正しい方向性でしょう (Merakiと同様)。

そこで、他にも色々と不具合のあったPasspointまわりの修正と、機能改善をEdgecoreにお願いしていたところ、以下の変更が入りました。

  1. Passpointの設定がProfileとして独立して、/etc/config/hotspot20 というファイルに格納されるようになった。
  2. Wirelessのバンドごとの設定では、どのPasspointプロファイルと紐づけるかを選択するだけになった。
  3. 分かりにくかったHESSIDとOperating Classに、自動的に初期値が設定されるようになった。
  4. NAI realmやPLMNなどの設定が楽になって、hostapdの記法を調べなくてもよくなった。

ちなみに、v12.4.0の設定画面は以下のとおりです。例えば NAI realm に '0,example.com,21[2:1][3:1][5:7]' のように入力しないといけないなど、大変面倒くさいものでした。

v12.4.0のHotspot 2.0設定画面

v12.4.0のHotspot 2.0設定画面

OpenRoaming設定

えっ、Passpoint設定じゃないんですか!?

なぜか分からないのですが、管理画面にPasspointやHotspot 2.0の文字が見当たらず……。しかし、OpenRoaming以外のPasspointの設定も投入できるので、画面だけの問題です。

NETWORKメニューの中にOpenRoamingというのがあるので、この中で設定します。最大32個まで登録できるようです。

OpenRoaming設定

OpenRoaming設定

 

Add newをクリックして、新しいプロファイルを作ります。HESSIDには初期値が入っているので、基地局が一台だけの場合はそのままでOKです。複数台を並べて仮想的に一台とみなす場合は、どれかのHESSIDに合わせます。

新規プロファイルの作成

新規プロファイルの作成

最低でも、Venue Name, Venue URL, Operator Friendly Name, Domain Nameの設定が必要です

PLMN ListやRoaming Consortium List、NAI Realm Listは、自分が使うPasspointの設定に合わせて、値を入れていきます。

Venue Nameの設定

Venue Nameの設定

PLMNとOperator Friendly Nameの設定

PLMNとOperator Friendly Nameの設定

Roaming Consortium Listには、5オクテットまたは3オクテットのRCOI (Roaming Consortium Organization Identifier)を並べていきます。

Roaming Consortium ListとDomain Name Listの設定

Roaming Consortium ListとDomain Name Listの設定

NAI Realmの設定が、本当に楽になりました。EAPタイプとAuthentication Methodを選択していくだけです。

実はここだけの話、こんな感じで設定できるようにして欲しいと昨年からEdgecoreにお願いしていたら、2023年3月にAccton/Edgecoreの台北オフィスで打ち合わせした際に、GUIのモックができていました (・∀・)
(さりげなくべたに貢献をアピールしていくスタイル)

NAI Realmの設定

NAI Realmの設定

一通り設定を入れると、/etc/config/hotspot20 の中に、こんな感じでセクションが追加されます。

config profile
        option name 'example'
        option iw_internet '1'
        option iw_access_network_type '3'
        option iw_hessid 'F8:8E:A1:xx:xx:xx'
        option iw_venue_group '3'
        option iw_venue_type '0'
        option network_auth_type '00'
        option iw_ipaddr_ipv4_type_availability '4'
        option iw_ipaddr_ipv6_type_availability '0'
        option hs20_operating_class '5173'
        option iw_ipaddr_type_availability '10'
        option iw_enabled '1'
        option anqp_domain_id '88'
        option iw_anqp_3gpp_cell_net '999,002'
        list iw_venue_name 'eng:testVenue'
        list iw_venue_url '1:https://www.example.com/info-eng'
        list hs20_oper_friendly_name 'eng:testOperator'
        list iw_roaming_consortium 'deadbeef99'
        list iw_domain_name 'example.com'
        list iw_nai_realm '0,example.com,21[2:1][3:1][5:7]'

 

Passpoint Profileの紐づけ

WIRELESSメニューの中で、Passpointを有効化したいSSIDごとに、OpenRoaming Passpoint Profileを紐づけます。

Passpoint Profileの紐づけと有効化

Passpoint Profileの紐づけと有効化

/etc/config/wireless の中に、以下のような行が追加されます。随分シンプルになりました。

        option hs20 '1'
        option hs20_profile 'example'

 

端末からのテスト

基地局に設定したものに対応したPasspointプロファイルを端末にインストールして、動作確認します。Windows 11の例はこのとおり、EAP101から正しくPasspoint対応の電波が出ていることが分かります。

なお、WindowsiOS/iPadOSでは、一度見たPasspointの値をキャッシュに保持して、なぜかずっとその情報を維持してしまう問題があります。基地局に新しいNAI realmを登録しても、端末を再起動するか、SSIDを変更するまで、端末が検出できないことがあります。(このヘンテコな実装をしたヤツは誰だ!(ガラッ))

端末からのテスト

端末からのテスト

おわりに

Edgecoreの基地局も、やっと本格的にPasspointが使えるようになりました。自分はまだ試していないのですが、ecCLOUDからの設定投入もできるみたいです。既に大規模な導入事例も出てきているので、探してみてください。

 

再見