この記事は、PVE の導入が済んだマシンを前提に話を進める。iStoreOS の仮想マシンを作成し、システムディスクをインポートして、既存の LAN に接続するまでを扱う。PVE 自体のインストール、NIC パススルー、VLAN による 1 本の線の共用は対象外だ。
まずは LAN 用の NIC 1 枚でシステムを動かす。ただし初回起動時は一時的に切断しておき、新しいシステムのアドレス配信が既存ネットワークに影響しないようにする。サイドルーターとして使うなら WAN は追加しなくていい。家中のネットワークを引き受ける場合は、管理画面とネットワークが正常だと確認できてから、独立した WAN 用 NIC を追加する。
この記事のスクリーンショットは主に PVE 7.2 と iStoreOS 21.02 のもの。新しいバージョンでは項目の位置が違うかもしれない。スクリーンショットは入口を探すためのもので、設定値は本文に従ってほしい。ネットワークとディスクの構成図は設定のイメージであって、ソフトのスクリーンショットではない。
始める前に逃げ道を確保する
必要なのは、管理画面に正常にアクセスできる x86-64 の PVE ホスト、空いている VM ID、そして仮想マシンのディスクを置けるストレージだ。この記事では VM ID に 104、ストレージに local-lvm を使う。自分の番号やストレージ名は同じとは限らない。
初回インストールでは、既存のメインルーターに手を付けない。PVE の管理ブリッジも直接いじらない。ローカルのモニターやキーボードなど、使えるコンソールを用意しておき、ネットワークを変更したあとにホストへつながらなくなる事態を避ける。既存のルーター仮想マシンを置き換えるつもりなら、先にそれと現在のネットワーク設定をバックアップしておく。
以下のサイドルーターの例は、同じ IPv4 の LAN を使う。
| デバイス | アドレス例 | 説明 |
|---|---|---|
| 既存のメインルーター | 192.168.2.1/24 | 当面はインターネット接続と DHCP を担当 |
| 新規 iStoreOS | 192.168.2.2/24 | アドレスが空いていることを確認し、DHCP の払い出し範囲から除外 |
| PVE の管理アドレス | 192.168.2.88/24 | 初期は元のアドレスとゲートウェイのまま |
| テスト用 PC | 192.168.2.120/24 | まずはこの 1 台だけでサイドルーターを試す |
これらの数字はあくまで例だ。自分の LAN が 192.168.1.0/24 なら、そのセグメントに合わせて計画し直す。使用中のネットワークに例のアドレスをそのまま入力しないこと。
ファームウェアをダウンロードして起動方式を選ぶ
iStoreOS の x86-64 イメージには、よく使われる入口が 2 つある。
- UEFI ファームウェアディレクトリ:ファイル名に
combined-efi.img.gzが含まれる。 - 従来の BIOS ファームウェアディレクトリ:EFI なしのイメージが対応する。
今回 UEFI ディレクトリを確認したときの最新項目は istoreos-25.12.5-2026092410-x86-64-squashfs-combined-efi.img.gz だった。以下ではこのファイル名で説明する。別のバージョンをダウンロードしたときは、実際のファイル名に置き換えてほしい。古いイメージのファイル名をそのまま使わないこと。
イメージと仮想マシンのファームウェアは揃える必要がある。UEFI イメージなら OVMF (UEFI)、従来の BIOS イメージなら SeaBIOS を選ぶ。圧縮ファイルはそのまま PVE に転送してもいいが、この記事では PVE 標準のコマンドでディスクをインポートするため、先にホスト上で .img を展開しておく。
仮想マシンを作成する
名前と OS
PVE の右上にある「仮想マシンを作成」をクリックする。

旧スクリーンショット:PVE の仮想マシン作成入口
ノードを選び、VM ID を控える。名前は iStoreOS でいい。スクリーンショットの 104 はあくまで例だ。既存の仮想マシンを上書きしないこと。

