VMware上にOpenWRT(luci)最新版をインストール


以前、buffaloのWHR-300HP2にDD-WRTをインストールして高機能な無線LANルータとして利用していたことがあります。

その当時はOpenWRTはGUIがまだそこまで整備されていなかった為、DD-WRTを選択していたのですが、昨今はOpenWRTにもluciという高機能なGUIが整備され、高価な業務用無線LANルータを用いてやっと出来る機能が、OpenWRTで実現可能です。

「じゃあ、やってみようか」と思い、OpenWRTのGUIについて調べても、新旧入り混じった情報が見つかり、実際に導入するためには手持ちのルータ一台を実験に出す必要がありました。

「じゃあ、Vmwareで検証できないのか?」と思い、やってみたのがこの記事です。

※実機インストールは「TP-Link Archer C6 v2へOpenWRT最新版を導入」参照

OpenWRTって何?

メーカー提供の有線ルータ/無線LANルータのファームウェアを書き換え可能なフリーのファームウェアです。OpenWRT化することによって得られるメリットは以下の通り。

メリット

  • ハイエンド機種でしかサポートされない機能を低価格機種で実現可能
  • 3000以上にも及ぶパッケージから、好みのソフトウェアを自前で導入可能
  • 高セキュリティ
  • 安定性(全てのハードウェアで共通のモジュールを利用していることから、個々の製品ごとに調整後、バグフィックスのみとなったメーカー製ファームウェアよりも、常に更新されているパッケージを利用可能なOpenWRTは安定性が高いことを期待できます)
  • VLANが利用可能

デメリット

  • 電波法にひっかかる可能性がある(日本で使う場合の一番のデメリットです)
  • ファームウェアを元に戻せないと、メーカー保証が受けられなくなる
  • 壊したら自己責任(主にファームウェアの更新で失敗して起動しなくなること)

誰がいつ、無線LANの電波が届くところまできて、「はい。あなた技適ついてない電波飛ばしてますね。違法です」と言うのか不勉強で存じ上げませんが、今回は、Vmware上の仮想マシンとして実行する為、電波法は関係ありません。

その他、壊した場合についても、Vmwareのイメージであれば仮想マシンを削除すれば良いだけなので、今回は問題ありません。

OpenWRT19.07のインストール

事前準備(vmdkイメージを作成する)

qemu-imgでVmwareのHDDイメージであるvmdkにコンバートする為、Linuxかmacで以下の処理を行う必要があります。

Windowsしか持っていない人は、VmwarePlayerをダウンロードしてきて、Vmware上にUbuntuの最新版をインストールして実行してください。ファイルイメージの受け渡しはSCPなりsambaなりで良いと思います。

Ubuntu20.04の場合

sudo apt install qemu-utils

wget https://downloads.openwrt.org/releases/19.07.7/targets/x86/64/openwrt-19.07.7-x86-64-combined-ext4.img.gz
gunzip openwrt-19.07.7-x86-64-combined-ext4.img.gz
qemu-img convert -f raw -O vmdk openwrt-19.07.7-x86-64-combined-ext4.img openwrt-19.07.7-x86-64-combined-ext4.vmdk

Macの場合

brew install qemu
wget https://downloads.openwrt.org/releases/19.07.7/targets/x86/64/openwrt-19.07.7-x86-64-combined-ext4.img.gz
gunzip openwrt-19.07.7-x86-64-combined-ext4.img.gz
qemu-img convert -f raw -O vmdk openwrt-19.07.7-x86-64-combined-ext4.img openwrt-19.07.7-x86-64-combined-ext4.vmdk

VMwareでの操作

VMwareでの操作は以下の流れになります。以下に図解で解説していきます。

  1. Vmware仮想マシンをLinuxカーネル4.1向け(x64)で作成
  2. SCSI HDDの設定を削除
  3. IDE HDDの設定を追加(既存イメージとして「openwrt-19.07.7-x86-64-combined-ext4.vmdk」を指定)
  4. LANカードを1つ追加
  5. USBやプリンタなど、邪魔なものを削除
  6. VMwareから、仮想マシン起動

vmwareは公式サイトからDLしてインストールを済ませておいてください。

「あとでOS をインストール」を選択

Linux、そのたのLinux 4.x(64bit)を選択

仮想マシン名を入力。今回はOpenWRT19としました。(事前に検証用でOpenWRTは作ってしまっていた為、19をつけています。分かりやすければ何でもいいです。)

Vmwareが提案してくるSCSI接続のディスクサイズは、1GB、仮想ディスクを単一ファイルとして格納を選択します。

ここで作成するHDDは使わず、ATAPI(IDE)接続のHDDを後で作成し、そちらに、事前準備で用意したvmdkイメージを関連付けます。そのため、ここは「vmwareの仕様上、SCSIHDDを作成しないと、初期設定が出来ない為、使わないSCSIHDDを作成している」だけの処理になります。

次に、ハードウェアをカスタマイズを選択します。

赤枠でくくったCD/DVD、USBコントローラ、サウンドカード、プリンタは不要なので削除します。

上記で削除処理をした結果は、下図の通りです。追加のハードウェアを登録する為、追加を押下します。

