2022年9月から日本でも6GHz帯が無線LANで使用することが許可されました。Netgear A8000を使って、ラズパイで6GHz対応のブリッジモードアクセスポイントを作ってみました(English version article is here)。
接続用のクライアントは「ラズパイで6GHz帯WiFiを使ってみた(クライアント編)」で作ります。
なお、ルータモードアクセスポイントの構築については、ラズパイで6GHz帯WiFiを使ってみた(ルータモードアクセスポイント編)をご覧下さい。
まとめ - これだけやればできる
- A8000がUSB接続時に返すベンダーID・製品IDが標準mt7921uドライバに認識されるようにする
- Linux無線規制データベースを最新化して日本での6GHz帯使用許可を反映する
- MediaTek WiFiアダプタ用のファームウェアを最新化する
- bridge-utilsを導入する
- hostapdを導入してv2.10へ差し替える
前提
- Raspberry Pi OSはBullseye(kernel 6.1)を利用しています
- ラズパイの有線LANのインターフェース名がeth0、内蔵WiFiのインターフェース名がwlan0、A8000のインターフェース名がwlan1であるとします
- ラズパイが有線LANで、動的IPアドレス配布を行う上流のルータ機器(ONU等)に接続されているとします
A8000がUSB接続時に返すベンダーID・製品IDが標準mt7921uドライバに認識されるようにする
「ラズパイで6GHz帯WiFiを使ってみた(クライアント編)」を参照
Linux無線規制データベースを最新化して日本での6GHz帯使用許可を反映する
「ラズパイで6GHz帯WiFiを使ってみた(クライアント編)」を参照
MediaTek WiFiアダプタ用のファームウェアを最新化する
「ラズパイで6GHz帯WiFiを使ってみた(クライアント編)」を参照
bridge-utilsを導入する
sudo apt-get install bridge-utils
でパッケージを導入した後、設定ファイル/etc/network/interfaces.d/bridge.conf
を新規に作成します。
auto br0
iface br0 inet dhcp
bridge_ports eth0 wlan1
hostapdを導入してv2.10へ差し替える
まず最初に、sudo apt-get install hostapd
でパッケージを導入します。
次に、802.11axサポートはv2.10で付加されたので、本稿執筆当時で最新であるv2.10への差し替えを行います。
「ラズパイで6GHz帯WiFiを使ってみた(クライアント編)」ではWPA Supplicantをv2.10へ差し替えます。WPA Supplicantとhostapdの両方が含まれたhostap_2_10.tar.gz
を配布サイトからダウンロードします。
以下は手順です。
tar -xzvf hostap_2_10.tar.gz
cd hostap_2_10/hostapd
cp defconfig .config
echo CONFIG_IEEE80211AX=y >> .config
echo CONFIG_IEEE80211AC=y >> .config
echo CONFIG_SAE=y >> .config
echo CONFIG_ACS=y >> .config
make
sudo mv /usr/sbin/hostapd /usr/sbin/hostapd_2_9
sudo cp hostapd /usr/sbin/
sudo mv /usr/sbin/hostapd_cli /usr/sbin/hostapd_cli_2_9
sudo cp hostapd_cli /usr/sbin/
hostapdの設定ファイル/etc/hostapd/hostapd.conf
を新規に作成します。ssid=
、sae_password=
、channel=
の部分は適当に変更して下さい。
ctrl_interface=/var/run/hostapd
ctrl_interface_group=0
country_code=JP
interface=wlan1
bridge=br0
driver=nl80211
ssid=foo-ax
sae_password=foobar
hw_mode=a
channel=57
ieee80211ax=1
wmm_enabled=1
op_class=131
ieee80211w=2
auth_algs=3
wpa=2
wpa_key_mgmt=SAE
rsn_pairwise=CCMP
rsn_preauth=1
sae_require_mfp=1
sae_pwe=1
wpa_group_rekey=1800
group_cipher=CCMP
wpa_psk_radius=0
hostapdをブート時に自動開始するサービスとして登録します。
sudo systemctl unmask hostapd.service
sudo systemctl enable hostapd.service
もし、wlan0を無効化して有線LANと6GHz帯アクセスポイントのみの利用としたい場合には、sudo iwconfig wlan0 txpower off
します。
(解説記事はこちら)
完了
sudo hostapd_cli status
すると、6GHz帯でアクセスポイントが稼働していることがわかります。お疲れ様でした。
$ sudo hostapd_cli status
Selected interface 'wlan1'
state=ENABLED
phy=phy1
freq=6235
num_sta_non_erp=0
num_sta_no_short_slot_time=1
num_sta_no_short_preamble=1
olbc=0
num_sta_ht_no_gf=0
num_sta_no_ht=1
num_sta_ht_20_mhz=0
num_sta_ht40_intolerant=0
olbc_ht=0
ht_op_mode=0x0
cac_time_seconds=0
cac_time_left_seconds=N/A
channel=57
edmg_enable=0
edmg_channel=0
secondary_channel=0
ieee80211n=0
ieee80211ac=0
ieee80211ax=1
beacon_int=100
dtim_period=2
he_oper_chwidth=0
he_oper_centr_freq_seg0_idx=0
he_oper_centr_freq_seg1_idx=0
supported_rates=0c 12 18 24 30 48 60 6c
max_txpower=23
bss[0]=wlan1
bssid[0]=94:18:65:xx:xx:xx
ssid[0]=foo-ax
num_sta[0]=1