macOSでWZR-HP-AG300Hのファームウェアを書き換える方法を説明します。DD-WRTの書き込みや純正ファームへの書き戻しに使えます。
まず、WZR-HP-AG300HのLAN側ポートを有線LANでMacBookに接続します。IPアドレスは以下を設定します。
WZR-HP-AG300Hは電源を入れておきます。
NICのインタフェース名を確認します。ここでは en2
とします。
$ ifconfig en2: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
APRテーブルを手動で設定します。
sudo arp -s 192.168.11.1 02:AA:BB:CC:DD:20 en2
$ arp -a ? (192.168.11.1) at 2:aa:bb:cc:dd:20 on en2 permanent [ethernet]
ここで、WZR-HP-AG300Hの電源を入れ直します。すると、数秒後にTFTPのアップロードを実行できるタイミングが来ます。
- USBコネクタのLEDが光る(2〜3秒)
- USBコネクタのLEDが消える
- EthernetポートすべてのLEDが光る(2〜3秒)
- EthernetポートすべてのLEDが消える
- MacBookと接続しているポートのLEDが光る
- TFTPのアップロードを実行できる(4秒間)
下記の記事が分かりやすいので参照してみてください。
TFTPのアップロードを実行できるタイミングがきたら以下を実行します。
echo -e "verbose\nbinary\nput wzr_hp_ag300h_jp_175" | tftp 192.168.11.1
MacBookと接続しているポートのLEDが光ったら何回か実行してみてください。以下のように、最初の数回はエラーが出ると思います。
% echo -e "verbose\nbinary\nput wzr_hp_ag300h_jp_175" | tftp 192.168.11.1 Verbose mode on. mode set to octet putting wzr_hp_ag300h_jp_175 to 192.168.11.1:wzr_hp_ag300h_jp_175 [octet] tftp: sendto: Can't assign requested address % echo -e "verbose\nbinary\nput wzr_hp_ag300h_jp_175" | tftp 192.168.11.1 Verbose mode on. mode set to octet putting wzr_hp_ag300h_jp_175 to 192.168.11.1:wzr_hp_ag300h_jp_175 [octet] Sent 20472060 bytes in 9.4 seconds [17423030 bits/sec]
TFTPのアップロードが完了したら、正面のLEDが赤色になってファームウェアの焼き込みが始まります。数分後に正面のLEDが緑色になれば成功です。
先ほど設定したARPテーブルのエントリを削除します。
sudo arp -d 192.168.11.1
ブラウザで http://192.168.11.1 を開くと見慣れた設定画面が表示されるはずです。