Ubiquiti Networks Edgerouter X のファームウェアのメジャーバージョンアップをしてみた備忘録

Gadget
Photo by hyt.

Ubiquiti Networks Edgerouter X のファームウェアのメジャーバージョンアップをしてみた備忘録です.

メジャーバージョンアップしてたの?

某掲示板によると,現在の私のメインルーターの ER-X のファームウェアがメジャーアップグレートされてる(ver2.0 になった)らしく,確かに調べてみると,公式 blog で

https://community.ubnt.com/t5/EdgeMAX-Updates-Blog/EdgeMAX-EdgeRouter-software-release-v2-0-0/ba-p/2622317

の様にアナウンスされています.ファームウェアのダウンロードページには掲載されていないんですけど…….まぁ,こういうものは,安易にバージョンアップするもんじゃ無いので,載せていないんでしょうね.私のは完全に個人的なもの(オモチャとも言う)なので,気にせずやってみることにしました.

リリースノートの概要

どうも Base となっている OS が Debian Wheezy (ver 7) から Debian Stretch (ver 9) になったので,メジャーバージョンアップとしたみたいですね.Jessie (ver 8) が飛ばされていきなり最新安定版までアップグレードするんですね.

あと新機能として,

  • vpn ipsec global-config コマンドの追加: IPSec を実現する Strongswan の設定ファイルを直接書き換えることができる.
  • allow-access-to-local-interface コマンドの追加: IPSec VPN 経由でローカルへのアクセスを許しているホストにさらに ER-X への管理用アクセス(SSH と WebGUI双方)を許すことができる.
  • set service unms lldp disable: UNMS サービスを有効化すると標準で有効となる LLDP サービスを停止させることができる.

があって,あとはかなり多数のバグの修正と初期設定の変更が行われています.DHCP とか PPPoE とかのバグもあるので,私の場合も無関係じゃ無いですし,ER-X 以外のルーターだと,ipv4 の bonding(リンクアグリゲーション)のハードウェア処理のサポートが加わったらしいです.

なお,問題点として,ER-X と ER-X SFP だと,

  • hwnat offloading を有効にしているとランダムな LoadBalancing に失敗する(disable hwnat offloading 推奨)
  • hwnat offloading を有効にしていると PPPoE client interface が再接続に失敗する(これは LoadBalancing か ECMP の設定を有効の場合のみっぽい.disable hwnat offloading 推奨)
  • IPSec offloading は動かない(これは相変わらずだったと思う)

が挙げられています.その他にも主要ソフトのアップデートとかカーネルのアップデートとかも書いてありますが,これは元サイトで確認してください.

https://community.ubnt.com/t5/EdgeMAX-Updates-Blog/EdgeMAX-EdgeRouter-software-release-v2-0-0/ba-p/2622317

私の場合,LoadBalancing も IPSec も使ってないので,アップグレードによるメリットしか無い訳ですね.

アップデート手順

まず,注意事項として,

ER-X/ER-X-SFP/EP-R6 はストレージがキツキツなので,アップグレード前に,delete system image でキチンと空きを作ること!

と書いてあります.従って今回は念のため全てコマンドラインからアップデートを実行することにしました.詳細は以下の通りです.

$ delete system image 
The system currently has the following image(s) installed:

v1.10.8.5142457.181120.1809    (running image) (default boot) 

There is no image to delete.

$ add system image https://dl.ubnt.com/firmwares/edgemax/v2.0.x/ER-e50.v2.0.0.5155111.tar
Trying to get upgrade file from https://dl.ubnt.com/firmwares/edgemax/v2.0.x/ER-e50.v2.0.0.5155111.tar
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 79.7M  100 79.7M    0     0  2684k      0  0:00:30  0:00:30 --:--:-- 2312k
Download succeeded
Checking upgrade image...Done
Preparing to upgrade...Done
Clearing directory /var/cache/apt (356.0K)...Done
Copying upgrade image...Done
Removing old image...Done
Checking upgrade image...Done
Copying config data...Done
Finishing upgrade...Done
Upgrade completed