旧スクリーンショット:仮想マシンの ID と名前
OS のページでは「インストールメディアを使わない」を選び、ゲストタイプは Linux にする。ここでは ISO でインストールするのではなく、あとでディスクイメージを直接インポートする。

旧スクリーンショット:インストールメディアを使わない
UEFI と EFI ディスク
この記事の UEFI イメージでは OVMF (UEFI) を選び、EFI ディスクを追加して、使用可能な仮想マシン用ストレージを選ぶ。iStoreOS の PVE インストール手順に従い、「事前登録キー / Pre-Enroll keys」のチェックを外す。

旧スクリーンショット:OVMF と EFI ストレージ。事前登録キーのチェック状態はそのまま真似しないこと
注意:旧スクリーンショットでは「事前登録キー」にチェックが入っているが、これは真似しないこと。この例でチェックを外すのは、iStoreOS のインストール要件に合わせてこの仮想マシンを設定するためであって、ホストや他の仮想マシンのセキュリティ設定を無効にしろという話ではない。
EFI ディスクと iStoreOS のシステムディスクは別物だ。EFI ディスクには UEFI 変数などの設定が入る。システムディスクのほうにルーターシステムが入っている。UEFI インストールでは EFI ディスクを残すこと。システムディスクと勘違いして削除しない。 PVE における EFI ディスクの用途は仮想マシン管理マニュアルを参照。
従来の BIOS イメージを使う場合は SeaBIOS を選び、EFI ディスクを追加する必要はない。

旧スクリーンショット:従来の BIOS での SeaBIOS オプション
ディスク、CPU、メモリ
作成ウィザードにある普通の空ディスクは外しておく。あとでインポートするのはシステムが入ったイメージなので、インストール用に空のディスクを別途作る必要はない。

旧スクリーンショット:ウィザードの空ディスクを削除
CPU はまず仮想コア 2 個、メモリは 2 GiB から始め、実際の負荷に応じて調整する。これはこの記事の初期構成であって、公式の最低要件でも性能の保証でもない。ホストで他のサービスも動かすなら、最初から全コアと全メモリをルーターシステムに割り当てなくていい。
単体で使うなら CPU タイプは host を検討していい。CPU の異なるノード間でマイグレーションする必要があるなら、クラスタの互換ポリシーに従って CPU タイプを選ぶ。以下の旧図では 6 コアを割り当てているが、そのまま真似しなくていい。

旧スクリーンショット:CPU タイプとコア割り当て
まず LAN 用 NIC を 1 枚接続する
既存の LAN につながるブリッジを選び、モデルは VirtIO にする。この記事では LAN ブリッジを vmbr0 と仮定する。PVE ノードのネットワークページで先に確認すること。名前だけで LAN だと決めつけてはいけない。

旧スクリーンショット:LAN ブリッジと VirtIO NIC
ブリッジはホスト内のソフトウェアスイッチのようなものだ。仮想 NIC がどのブリッジにつながるかで、どのネットワークに入るかが決まる。この関係は PVE のネットワーク設定ドキュメントが参考になる。元のネットワークで VLAN やファイアウォールルールを使っているなら、それらの設定も確認が必要で、すべてデフォルトのままにはできない。
初回起動の前に、この仮想 NIC の詳細オプションを開き、「切断 / Disconnect」にチェックを入れる。作成ウィザードで見つからなければ、作成後に仮想マシンの「ハードウェア → ネットワークデバイス → 編集」で設定する。旧スクリーンショットにはこの詳細オプションが写っていないが、だからといって飛ばさないこと。PVE のコンソールは仮想マシンの NIC 接続に依存しないので、切断中でもシステムに入って設定を変更できる。
設定を確認し、作成後は仮想マシンを停止したままにしておく。

旧スクリーンショット:作成した仮想マシンは停止のまま
システムディスクをインポートする
この記事では PVE 標準の qm disk import を使う。インポートの過程とインポート先ストレージを確認しやすいからだ。img2kvm は別のインポート方法であり、同じ仮想マシンで 2 つの手順を重ねて実行しないこと。

