1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

OpenWrt Linksys WRT32X

1
Last updated at Posted at 2026-01-20

:flag_jp: Japanese notation

OpenWrt_icon.png

はじめに

記事について

Linksys WRT32X OpenWrt初期設定・運用ガイドです
インストールから各種設定、チューニングなどをまとめています

初心者対応構成

検証環境

  • Windows 11 25H2

トピック

WRT3200ACMはBluetoothを内蔵しています

https://forum.openwrt.org/t/wrt3200acm-has-built-in-bluetooth/241496


OpenWrt

メーカー

デバイス

WRT32X

465907099_9150564944977708_456515220330743788_n.jpg

仕様

Techdata

projects / openwrt / openwrt.git / commit

Table of HardwareLinksysLinksys WRT32X


GPL

GPL Code Center


Wi-Fi

比較表

項目 radio0 (5GHz) radio1 (2.4GHz) radio2 (5GHz/2.4GHz)
チップセット 88W8964 88W8964 88W8897
接続 PCIe PCIe SDIO/MMC
ドライバ mwlwifi mwlwifi mwifiex_sdio
MIMO 3x3 3x3 1x1
最大幅 VHT160 HT40 VHT80
最大速度 2165 Mbps 450 Mbps 433 Mbps
実測最大 1170 Mbps 450 Mbps 433 Mbps
DFS対応 W53/W56 - W53/W56
最大TX Power 30 dBm 30 dBm 21 dBm (制限)
Beamforming SU/MU TX/RX SU/MU TX/RX SU RX
Bluetooth - - 88W9136

Wi-Fi/Bluetooth構成

PCIe Bus
├── 0000:01:00.0 → radio0 (Marvell 88W8964, 5GHz, 3x3)
└── 0000:02:00.0 → radio1 (Marvell 88W8964, 2.4GHz, 3x3)

SDIO/MMC Bus (mmc0:0001)
├── mmc0:0001:1 → radio2 (Marvell 88W8897, 5GHz/2.4GHz, 1x1)
└── mmc0:0001:2 → Bluetooth (Marvell 88W9136, BT 4.x)
                  ├── ドライバ: btmrvl_sdio
                  ├── ファームウェア: sd8887_uapsta.bin
                  └── プロトコル: RFCOMM, BNEP, HIDP

The UCI system
LuCI web interface
URL

WRT32X Downloads, Documents, and User Guide

Wireless CAT

Divested-WRT: Linksys WRTシリーズ向けの徹底強化されたビルド


ファームウェア

フラッシュ

手順

フラッシュ&インストールシステム

aios.png

デバイスアクセス

SSH(UCI)

コンソールでアクセス
  • パワーシェル起動:キー入力:Win+x > a > はい

  • コンソールログイン (パワーシェル)
    ※192.168.1.1以外の場合、以下の形式で入力後にワンライナーを入力下さい

$ip="192.168.*.*"
  • コンソールログイン (192.168.1.1用)
    万能型ワンライナー
if(!$ip){$ip="192.168.1.1"}; ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=NUL -o GlobalKnownHostsFile=NUL -o HostKeyAlgorithms=+ssh-rsa -tt root@$ip

LuCi (GUI)

ブラウザーでアクセス

初期設定

パスワード

初期値から変更
passwd

Changing password for root
New password:

passwd:入力モード
任意のパスワード

Retype password:

passwd:入力モード
再入力

passwd: password for root changed by root

exit

ホストネーム

ホストネーム(openwrt)を変更
#!/bin/sh
HOSTNAME="openwrt" # デバイス名
uci set system.@system[0].hostname=${HOSTNAME}
uci commit system
/etc/init.d/system reload

タイムゾーン

タイムゾーンを変更
#!/bin/sh
TIMEZONE="JST-9"
ZONENAME="Asia/Tokyo"
uci set system.@system[0].timezone=${TIMEZONE}
uci set system.@system[0].zonename=${ZONENAME}
uci commit system
/etc/init.d/sysntpd restart

NTP

NTPサーバーを変更
#!/bin/sh
NTP="jp.pool.ntp.org"
uci delete system.ntp.server
uci -q batch <<EOF
	add_list system.ntp.server="0.${NTP}"
	add_list system.ntp.server="1.${NTP}"
	add_list system.ntp.server="2.${NTP}"
	add_list system.ntp.server="3.${NTP}"
	set system.ntp.enable_server='1'
	set system.ntp.use_dhcp='0'
	set system.ntp.interface='lan'
	commit system
EOF
/etc/init.d/sysntpd restart

SSH

WANからのアクセスを遮断
uci set dropbear.@dropbear[0].Interface='lan'
uci commit dropbear

LED

ネットワークアクセスで点灯点滅
#! /bin/sh
uci add system led
uci set system.@led[-1].name='wan'
uci set system.@led[-1].sysfs='green:status'
uci set system.@led[-1].trigger='netdev'
uci set system.@led[-1].dev='wan'
uci set system.@led[-1].mode='link tx rx'
uci add system led
uci set system.@led[-1].name='br-lan'
uci set system.@led[-1].sysfs='blue:wps'
uci set system.@led[-1].trigger='netdev'
uci set system.@led[-1].dev='br-lan'
uci set system.@led[-1].mode='link tx rx'
uci commit system
/etc/init.d/led reload

