やってみた!

実際に試したことや調べたことをまとめます。

PC周辺

起動しなくなったWZR-HP-AG300Hを直す 2

2016/10/08

以前記事にした「WZR-HP-AG300H」の復旧が完了しましたので備忘録も兼ねて手順を公開します。

参考にさせて頂いたサイトはwelcome to www.fumi.orgさんのWIのページです。

tftpによる復旧が上手く出来なかった為にシリアルコンソール接続での復旧をすることにしたのですが肝心の「USBシリアル変換モジュール」が見当たらないので作業が出来ませんでした。「CP2102」を使った変換モジュールを購入し作業を行った手順は以下の通りです。

手順

1.「CP2102」を使った「USBシリアル変換モジュール」のドライバをパソコンにインストールします。

ダウンロードはUSB to UART Bridge VCP Drivers | Silicon Labsから。

2.インストール後に「USBシリアル変換モジュール」をUSBポートに接続するとデバイスマネージャーで確認出来ます。この時にポート番号を覚えておきましょう。(私の環境ではCOM3でした。)

3.「WZR-HP-AG300H」のシリアルのパターンに4Pinの「ピンヘッダー」をはんだ付けします。Pinはスイッチ側から「rx, tx, gnd, vcc」です。

4.「CP2102」と「WZR-HP-AG300H」を「ジャンパワイヤ」で接続します。

(CP2102)TxD <--> RxD(WZR-HP-AG300H)
(CP2102)RxD <--> TxD(WZR-HP-AG300H)
(CP2102)GND <--> GND(WZR-HP-AG300H)

5.パソコンに「Tera Term」をインストールします。ダウンロードはTera Term (テラターム) プロジェクト日本語トップページ - OSDNから。

Tera Termのメニューから通信速度などを以下のように設定。
Port: COM3(CP2102をつないで追加されたポート)
Baud rate: 115200
Data: 8bit
Parity: none
Stop: 1bit
Flow control: none

6.「WZR-HP-AG300H」の電源を入れると「Tera Term」の画面にu-bootのメッセージが流れます。

tftp server(receive) go, waiting:4[sec]
eth0 link down
Load address: 0×84000000

と表示された辺りで「Ctrl+C」でブートを中断します。

ar7100>

と表示されれば成功です。

7.以下のコマンドを「Tera Term」で入力します。

setenv accept_open_rt_fmt 1
setenv tftp_wait 10
saveenv

8.パソコンの「TFTPクライアント」を有効化します。この辺りはOS毎に微妙に違うので検索して下さい。

9.管理者権限でコマンドプロンプトを起動して

netsh int ipv4 set add lan0 192.168.11.2 255.255.255.0
netsh int ipv4 add neig lan0 192.168.11.1 02-aa-bb-cc-dd-20

と入力します。「lan0」の部分は私の環境では上手く受け付けなかったので「netsh int ipv4 show int」で確認したインターフェース番号と置き換えました。

10.ルーターを再起動します。tftp待ちのタイミングで送り込みます。予めコマンドプロンプトに以下のコマンド入力しておきましょう。

tftp -i 192.168.11.1 PUT wzrhpag300h-xxx

11.上手く出来れば書き換えが開始されます。結構な時間が掛かりますのでノンビリ待ちましょう。ルーターは書き換え後に再起動されますので待っているだけで大丈夫です。

12.最後にパソコンの設定を元に戻します。「lan0」の部分は先ほど同様に変更しました。

netsh int ipv4 del neig lan0 192.168.11.1 02-aa-bb-cc-dd-20
netsh int ipv4 delete address lan0 192.168.11.2

復旧したWZR-HP-AG300H

正直に言うと特に使い道がありませんので友人に譲る事になりました。個人的には今でも見劣りしないスペックですので壊れるまで使って頂ければ嬉しいですね。また機会があれば壊れたルーターを入手して復旧してみるのも面白いと思います。

-PC周辺