構成のイメージ:展開、インポート、システムディスクのマウントと EFI ディスクの保持
まず番号とストレージを確認する
PVE ノードの Shell または SSH でホストに入り、対象の仮想マシンとストレージを確認する。
qm list
pvesm status
以下のインポートコマンドは、VM 104 の local-lvm ストレージに新しいディスクを追加する。実行前に、VM 104 がたった今作成したマシンで、現在停止していることを確認する。local-lvm が利用可能で、仮想マシンのディスクに対応し、十分な空きがあることも確認する。ストレージが別の名前なら、コマンド末尾の引数を置き換える。
イメージをアップロードし、確認して展開する
ダウンロードした .img.gz ファイルを PVE ホストの /root に転送する。WinSCP でも、使い慣れたファイル転送ツールでもいい。ここで言っているのはホストのことで、iStoreOS 仮想マシンの中ではない。
cd /root
gzip -t ./istoreos-25.12.5-2026092410-x86-64-squashfs-combined-efi.img.gz
gzip -dk ./istoreos-25.12.5-2026092410-x86-64-squashfs-combined-efi.img.gz
gzip -t がエラーを出さなければ先に進む。-k は圧縮ファイルを残す。このチェックは圧縮データが完全かどうかを確かめるだけで、入手元の検証の代わりにはならない。展開時に同名の .img が既にあると言われたら、まず既存のファイルを確認すること。先に進みたいからといって、そのまま強制上書きしない。
仮想マシンのストレージにインポートする
qm disk import 104 ./istoreos-25.12.5-2026092410-x86-64-squashfs-combined-efi.img local-lvm
qm config 104
PVE はイメージを仮想マシンの「未使用のディスク」としてインポートする。qm config 104 に対応する unusedN の項目が見えるはずで、N が 0 とは限らない。qm importdisk はこのコマンドの別名だ。引数の説明は PVE の qm マニュアルを参照。
インポートに失敗したら、そこで止まってエラーを見る。まずイメージのパス、インポート先ストレージの状態、空き容量を確認する。エラーのあとに既存のハードディスクを操作してはいけないし、ましてホストの物理ディスクに書き込んではいけない。
ディスクをマウントして起動順を設定する
VM 104 の「ハードウェア」に戻り、先ほどインポートした「未使用のディスク」を見つけてダブルクリックで追加する。

旧スクリーンショット:未使用のディスクを見つける
この記事では SCSI バスを使い、コントローラは VirtIO SCSI を選ぶ。旧図に表示されているディスクのボリューム名は同じでなくていい。選んでいるのが先ほどインポートしたイメージであることを確認する。

旧スクリーンショット:SCSI バスでシステムディスクを追加
追加すると普通のハードディスク、たとえば scsi0 が現れる。UEFI 構成では EFI ディスクも残っているはずだ。

旧スクリーンショット:システムディスクと EFI ディスクが同時に存在
「オプション → 起動順」を開く。

旧スクリーンショット:起動順の入口
有効にして、システムディスクを 1 番目に置く。以下のスクリーンショットでは scsi0 を使っている。実際に別のバスにつないでいるなら、実際のデバイス名に従う。

旧スクリーンショット:システムディスクを起動順の 1 番目に
保存したら順序を確認し直す。ネットワーク起動が必要なければ、net0 を起動項目に残しておく必要はない。

旧スクリーンショット:保存後の起動順
ここでハードウェアに揃っているべきものは、正しい BIOS、マウント済みのシステムディスク、一時的に切断した LAN 用 NIC だ。UEFI 構成なら EFI ディスクも含む。確認できたら仮想マシンを起動する。

旧スクリーンショット:仮想マシンの起動入口
初回起動と管理アドレス
仮想マシンのコンソールを開き、システムの起動を待つ。PVE のタスクが「起動成功」と表示しても、システムが完全に使えるようになったとは考えないこと。コンソールが iStoreOS に入っているかも見る。

旧スクリーンショット:iStoreOS コンソールの起動過程
コマンドラインに入ったら実行する。
quickstart
Change LAN IP を選ぶ。スクリーンショットでは LAN アドレスを変更する項目が 1 だが、バージョンによって並び順は変わりうる。数字で推測せず、名前で選ぶこと。

