更新 後の再設定が少し必要なことから億劫になっていた GL-iNet 社のルータ、 GL-AR750S の ファームウェア が流石に古くなってきたので、2年ぶりに 更新 してみると、一気に現行版へは 更新 出来ないことに気づかず悪戦苦闘。
まずAP専用機を更新しようとするも
我が家に2台あるGL-AR750Sのうち、増設WiFi APとしてのみ使用している個体(以下、便宜上[E4]と呼称)から始めます。2年前にこちらの記事で更新したファームウェア ver.3.104で使い続けていますが、これはOpenWRT 18.06をベースにしていることもあり、特にWiFi機能の時代遅れ感は否めません。
更新前にターミナルから、現在稼働中の全サービスの状態を出力しておきます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
# for F in /etc/init.d/* ; do $F enabled && echo $F on || echo $F **disabled**; done /etc/init.d/boot on /etc/init.d/clear_flag **disabled** /etc/init.d/cron on /etc/init.d/ddns on /etc/init.d/dnscrypt-proxy **disabled** /etc/init.d/dnsmasq **disabled** /etc/init.d/done on /etc/init.d/dropbear on /etc/init.d/firewall **disabled** uci: Entry not found /etc/init.d/firewall_gl on /etc/init.d/fstab on /etc/init.d/generate_channel_list on /etc/init.d/gl_fixdomain on /etc/init.d/gl_health on /etc/init.d/gl_init **disabled** /etc/init.d/gl_ipv6 on /etc/init.d/gl_monitor on /etc/init.d/gl_mqtt on /etc/init.d/gl_route_policy on /etc/init.d/gl_s2s on uci: Entry not found /etc/init.d/gl_ssids on /etc/init.d/gl_tertf **disabled** /etc/init.d/gl_udp_server on /etc/init.d/glcrond on /etc/init.d/glfw on /etc/init.d/glqos **disabled** /etc/init.d/gpio_switch on /etc/init.d/initswitch on /etc/init.d/led on /etc/init.d/lighttpd on /etc/init.d/log on /etc/init.d/modem-init on /etc/init.d/mount_usdk **disabled** /etc/init.d/mwan3 on /etc/init.d/network on /etc/init.d/nodogsplash on /etc/init.d/odhcpd **disabled** /etc/init.d/openvpn **disabled** /etc/init.d/qosswitch **disabled** /etc/init.d/relayd on /etc/init.d/rpcd on /etc/init.d/samba on /etc/init.d/shortcut-fe on /etc/init.d/smstools3 on /etc/init.d/startvpn on /etc/init.d/stubby on /etc/init.d/sysctl on /etc/init.d/sysfixtime on /etc/init.d/sysntpd on /etc/init.d/system on /etc/init.d/tor on /etc/init.d/ucitrack on /etc/init.d/uhttpd **disabled** /etc/init.d/umount **disabled** /etc/init.d/urandom_seed on /etc/init.d/usbmode on /etc/init.d/vnstat on /etc/init.d/vpn-service on /etc/init.d/wireguard on /etc/init.d/wireguard_server on |
ファームウェアの更新はOpenWRTのLuCI WebUIではなく、GL-iNet謹製のAdmin PanelのUPGRADEページで行います。オンライナップグレードで検出されたv3.211をダウンロードするも、何度やってもダウンロード後にFail判定されてしまいます。
U-Bootからファームウェアをアップロードするも
そこでGL-iNetのダウンロードページから、このバージョンのU-Bootからアップグレード出来るimg形式のファイルを取得し、
1 2 |
14,786,894 Byte openwrt-ar750s-3.211-1227.tar ←【AdminPanel用】 17,826,126 Byte openwrt-ar750s-3.211-1227.img ←【U-Boot用】 |
こちらの手順に従い、リセットボタンを押したまま通電してU-Bootのtftpモードに入り、ブラウザからアクセスして先ほどのimgファイルをアップロードしてみますが、こちらも玉砕です。
一旦マイナーアップデートしてみる
先ほどのファームウェアダウンロードページをよく見ると、現在稼働中のv3.104から安定最新版であるv3.211の間には、以下のようにいくつかのバージョンが存在しています。
1 2 3 4 5 |
v3.211 ←【安定最新版】 v3.203 ------ v3.105 v3.104 ←【イマココ】 |
そこで先ずはv3.1xx系最終のv3.105へ更新してみることにし、ダウンロードしたtarファイルをAdmin PanelのUPGRADEページで手動アップロードすると、今回は受け付けてもらえました。
1 |
15,820,800 Byte openwrt-ar750s-3.105.tar |
早速Installボタンを押し、2,3分程度でv3.105へのマイナーアップデートは完走しました。
ようやく最新ファームウェアへアップグレード
ここで再びAdmin PanelのUPGRADEページのオンラインアップグレードを試してみると、今回はv.3.211へのアップグレードを受け付けてもらえました。
Installボタンを押してアップグレードを進め、こちらも数分後にはアップグレードは問題無く完走しました。
プラグインの復元
ファームウェアの更新を終えたら、Admin PanelのPlug-insページを開いて、抜けてしまったプラグインの復元です。この個体にはAPとして必要な機能しか入れていないのでこの程度しか有りませんが以前、復元漏れしていたこともあるので、一応メモして後でクロスチェックしておきます。
ファイル共有の復元
次にFileSharingページを開くと、こちらも必要なプラグインが抜けた状態になっていました。ファイル共有を使わないのであればこのままで良いのですが、SDカードストレージをネットワーク共有用に公開しているので、Installボタンを押して必要なプラグインを復元してもらいます。
復元後、共有に公開するパスの指定が抜けていたので正しく設定しておきました。
この操作でsambaに関する設定が上書きされるようなので、念の為にコンソールから次のファイルを確認しておいた方が良いでしょう。
1 2 |
/etc/config/samba /etc/samba/smb.conf.template |
LuCIの復元
Admin Panelでの設定を終えたのでAdvancedをクリックしてOpenWRT LuCIのページへ移ろうとすると、LuCIも復元が必要な様子。
Installボタンを押してしばらくすると長いメッセージに驚かされますが、インストール成功です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
Status: installed successfully Stdout: Removing package luci-base from root... Not deleting modified conffile /etc/config/luci. Not deleting modified conffile /etc/config/ucitrack. Installing luci-mod-rpc (git-21.189.23240-7b931da-1) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/luci-mod-rpc_git-21.189.23240-7b931da-1_all.ipk Installing luci-lib-json (git-21.189.23240-7b931da-1) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/luci-lib-json_git-21.189.23240-7b931da-1_all.ipk Installing luci-base (git-21.189.23240-7b931da-1) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/luci-base_git-21.189.23240-7b931da-1_mips_24kc.ipk Installing luci (git-21.189.23240-7b931da-1) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/luci_git-21.189.23240-7b931da-1_all.ipk Installing luci-proto-3g (git-21.189.23240-7b931da-1) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/luci-proto-3g_git-21.189.23240-7b931da-1_all.ipk Installing luci-proto-qmi (git-21.189.23240-7b931da-1) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/luci-proto-qmi_git-21.189.23240-7b931da-1_all.ipk Installing luci-proto-relay (git-21.189.23240-7b931da-1) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/luci-proto-relay_git-21.189.23240-7b931da-1_all.ipk Installing luci-proto-ncm (git-21.189.23240-7b931da-1) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/luci-proto-ncm_git-21.189.23240-7b931da-1_all.ipk Installing luci-proto-wireguard (git-21.189.23240-7b931da-1) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/luci-proto-wireguard_git-21.189.23240-7b931da-1_all.ipk Installing uhttpd (2020-10-01-3abcc891-1) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/uhttpd_2020-10-01-3abcc891-1_mips_24kc.ipk Installing libiwinfo-lua (2019-10-16-07315b6f-7) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/libiwinfo-lua_2019-10-16-07315b6f-7_mips_24kc.ipk Installing luci-mod-status (git-21.189.23240-7b931da-1) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/luci-mod-status_git-21.189.23240-7b931da-1_mips_24kc.ipk Installing luci-mod-system (git-21.189.23240-7b931da-1) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/luci-mod-system_git-21.189.23240-7b931da-1_all.ipk Installing rpcd-mod-iwinfo (2020-05-26-67c8a3fd-1) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/rpcd-mod-iwinfo_2020-05-26-67c8a3fd-1_mips_24kc.ipk Installing luci-mod-network (git-21.189.23240-7b931da-1) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/luci-mod-network_git-21.189.23240-7b931da-1_all.ipk Installing luci-mod-admin-full (git-21.189.23240-7b931da-1) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/luci-mod-admin-full_git-21.189.23240-7b931da-1_all.ipk Installing luci-theme-bootstrap (git-21.189.23240-7b931da-1) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/luci-theme-bootstrap_git-21.189.23240-7b931da-1_all.ipk Installing luci-app-firewall (git-21.189.23240-7b931da-1) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/luci-app-firewall_git-21.189.23240-7b931da-1_all.ipk Installing luci-app-opkg (git-21.189.23240-7b931da-1) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/luci-app-opkg_git-21.189.23240-7b931da-1_all.ipk Installing luci-proto-ppp (git-21.189.23240-7b931da-1) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/luci-proto-ppp_git-21.189.23240-7b931da-1_all.ipk Installing luci-proto-ipv6 (git-21.189.23240-7b931da-1) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/luci-proto-ipv6_git-21.189.23240-7b931da-1_all.ipk Installing rpcd-mod-rrdns (20170710) to root... Downloading https://fw.gl-inet.com/releases/v19.07.8/packages-3.0/ath79/packages/rpcd-mod-rrdns_20170710_mips_24kc.ipk Configuring luci-proto-wireguard. Configuring luci-lib-json. Configuring luci-mod-rpc. Configuring luci-app-opkg. Configuring libiwinfo-lua. Configuring luci-base. Configuring luci-mod-system. Configuring luci-theme-bootstrap. Configuring luci-mod-status. Configuring luci-app-firewall. Configuring luci-proto-3g. Configuring luci-proto-qmi. Configuring luci-proto-ppp. Configuring rpcd-mod-iwinfo. Configuring luci-mod-network. Configuring luci-mod-admin-full. Configuring luci-proto-ipv6. Configuring luci-proto-relay. Configuring luci-proto-ncm. Configuring uhttpd. Configuring rpcd-mod-rrdns. Configuring luci. |
不要な設定・サービスの削除
ここからはLuCI上で、デフォルトで入っている不要項目を削除します。まずインターフェイスは、この個体にはLANサブネットしか存在しておらず、全ての物理ポートはLANに属しているので、それ以外を削除します。
続いてWiFiの項では、デフォルトのゲストSSIDを削除。
FirewallはAPには不要なので、全てのゾーンを削除します。
そしてSystemメニューのStartupページで起動時に開始されるサービスのうち、APとしては不要な次のサービスを止めて(Stop)、無効(Disabled)にします。
- dnsmasq
- firewall
- odpcpd
- gl_tertf
細かいサービスの可否については様子を見ながらチューニングするので、セットアップはここまで。最後にファームウェア更新後のステータスを確認してみると、空きメモリが10MBほど少なくなりました。
これで要領は掴めたので、次ページではいよいよ同じモデル2台目メインルータ号機のアップグレードに取り組みます。