Proxmoxの管理画面(8006番)に繋がらない:IPアドレス変更後に直すファイルと確認の順番

Photo: Brett Sayles / Pexels
ルーターを買い替えた、自宅 LAN のアドレス帯を変えた——そのあと Proxmox VE の管理画面 https://<IP>:8006 が開かなくなる、というのは自宅サーバーでよくあるトラブルです。
先に結論です。Proxmox の IP アドレスは /etc/network/interfaces と /etc/hosts の2か所に書かれています。片方だけ直すと管理画面は開きません。 直したあとは「ネットワーク → サービス → ブラウザ」の順に確認すると、どこで止まっているかが分かります。
この記事は、クラスタを組んでいない 1台構成の Proxmox VE(8 / 9) を前提にしています。
作業の前に:コンソールを確保する
管理画面に入れない以上、作業は Proxmox 本体に直接モニターとキーボードを繋いで 行います。ミニPCを棚の奥に置いている場合は、ここが一番の手間かもしれません。root でログインしたら、次から進めます。
なお、ログイン画面に表示される https://192.168.x.x:8006/ という案内は、起動時に作られる /etc/issue の表示です。設定ファイルではないので、ここが古い IP のままでも気にしなくて大丈夫です。 再起動すると今の設定で書き直されます。
ステップ1:今の IP アドレスとゲートウェイを確認する
ip -br addr
ip route
Proxmox では、物理 NIC ではなく ブリッジ vmbr0 に IP アドレスが付いています。vmbr0 の行に目的の IP があるか、default via のゲートウェイが新しいルーターのアドレスになっているかを見ます。
ゲートウェイに ping が通るかも確認します。
ping -c 3 192.168.10.1
ここで通らなければ、原因はまだネットワーク設定側です。
ステップ2:/etc/network/interfaces を直す
Proxmox は DHCP ではなく固定 IP で動くのが基本なので、ルーター側を変えても自動では追従しません。
nano /etc/network/interfaces
vmbr0 の部分を新しいアドレス帯に書き換えます。
auto vmbr0
iface vmbr0 inet static
address 192.168.10.50/24
gateway 192.168.10.1
bridge-ports enp1s0
bridge-stp off
bridge-fd 0
見落としやすいのは次の3点です。
addressに/24などのプレフィックスが付いているかgatewayも新しいルーターのアドレスに変えたかbridge-portsの NIC 名(enp1s0など)がip -br addrに出てくる名前と一致しているか
保存したら反映します。Proxmox VE 7 以降は ifupdown2 が標準なので、再起動しなくても次のコマンドで反映できます。
ifreload -a
ステップ3:/etc/hosts を直す(ここを忘れやすい)
nano /etc/hosts
ホスト名の行を新しい IP に書き換えます。
127.0.0.1 localhost.localdomain localhost
192.168.10.50 pve.home.arpa pve
ネットワークが通っても管理画面だけ開かない場合、たいていここが原因です。 Proxmox の設定を管理する pve-cluster サービスは、ホスト名が実際の IP アドレスに解決できることを前提にしているとされています。ここが古い IP のままだと pve-cluster が正常に動かず、/etc/pve にある証明書を読めない管理画面(pveproxy)も起動できない、という連鎖が起きます。
次のコマンドで、新しい IP が返ってくれば OK です。
hostname --ip-address
ステップ4:サービスを再起動して待ち受けを確認する
systemctl restart pve-cluster pveproxy
systemctl status pve-cluster pveproxy --no-pager
両方が active (running) になっているかを確認します。失敗している場合は、ログに理由が出ます。
journalctl -u pve-cluster -u pveproxy -b --no-pager | tail -n 30
最後に、8006番で待ち受けているかを見ます。
ss -tlnp | grep 8006
pveproxy の行が出ていれば、Proxmox 側は準備完了です。迷ったら、ここで一度再起動してしまうのも確実な方法です。
ステップ5:ブラウザ側を確認する
Proxmox 側が正常なのに開かないときは、手元の PC を疑います。
https://で開いているか:http://では繋がりません。ポート:8006も必須です- 証明書の警告:自己署名証明書なので警告が出るのは正常です。「詳細設定」から進みます
- PC も新しいアドレス帯にいるか:PC 側が古い固定 IP のままだと届きません
- PC から疎通があるか:
ping 192.168.10.50が通るか、curl -k https://192.168.10.50:8006で HTML が返るかを見ます
証明書に古い IP が残っているのが気になる場合は、pvecm updatecerts --force で作り直せるとされています。警告が出るだけで接続自体はできるので、急ぎでなければ後回しで構いません。
クラスタを組んでいる場合は別の手順になる
2台以上でクラスタを組んでいる場合は、ここまでの2ファイルに加えて corosync の設定にも IP アドレスが書かれています。手順を間違えるとクラスタ全体が止まるため、この記事の手順だけで進めず、公式ドキュメントを確認してから作業してください。
次に備えて:コンソールの手段を用意しておく
今回のように管理画面に入れなくなると、モニターとキーボードを持って本体の前に行くしかありません。頻繁に起きるものではありませんが、置き場所によってはかなり面倒です。
- 小型のモバイルモニター:普段はしまっておき、トラブル時だけ繋ぐ用途
- JetKVM:IP-KVM。ネットワーク越しに BIOS 画面から操作できるので、離れた場所のミニPCでも作業できます
あわせて、変更した IP・ホスト名・管理画面の URL をメモに残しておくと、次に同じことが起きたときに迷わずに済みます。
まとめ
- IP アドレスは
/etc/network/interfacesと/etc/hostsの2か所。両方直す /etc/hostsが古いとpve-clusterが動かず、管理画面(pveproxy)も起動しない- 反映は
ifreload -aとsystemctl restart pve-cluster pveproxy。ss -tlnp | grep 8006で待ち受けを確認 - ログイン画面の古い IP 表示(
/etc/issue)は再起動で直るので気にしなくてよい - クラスタ構成の場合は corosync の設定も絡むので、別途公式手順を確認する
運営者が作った Excel テンプレートを BOOTH で配布しています。IT 資産管理台帳(無料 Lite 版あり) / IT 資格の学習管理シート