パッケージ

固有設定

アドバンスドリブートをインストール

github

#!/bin/sh
I18N="ja"
PKGS="luci-i18n-advanced-reboot-${I18N}"
UPDATE="${UPDATE:-$(command -v opkg && opkg update >&2; command -v apk && apk update >&2; echo 1)}"
command -v opkg && opkg install $PKGS
command -v apk  && apk add $PKGS
/etc/init.d/rpcd restart

kmod-leds-pca963xをインストール
#! /bin/sh
PKGS="kmod-leds-pca963x kmod-leds-gpio"
UPDATE="${UPDATE:-$(command -v opkg && opkg update >&2; command -v apk && apk update >&2; echo 1)}"
command -v opkg && opkg install $PKGS
command -v apk && apk add $PKGS

母国語サポート

LuCiの言語パッケージをインストール
  • 対応言語検索
#! /bin/sh
PATTERN="luci-i18n-base*"
UPDATE="${UPDATE:-$(command -v opkg && opkg update >&2; command -v apk && apk update >&2; echo 1)}"
command -v opkg && opkg list $PATTERN
command -v apk && apk search $PATTERN
  • 設定
#! /bin/sh
I18N="ja"
PKGS="luci-i18n-base-${I18N} luci-i18n-opkg-${I18N} luci-i18n-firewall-${I18N} luci-i18n-package-manager-${I18N} luci-i18n-attendedsysupgrade-${I18N}"
UPDATE="${UPDATE:-$(command -v opkg && opkg update >&2; command -v apk && apk update >&2; echo 1)}"
command -v opkg && opkg install $PKGS
command -v apk && apk add $PKGS

UCI(TTYD)

ブラウザーでUCIにアクセス
#! /bin/sh
I18N="ja"
PKGS="luci-i18n-ttyd-${I18N}"
UPDATE="${UPDATE:-$(command -v opkg && opkg update >&2; command -v apk && apk update >&2; echo 1)}"
command -v opkg && opkg install $PKGS
command -v apk && apk add $PKGS
uci set ttyd.@ttyd[0].ipv6='1'
uci set ttyd.@ttyd[0].command='/bin/login -f root' #自動ログイン
uci commit ttyd
/etc/init.d/rpcd restart

ファイラー

ブラウザでファイルにアクセス
mkdir -p /tmp/aios && wget -q -O /tmp/aios/install-filebrowser.sh https://raw.githubusercontent.com/site-u2023/aios/main/install-filebrowser.sh && sh /tmp/aios/install-filebrowser.sh
# ポート変更
uci set filebrowser.config.port=9090
# ルートディレクトリ変更  
uci set filebrowser.config.root=/mnt/storage
# ユーザーネーム及びパスワード変更
uci set filebrowser.config.username='root'
uci set filebrowser.config.password='password'
uci commit filebrowser
# 設定確認
uci show filebrowser
# サービス再起動
service filebrowser restart
# 既存DBをリセットしてUCI値で上書きしたいとき
rm /etc/filebrowser/filebrowser.db
service filebrowser restart
  • 使用方法
    filebrowser_main.sh: 自動判定 (インストールまたはリムーブ)
    filebrowser_main.sh install: インストール
    filebrowser_main.sh remove: リムーブ
    filebrowser_main.sh status: 状態確認

WinSCPでファイルにアクセス
#! /bin/sh
PKGS="openssh-sftp-server"
UPDATE="${UPDATE:-$(command -v opkg && opkg update >&2; command -v apk && apk update >&2; echo 1)}"
command -v opkg && opkg install $PKGS
command -v apk && apk add $PKGS

クライアント設定(Windows)

  • 手動インストール
  • 自動インストール
    • キー入力:Win+x > a > はい
    • 最新版ソフトウェアのインストール
