WZR-HP-AG300H への OpenWRT のインストール
Ubuntu 15.10 を WZR-HP-AG300H につないで作業を行った。 基本的に http://www57.atwiki.jp/ddwrt_openwrt/pages/23.html の通りに行った。
PC と ルータとの接続
WAN ポートに一番近い LAN ポートにつなぐ必要があるらしい。
必要なソフトウェアのインストール
tftp を使ってルータに OpenWRT をインストールすることになる。
apt-get install tftp-hpa
tftp というパッケージだと後のコマンドの引数が変わるので注意。
ファームウェアのダウンロード
OpenWRT のサイトからファームウェアをダウンロードする。
wget http://downloads.openwrt.org/chaos_calmer/15.05/ar71xx/generic/openwrt-15.05-ar71xx-generic-wzr-hp-ag300h-squashfs-tftp.bin
デバッグモードで telnetd の起動
ファームウェアのバックアップと u-boot の設定をしないといけないので telnet を起動する必要がある。
ルータは何も設定を変えていない標準の状態とする。 http://192.168.11.1/ に接続している場合は関係するブラウザを一度すべて閉じる。 http://192.168.11.1/cgi-bin/cgi?req=frm&frm=py-db/55debug.html にアクセスする。 ID は bufpy でパスワードは otdpopy でログインする。 管理者のパスワードを設定している場合は otdpopy に続けて、管理者のパスワードを入力する。
デバッグモードの telnetd から start をクリックする。
ファームウェアのバックアップ
USB メモリを挿す。マウントされたディレクトリに移動する。
cd /mnt/usb0_0/
ここにバックアップ用のファイルを作る。
cat /proc/mtd
でパーティションを確認する。ファイルにも保存する。
cat /proc/mtd > mtd.txt
mtd0 から mtd6 まであるので
dd if=/dev/mtdblock/0 of=mtd0.dd
dd if=/dev/mtdblock/1 of=mtd1.dd
dd if=/dev/mtdblock/2 of=mtd2.dd
dd if=/dev/mtdblock/3 of=mtd3.dd
dd if=/dev/mtdblock/4 of=mtd4.dd
dd if=/dev/mtdblock/5 of=mtd5.dd
dd if=/dev/mtdblock/6 of=mtd6.dd
でバックアップを作る。
U-Boot の設定
ubootenv list の出力を保存しておく。
ubootenv list > /mnt/usb0_0/ubootenv.txt
変数 accept_open_rt_fmt は標準では存在しないのだが、 tftp でファームウェアをインストールするためにはこの変数の値を 1 にする。
ubootenv set accept_open_rt_fmt 1
で設定する。設定されているかを確認する。念のためファイルに保存しておく。
ubootenv list
ubootenv list > /mnt/usb0_0/ubootenv2.txt
ファームウェアのインストール
ルータの電源を切っておく (コンセントを抜く)。 IP アドレスと MAC アドレスを設定した後に tftp でファイルを送る。
sudo ifconfig eth0:1 192.168.11.2
sudo arp -s 192.168.11.1 02:aa:bb:cc:dd:20
とする。端末に
tftp -m binary 192.168.11.1 -c put openwrt-15.05-ar71xx-generic-wzr-hp-ag300h-squashfs-tftp.bin
と入力しておき、Enter を押してコマンドを実行したらすぐにルータの電源を入れる。
WZR-HP-G450H へのインストール
WZR-HP-AG300H と同じ方法でインストールできる。 変わるのは tftp でファームウェアを送信するときの MAC アドレスだけ。
sudo arp -s 192.168.11.1 02:aa:bb:cc:dd:20
を
sudo arp -s 192.168.11.1 02:aa:bb:cc:dd:23
に変更する。
ファームウェアは
wget http://downloads.openwrt.org/chaos_calmer/15.05/ar71xx/generic/openwrt-15.05-ar71xx-generic-wzr-hp-g450h-squashfs-tftp.bin
でダウンロードした。