旧スクリーンショット:quickstart の Change LAN IP
サイドルーターの例では、LAN アドレスを 192.168.2.2、サブネットマスクを 255.255.255.0 に設定する。まずこのアドレスがどのデバイスにも使われておらず、自動割り当てされる DHCP プールにも入っていないことを確認する。

旧スクリーンショット:LAN アドレスとサブネットマスクの入力
旧スクリーンショットでは 192.168.2.100 を使っているが、必ずこのアドレスにしなければならないわけではない。上の入力画面は操作する場所を示しているだけで、実際には自分で計画したアドレスとマスクを入力する。
保存したらメニューを抜ける。仮想 NIC はまだ接続しないでおく。

旧スクリーンショット:LAN アドレスを保存して終了
既存の LAN に接続する前に、一時的なアドレス配信を止める
新しいシステムが既存の LAN に DHCP アドレスを配ったり、IPv6 のデフォルトルートを広告したりすると、他のデバイスがそちらを通るようになるかもしれない。先に仮想 NIC を切断しておいたのは、接続前にこれを処理するためだ。
以下のコマンドは iStoreOS 仮想マシンのコンソールで実行する。PVE ホストの Shell ではない。まず設定を確認する。
uci show dhcp.lan
dhcp.lan=dhcp が見え、このセクションの interface が lan であることを確認してから、次の設定を実行する。これらは新しい仮想マシンの LAN 上でのアドレス配信と関連する IPv6 広告だけを止める。メインルーターの DHCP を止めるわけでも、DNS サービス全体を停止するわけでもない。設定項目は OpenWrt の odhcpd の説明と dnsmasq 起動スクリプトが参考になる。
この設定セクションが見つからない、またはインターフェース名が一致しない場合は、コマンドを適用しないこと。既存の LAN にも接続しない。独立したテストネットワークで管理ページに入り、実際の設定を確認する。
uci set dhcp.lan.ignore='1'
uci set dhcp.lan.dhcpv4='disabled'
uci set dhcp.lan.ra='disabled'
uci set dhcp.lan.dhcpv6='disabled'
uci set dhcp.lan.ndp='disabled'
uci commit dhcp
reboot

旧スクリーンショット:仮想マシンの再起動
再起動が終わるのを待ち、PVE の仮想マシンの NIC 設定に戻って「切断」を解除する。PC を同じ LAN につないだら、ブラウザで新しいアドレス、たとえば http://192.168.2.2/ にアクセスする。PC が別のセグメントにいるなら、まずその PC がどのネットワークにつながっているか確認すること。ページを見たいからといって、PVE の管理アドレスを闇雲に変えない。

旧スクリーンショット:iStoreOS の Web ログインページ
公式インストールドキュメントに載っているデフォルトのログインパスワードは password だ。現在のイメージで先にパスワード設定を求められるなら、実際の画面に従って操作する。ログイン後はすぐにデフォルトパスワードを変更すること。PVE もルーターの管理ページも、そのままインターネットに公開しない。
既存のネットワークに接続する
iStoreOS の「ネットワークウィザード」を開く。以下は旧版の入口で、新版では名前やレイアウトが変わっているかもしれない。

旧スクリーンショット:iStoreOS のネットワークウィザード
サイドルーターはまず 1 台だけで試す
初回の導入では、既存のメインルーターを残しておく。PVE、iStoreOS、PC はすべて同じ LAN にあり、iStoreOS は元のメインルーター経由でインターネットに出る。