OpenWRTはルータなので、ネットワークインターフェースは2つ以上ある必要があります(トリッキーなことをすれば不要ですが)。よって、ネットワークアダプタを追加します。

片方のネットワークアダプタはブリッジにします。

9割がた、設定が完了した為、完了を押下。

作成した仮想マシンを選択して、仮想マシン設定の編集を押下。

SCSI接続のHDDは不要なため、削除します。

IDE接続のHDDを追加する為、追加を押下。

ハードディスクを選択

IDEを選択

ここで、既存の仮想ディスクを使用を選択。

Vmwareの仮想マシンイメージは、デフォルトで、マイドキュメントの下の、Virtuak Machines以下に格納されています。

その下に先ほど作成した仮想マシン名のフォルダがあるはずなので、事前準備でqemu-imgコマンドで変換しておいたopenwrt-19.07.7-x86-64-combined-ext4.vmdkをコピペして格納します。

既存ディスクファイルで、参照を押下します。

イメージファイルが古い旨、警告が出ますので、変換を押下。

下図の様にIDE接続のHDDが登録されたらOKを押下。ここまででVmwareの設定完了です。

作成したVmwareイメージ「OpenWRT19」を選択し、仮想マシンの再生を押下。

OpenWRTの起動

OpenWRTは以下のような画面で起動します。

下記の画面は数秒でデフォルトが選択され、起動処理が進むので、何も押さなくてOKです。

起動中画面

1分程度で、画面が進まなくなります(上記画面)。その先は待っていても一切変化はありませんので、黒画面をマウスで選択して、エンターキーを押下すると下記画面になります。

インターフェースは2つあり、片方がブリッジで、片方がNATです。今回、ブリッジ側をインターネット側、NAT側を内部に見立てて構築しています。

ifconfigコマンドを叩いて、IPアドレスを確認します。画面が流れてしまった場合には、「| more」として、エンターキーで送りながら確認してください。

ifconfig
ifconfig | more

恐らくは、br-lanが192.168.1.1のIPを持っているかと思います。

※インターフェースがインターネット側と内部で逆だった場合、Vmwareを×ボタンで終了させ、マシン起動前に仮想マシンの編集で、LANカードのブリッジ、NATの設定を適宜変更してください

WEB管理画面luciのインストール

上記まででは、まだWeb管理画面Luciがインストールされていません。Vmwareのコンソール画面から以下コマンドを投入してluciをインストールしてください。

opkg update
opkg install luci
opkg update
opkg install luci-ssl
/etc/init.d/uhttpd restart

WEB管理画面へのアクセス

Vmwareが入っている作業用PCのLANインターフェースに192.168.92.xxのIPが設定されていれば、ブラウザでhttps://192.168.1.1にアクセスします。

ログイン時、証明書エラーが出ますが、これは、自己署名証明書を利用しているためなので、無視して進んでください。

※ブラウザによって画面が異なると思います。証明書エラー画面は適宜読み替えてください。

OpenWRT初回ログイン時は、「root/パスワード無」です。ログイン後、パスワード変更しましょう。

ログイン直後は、サマリ画面となります。

初期パスワード変更

System>Administrationを選択します。

以下のようにパスワードを入力してSAVEをクリックします。

ここまでで一通りのインストールは完了しました。

・・・が、まだ英語画面のままなので日本語化します。

OpenWRTの日本語化を行う

日本語化は、コンソール画面から「opkg install luci-i18n-base-ja」してもいいのですが、ここは分かりやすさを優先して、GUI画面からの日本語化方法を解説します。

System>Softwareを選択。

ソフトウェア画面からは、3000以上のパッケージがインストール可能ですが、この画面で、「luci-i18n-base-ja」を検索します。

「luci-i18n-base-ja」を検索して、インストールします。

インストールにあたって、以下画面が出ますので、「Install」を押下。

Dismissを押下。

他のタブを選択すると、下図の通り日本語化されています。

OpenWRTデフォルト状態での各画面のご紹介(Wifi無/Vmwareイメージ)

VmwareにOpenWRTをインストールした意図は、「OpenWRT化するルータを購入する前に、OpenWRTで何が出来るのか確認したい」という思いからでした。正直、下記の画面が事前に分かっていれば苦労はしなかったという本音もあります。他に知りたい方がいると思いますので、大体の画面イメージを貼っておきます。

概要画面

ファイアウォールステータス(IPv4)

ファイアウォールステータス(IPv6)

ルート

システムログ

カーネルログ

プロセス

負荷

トラフィック

接続数

システム、システムプロパティ、一般設定

ロギング

時刻同期(NTP)

言語とスタイル

ルーターパスワード

SSHアクセス

SSHキー

ソフトウェア

スタートアップ

スケジュールタスク

フラッシュ操作

設定

再起動

インターフェース

DHCPおよびDNS

TFTP

詳細設定

静的リース

ネットワークユーティリティ

Firewall Zone Settings

ポートフォワード

トラフィックルール

NAT設定

カスタムルール

参考にしたページ

最後に

OpenWRTは、デフォルト状態でも上記の通り、高機能であることがわかりました。GUI画面が無くとも、SSHでログインして適宜設定を変更できるところも好感が持てます。機会を見て実機にインストールする予定です。


ブックマーク パーマリンク.

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください