
Proxmox VE 安裝完成後,會在本機主控台上顯示一組 IP,只要找一台有瀏覽器的電腦即可登入這台 PVE 主機做完全的管理。
不過,若您有變更過 PVE 節點的 IP,可能會發現本機主控台上顯示的登入 IP 沒有同步異動,該怎麼辦呢?
變更網路設定
如同本文第一張圖,安裝完成後會在本機主控台顯示一組管理用的 IP。
一般來說,我們會儘量避免修改 PVE 節點的 IP,但在某些使用情況下確實有修改的必要,因此我們可以到 [Node 節點] > [Network 網路] > [Edit 編輯],在這裡修改使用的 IP,通常是修改 vmbr0 這張 Bridge 介面的 IP。
在範例中,我們將他由 192.168.1.116 修改為 192.168.1.166。

當修改完成並重開機之後,確實可以使用了新的 IP 192.168.1.166 連上管理介面。

可是...... 在本機查看時,卻發現開機後的 Banner 仍然為舊的 IP 192.168.1.116。

如果是自己管理還好,若是多人一起管理這些 PVE 主機,將可能造成使用上的困擾,那該怎麼解決呢?
嘗試修改設定
若您對於 Linux 很熟悉,第一個念頭肯定會想到這個 Banner 設定在 /etc/issue 裡,從而手動修改這個檔案內容 IP 為新的 192.168.1.166。

很可惜,這是錯誤的作法,當您重新開機以後,Banner 仍然會顯示為舊的 IP。
再來,若您對 PVE 相關的 CLI 相當熟悉,可能會想到有一支 pvebanner 它是用來更新 banner 內容的,所以手動執行它一次,希望他能夠把 Banner IP 改成新的。
然而,這依然是錯誤的作法,執行以後您會發現根本沒有任何改變。
正確修改設定
到底該怎麼做才能正確的讓 Banner 顯示正確 IP?重點在於 /etc/hosts 這個本機用的域名解析檔案。
在 PVE 的 WebUI 上可以直接修改這部份的設定,請在 WebUI 上點選 [Node 節點] > [Hosts 主機]。

在這裡可以看到,原來先前只改了網路介面上的設定,hosts 的內容沒有一起修改。
而 pvebanner 是一個開機會啟動的執行檔,在這個執行檔會在 tty 載入完成以後執行,執行後會主動去解析 hosts 裡這個節點名稱所對應的 IP,再將這個 IP 寫到 Banner 上所致。
註:等待 tty 載入完成的相關設定在 /etc/systemd/system/getty.target.wants/pvebanner.service

從上圖就可以知道,為什麼我們手動修改 /etc/issue 後,下次開機仍然顯示為舊 IP 的真正原因。

所以,只要正確的將 /etc/hosts 裡面的舊 IP 192.168.1.116 修改為正確的新 IP 192.168.1.166,下次開機時即可在 Banner 顯示正確的資訊。
結論
這個問題很常被問到,許多人會認為這是 Bug,但其實不然,是變更 IP 的人少做了該做的設定。