構成のイメージ:既存のメインルーターと iStoreOS のサイドルーター
先ほどの例に従うと、iStoreOS の LAN は 192.168.2.2/24、上流ゲートウェイはメインルーターの 192.168.2.1、DNS も使える名前解決サービスを設定する。「サイドルーターとして設定」ウィザードで完了したら、結果を確認する。
まず、2 台のルーターがそれぞれ LAN 全体に DHCP を配る状態にしないこと。この例では引き続きメインルーターが DHCP を担当し、iStoreOS の LAN DHCP はオフにする。将来 iStoreOS が配るようにするなら、メインルーターの DHCP も同時にオフにして、取り合いを避ける。iStoreOS のよくある質問でも、DHCP の重複とサイドルーターのゲートウェイ・DNS 設定について注意が促されている。
まずテスト用 PC 1 台の IPv4 ゲートウェイを 192.168.2.2 に向け、自分の名前解決の方針に従って DNS を設定する。iStoreOS が DNS 転送を担うなら、それをテスト PC の DNS にしていい。Web ページが開け、ドメイン名が正常に解決でき、PVE の管理ページにも引き続きアクセスできるのを確認してから、メインルーターの DHCP 配布項目を調整するか決める。
iStoreOS をスイッチにつなぐだけでは、家中のデバイスが自動的にそれを通るようにはならない。他のデバイスのゲートウェイが元のメインルーターを指したままだと、IPv4 の外向き通信はデフォルトで依然としてメインルーターを直接通る。ここでのテストも IPv4 だけが対象だ。ネットワークで IPv6 を有効にしているなら、IPv6 のルートと DNS を別途確認する必要がある。IPv4 の結果をすべての通信の結果だと考えないこと。
PVE の管理ゲートウェイは、初期は元のメインルーターを指したままでいい。「サイドルーターを使うため」といって一緒に変える必要はない。失敗したらテスト PC のゲートウェイと DNS を戻せばよく、家中のネットワークには影響しない。
メインルーターにするなら WAN と LAN を分ける
iStoreOS が PPPoE 接続や上位ネットワークへの接続を担うなら、独立した WAN と LAN が必要になる。この記事では 2 ポート・2 ブリッジの例を扱い、1 本の線を VLAN で共用する方法は扱わない。

構成のイメージ:WAN と LAN で 2 つの独立したブリッジを使う
この例では:
vmbr0は物理 LAN ポートにつながる。PVE の管理アドレスは192.168.2.88/24のままで、iStoreOS の LAN は192.168.2.1/24。vmbr1は上流向けの別の物理 NIC につながり、WAN だけを担う。この例では PVE の管理 IP やデフォルトゲートウェイをここに設定しない。- iStoreOS の 2 枚の仮想 NIC をそれぞれこの 2 つのブリッジにつなぎ、システム内で MAC アドレスからどちらが LAN でどちらが WAN かを確認する。
これらの役割は実際の配線とブリッジ設定で決まる。vmbr0、vmbr1 という名前自体に LAN/WAN の意味はない。WAN と LAN を同じ、分離されていない L2 ブリッジに同時につながないこと。
シャットダウン後、PVE の仮想マシンで「ハードウェア → 追加 → ネットワークデバイス」から、WAN ブリッジにつなぐ NIC を追加する。