powershell:クライアントPC
$psVersion = $PSVersionTable.PSVersion.Major
$LINKS = Invoke-WebRequest "https://winscp.net/eng/download.php"
$LINKS_VERSION = $LINKS.Links | Where-Object {$_.href -like "*WinSCP-*-Setup.exe*"} | Select-Object -ExpandProperty href
$VERSION = ($LINKS_VERSION -split '/')[-2] -replace "WinSCP-([0-9]+\.[0-9]+\.[0-9]+).*", '$1'
Write-Host "Version to install: $VERSION"
$downloadUrl = "https://jaist.dl.sourceforge.net/project/winscp/WinSCP/$VERSION/WinSCP-$VERSION-Setup.exe?viasf=1"
Write-Host "Downloading from: $downloadUrl"
$ONAMAE = (whoami).Split('\')[1]
$destinationPath = "C:\Users\$ONAMAE\Downloads\WinSCP-$VERSION-Setup.exe"
Invoke-WebRequest -Uri $downloadUrl -OutFile $destinationPath
Write-Host "Installing WinSCP..."
Start-Process -FilePath $destinationPath -ArgumentList "/VERYSILENT /NORESTART" -Wait
Invoke-Expression "C:\Users\$ONAMAE\AppData\Local\Programs\WinSCP\WinSCP.exe"
  • 警告 > 強制的に貼り付け

  • WinSCP設定

    • セッション
      • ホスト名:192.168.1.1
      • ユーザー名:root
      • パスワード:設定したパスワード
      • ログインをクリック

CPU負荷分散

インストール
#! /bin/sh
PKGS="irqbalance"
UPDATE="${UPDATE:-$(command -v opkg && opkg update >&2; command -v apk && apk update >&2; echo 1)}"
command -v opkg && opkg install $PKGS
command -v apk && apk add $PKGS
uci set irqbalance.irqbalance=irqbalance
uci set irqbalance.irqbalance.enabled='1'
uci commit irqbalance
/etc/init.d/irqbalance start

ネットワーク統計インターフェイス

インストール
#! /bin/sh
I18N="ja"
PKGS="luci-i18n-statistics-${I18N}"
UPDATE="${UPDATE:-$(command -v opkg && opkg update >&2; command -v apk && apk update >&2; echo 1)}"
command -v opkg && opkg install $PKGS
command -v apk && apk add $PKGS
/etc/init.d/collectd enable
/etc/init.d/rpcd restart
  • プラグイン検索
#! /bin/sh
PATTERN="collectd-mod\*"
UPDATE="${UPDATE:-$(command -v opkg && opkg update >&2; command -v apk && apk update >&2; echo 1)}"
command -v opkg && opkg list $PATTERN
command -v apk && apk search $PATTERN

追加テーマ

インストール
#! /bin/sh
PKGS="luci-theme-openwrt luci-theme-material"
UPDATE="${UPDATE:-$(command -v opkg && opkg update >&2; command -v apk && apk update >&2; echo 1)}"
command -v opkg && opkg install $PKGS
command -v apk && apk add $PKGS

AdGuard Home

インストール

オフィシャル版
OpenWrt版

初期設定

  • インストール及びリムーブ
mkdir -p /tmp && wget --no-check-certificate -O /tmp/adguardhome.sh "https://site-u.pages.dev/www/custom-scripts/adguardhome.sh" && chmod +x /tmp/adguardhome.sh && sh /tmp/adguardhome.sh

既知の問題

トラブル

2.4GHz帯(radio1)でLuCIの「モード」欄が空白になる
  • インターフェースは802.11nまでしか対応していない

  • 対策

uci set wireless.radio1.htmode='HT40'
uci commit wireless
wifi reload

リージョンコードが合わない

参考:
WRT3200ACM 5GHz DFSが動作しない(および回避策) #9956
OpenWrt/LEDE で mwlwifi を構築する

  • WRT32X及びWRT3200ACは日本未発売
    ※日本のリージョンコード製品は存在しない

  • mwlwifiはMarvellが意図的にリージョンロックを実装
    ※米国の電波法違反を防ぐ為

  • option country 'JP'ではDFS帯域が動作しない
    'US'にする必要がある

  • 対策

CH="固定" #149-161ch以外を利用
COUNTRY="US"
uci set wireless.radio0.channel=${CH}
uci set wireless.radio0.country='${COUNTRY}'
uci commit wireless

mwifiex_sdioドライバはBSS動後の設定変更を受け付けない
  • radio2の再起動を修正
    ※wifi down → 3秒待機 → wifi up

  • 対策

#!/bin/sh

WIRELESS_JS="/www/luci-static/resources/view/network/wireless.js"
cp "$WIRELESS_JS" "${WIRELESS_JS}.backup"
sed -i "s|fs.exec('/sbin/wifi',\['up',s\])|s.startsWith('radio2') ? Promise.all([fs.exec('/sbin/wifi',['down',s]),new Promise(r=>setTimeout(r,3000))]).then(()=>fs.exec('/sbin/wifi',['up',s])) : fs.exec('/sbin/wifi',['up',s])|g" "$WIRELESS_JS"
/etc/init.d/uhttpd restart
/etc/init.d/rpcd restart
echo "修正完了"

radio2のtxpowerエラーを回避させる
  • txpower_US.binが存在しないエラーを消す
    ※エラーは消えるが、送信出力は0のまま
    txpower_US.bin

  • 対策

cd /tmp
wget https://raw.githubusercontent.com/murata-wireless/nxp-linux-calibration/refs/heads/master/murata/files/1ZM/txpower_US.bin
mkdir -p /lib/firmware/nxp
cp txpower_US.bin /lib/firmware/nxp/rgpower_US.bin
wifi down radio2
sleep 3
wifi up radio2
iw dev phy2-ap0 info | grep txpower

初期化

ファクトリーリセット(初期化)

リセット
# 要注意
firstboot && reboot now

This will erase all settings and remove any installed packages. Are you sure? [N/y]

初期化:入力モード
y

デバイスリセットボタン

デバイスのリセットボタンを10秒(LEDが点滅するまで)押し続ける


あとがき

プチノスタルジーで衝動買い
基本性能が良いので古さを感じさせないね
ACでも1Gフルで出る(2コア使って使用率半分強)

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?