LinkSys WRT1900AC を OpenWRT 化して簡単に改造してみた
この LinkSys WRT1900AC をかなり長いこと使っている。何年になるかもう覚えていない。ルーター自体の機能に問題はまったくないし、安定性も割と無敵なんだが、機能が少なすぎる。
実はこのルーター、公式が OpenWRT 対応をアナウンスしていて、OpenWRT の公式 WiKi にもずっと書かれている。ただ、この手のオープンソースファームは 5G の電波が弱いと聞いていたので、面倒くさくて手を出していなかった。
とはいえ時は流れて、今や OpenWRT は LEDE になってしまったのに、自分はまだ WRT1900AC に OpenWRT を入れていない。最近になって魔法のネット接続(VPN 的なアレ)の需要が出てきたことと、調べてみたら WRT1900AC のファームもかなり成熟してきたらしいので、試してみることにした。
ファームの書き換え自体は難しくない。今も WRT1900AC 向けのファームをメンテしている人がいて、ダウンロード先はこちら:
http://firmware.koolshare.cn/linksys_wrt_series/linksys_wrt1900ac_lede_sadog/lede-V1.9-Update14/
Telegram の討論グループを見つけられれば、そこにもっと新しい版がある。
書き換え時に factory の文字があれば、公式ファームからそのまま書き換えられる。確認すべきは自分のルーターの型番が AC1900V1 なのか AC1900V2 なのか、ということ。俺は思いっきり見間違えていて、ずっと V1 だと思い込んでいたのに、書き換えた後に V2 だと判明した。まあ間違えても救済の余地はある。WRT1900AC はデュアルファーム設計で、片方のファームが死んでももう片方に切り替えられる。確かスイッチを連打すれば切り替わったはず。
書き換え後、最新版なら中の機能はそのまま使える。ただこのファーム、問題が少なくない……
まずファーム自体の読み書き領域、overlay の空きが小さすぎる。数百 KB しかなくて、どうやら設定保存専用らしい。保存し終えたらもう終わりだ……
それからファームに内蔵されている魔法のネット接続コンポーネントに V2 のスイートが入っていない。似たような ipk はネットで見つかるけど……空きがない、入るわけないだろ。
というわけでこの問題を解決するには、自分でファームをビルドする手もあるが面倒すぎる。なのでルーターのルートディレクトリを拡張するしかない。拡張方法は簡単で、USB メモリを使う。
8GB 以上あれば十分な USB メモリを用意し、ext4 でフォーマット。挿してルーターがマウントできるか確認する。OK なら作業続行。
元のルーターのルートディレクトリのファイルを USB メモリにコピーし、その USB メモリを新しいルートとしてマウントする。
mkdir -p /tmp/introot
mkdir -p /tmp/extroot
mount --bind / /tmp/introot
mount /dev/sda1 /tmp/extroot
tar -C /tmp/introot -cvf - . | tar -C /tmp/extroot -xf -
umount /tmp/introot
umount /tmp/extroot
ルーター側でこの USB メモリの UUID を確認し、/etc/config/fstab を編集する。
config 'mount'
option target '/'
option uuid 'お前のUSBメモリのUUID'
option enabled '1'
保存して再起動すれば、拡張されているのが確認できる。
ここから先は簡単だ。opkg update も opkg install も問題なく通る。

ただこのルーターにはもう一つ新しい問題がある。温度が高すぎる。
解決方法も簡単で、メルカリ(メルカリ的なアレ)で USB 冷却ファンを買えばいい。今はルーター用の冷却ファンが山ほど出回っている。1900 回転のものは音が大きすぎるのでおすすめしない。1200 回転ならほぼ音は聞こえないし、しっかり冷やせる。
最後にルーターの弄りも完了、魔法のネット接続も OK。あと何年も延命できそうだ。
コメントは中国語の本家サイトで受け付けています。このミラーは閲覧専用です。