旧スクリーンショット:WAN ブリッジにつなぐ仮想 NIC を追加
起動後、実際の状況に応じて PPPoE、DHCP、静的 WAN を設定する。WAN と LAN は別のサブネットにする。構成図では上位ネットワークが 192.168.1.0/24、LAN が 192.168.2.0/24 だが、実際のアドレスは自分のネットワークに合わせて調整する。
同じ LAN にある古いメインルーターを無線 AP にするなら、独立したルーター設定と DHCP を配り続けないようにする。まず iStoreOS が正常にインターネットに出られるのを確認してから切り替えを計画し、2 台のデバイスが同じ 192.168.2.1 を使う事態を避ける。
初回起動時に iStoreOS の LAN アドレス配信は止めた。実際にメインルーターへ切り替えたら、古い DHCP が停止していること、LAN の配線が正しいことを確認してから、iStoreOS の管理画面で LAN の DHCP サービスを有効にし、アドレスプールを設定する。そうしないと、端末はメインルーターを替えただけでは自動的にアドレスを取得できない。IPv6 を有効にするか、どう配布するかは上流ネットワークに応じて別途設定が必要で、この記事の IPv4 の例ではそこまで扱っていない。
メインルーターが整ったら、PVE がそれを経由してインターネットに出る場合に限り、デフォルトゲートウェイをその LAN アドレス 192.168.2.1 に向ける。これはホストのインターネット接続をこのルーター仮想マシンに依存させることになるので、先に検証してから調整し、ローカルの管理経路も残しておく。
iStoreOS の IP が PVE の IP より小さい必要はない。接続性を決めるのはサブネット、ゲートウェイ、ルート、実際の接続であって、IP の末尾の数字の大小ではない。192.168.2.1 と 192.168.2.88 はよくある計画の一例で、大小の順序のルールではない。
問題が起きたときはこの順に確認する
| 現象 | まず何を確認するか |
|---|---|
| UEFI Shell で止まる、または起動デバイスがないと表示される | イメージが BIOS と一致しているか;システムディスクがマウントされているか;有効化され、起動順序の先頭にあるか |
| Secure Boot の検証失敗が表示される | この仮想マシンの事前登録キーと Secure Boot 設定を確認する。ホスト全体のセキュリティ保護を無効にしない |
| システムは起動したが、管理ページが開けない | コンソールで LAN アドレス、マスク、ネットワークカードを確認する;コンピューターが正しい LAN にあるか;ブリッジ、VLAN、ファイアウォールがアクセスを遮断していないか;アドレスが競合していないか |
| 管理ページには入れるが、インターネットに出られない | まず iStoreOS 自体のゲートウェイ、WAN 状態、DNS を確認し、次にテスト用コンピューターのゲートウェイと DNS を確認する |
| デバイスがインターネットに出られるときと出られないときがある | アドレス競合を確認する。また、同じ LAN に 2 つの未調整の DHCP サービスが同時にアドレスを配布していないか確認する |
| 主ルーターに変更した後、PVE に通らない | まずローカルコンソールから管理ブリッジとデフォルトゲートウェイを確認する;リモートで何度もブリッジ変更を試さない。ましてや運任せで仮想マシンを削除しない |
サイドルーターのテストに失敗したら、まずテスト用コンピューターのゲートウェイと DNS を復元する。主ルーター切り替えに失敗したら、優先的に元の主ルーターと配線を復元する;システムが利用可能になってから、仮想マシンとネットワークをそれぞれ確認し、2 つの問題を混ぜない。
導入後にやること
まず iStoreOS 設定をバックアップし、次に PVE で仮想マシンの完全バックアップを取る。EFI ディスク、システムディスク、仮想マシン設定もすべて保存する。スナップショットがサポートされるかどうかは実際のストレージに依存するため、1 回のスナップショットを独立したバックアップと見なしてはならない。
Docker や大量のダウンロードタスクを実行する場合は、先に独立したデータディスクを計画し、データをそのままシステムルートパーティションに積み上げない。プラグイン更新もシステムアップグレードとは異なるため、安易に全ソフトウェアパッケージの一括アップグレードを実行しない;具体的な注意事項は iStoreOS よくある質問 を参照。
起動、管理ページ、ネットワークがすべて正常であることを確認してから、電源投入時の自動起動やその他サービスの起動順序を検討する。主ルーター仮想マシンが家庭全体のネットワークを担う場合、この手順は特に個別に確認する必要がある。
参考と適用範囲
インストール手順は iStoreOS PVE インストールドキュメント を参照。
本記事は EFI ディスク、メニュー選択と IP アドレスの関係、およびネイティブコマンドによるインポート、ストレージ確認、初回起動の分離、ネットワーク概略と復旧経路を扱う。スクリーンショット内の旧バージョン番号、アドレス、ボリューム名は、この版チュートリアルの設定値を表すものではない。本記事は公式ドキュメントと設定説明に基づいており、実際の PVE ホスト上で全工程のデプロイテストは完了していない。
引き続き PVE 仮想マシン管理マニュアル、PVE ネットワーク設定説明、iStoreOS よくある質問 を参照できる。