$ show system storage 
df: /run/netns/zebosfib0: Permission denied
df: /run/netns/zebosfib1: Permission denied
Filesystem                Size      Used Available Use% Mounted on
ubi0_0                  213.5M    150.5M     58.3M  72% /root.dev
aufs                    213.5M    150.5M     58.3M  72% /
devtmpfs                124.3M         0    124.3M   0% /dev
tmpfs                   124.4M    280.0K    124.2M   0% /run
tmpfs                   124.4M    280.0K    124.2M   0% /run
tmpfs                   124.4M    244.0K    124.2M   0% /var/log
tmpfs                   124.4M     32.0K    124.4M   0% /tmp
none                    124.4M    708.0K    123.7M   1% /opt/vyatta/config
unionfs                 124.4M     32.0K    124.4M   0% /opt/vyatta/config/tmp/new_config_4803
unionfs                 124.4M     32.0K    124.4M   0% /opt/vyatta/config/tmp/new_config_32674
unionfs                 124.4M     32.0K    124.4M   0% /opt/vyatta/config/tmp/new_config_3443

$ show system image storage 
Image name                        Read-Only   Read-Write        Total
------------------------------ ------------ ------------ ------------
v2.0.0.5155111.190103.1639            79604          116        79720
v1.10.8.5142457.181120.1809           78508          564        79072

$ reboot

念のため,アップグレード用のファームウェア書き込み後も空き容量が十分かどうか確認してからリブートしました.

再起動後,ssh でログインし直してから,

$ show version
Version:      v2.0.0
Build ID:     5155111
Build on:     01/03/19 16:39
Copyright:    2012-2018 Ubiquiti Networks, Inc.
HW model:     EdgeRouter X 5-Port
HW S/N:       XXXXXXXXXXX
Uptime:       11:37:53 up 3 min,  1 user,  load average: 1.67, 1.10, 0.46

その後一通り動作に問題が無いことを確認したあと,(以前の文鎮化させたイヤな思い出があるので)旧ファームウェアを

$ delete system image 
The system currently has the following image(s) installed:

v2.0.0.5155111.190103.1639     (running image) (default boot) 
v1.10.8.5142457.181120.1809    

You are about to delete image [v1.10.8.5142457.181120.1809]
Are you sure you want to delete ? (Yes/No) [Yes]: 
Removing old image... Done

の通り削除しました.

Debian のパッケージを追加していたりすると,さらに,

  • system package repository xxx distribution stretch

なるコマンドを発行しておかねばならないみたいですが,これは私は対象外なので,やらなくて良しです.

と言うことで,これで終わりか,と思ったのですが,公式 blog の文末に,

Bootloader の最新版は v.1.10.7 と変わってないよ.現在インストールされている bootloader の version は show boot system-image で,アップグレードは add system boot-image でできるよ!

って書いてあります.念のため,確かめてみると,

$ show system boot-image 
The system currently has the following boot image installed:
Current boot version: UNKNOWN
Current boot md5sum : dbce6273c8740383f84040e33f7fffe7

New uboot version is available: boot_e50_001_1e49c.tar.gz
New boot md5sum : 2146fb2e3b2cd543efaa0a687e2ad0ce
Run "add system boot-image" to upgrade boot image.

おう,更新してない…….やらなくても良いんでしょうが,ここまでくればもののついでなので,

$ add system boot-image 
Uboot version [UNKNOWN] is about to be replaced
Warning: Don't turn off the power or reboot during the upgrade!
Are you sure you want to replace old version? (Yes/No) [Yes]: 
Preparing to upgrade...Done
Copying upgrade boot image...Done
Checking boot version: Current is UNKNOWN; new is e50_001_1e49c ...Done
Checking upgrade image...Done
Writing image...Done
Upgrade boot completed

$ show system boot-image 
The system currently has the following boot image installed:
Current boot version: e50_001_1e49c
Current boot md5sum : 2146fb2e3b2cd543efaa0a687e2ad0ce

$ reboot

としました.ブートローダーの更新ですから,失敗すると私では手も足もでなくなります.起動してきてくれる様に手を合わせて3分ほど待つと,無事動き出したみたいで,これで全作業完了です.

あぁ……疲れた.

タイトルとURLをコピーしました