Proxmox 用戶在設定 container (以下簡稱 CT) 的網路裝置時, 有 venet 跟 veth 兩個選項。 只求連線、 沒有特殊網路需求的新手先可以選用簡單/安全/高效率的 venet。 如果 研究過兩者差異 之後, 才反悔想改用功能較完整的 veth 裝置呢? 那就要先把舊的 venet 裝置刪掉囉。
- CT 關機。
- (從網頁介面) 先選取這個 CT、 點選 「network」 分頁、 點選想刪除的 venet 裝置、 點一下上方的 「Remove」, 把它刪掉。
- 在同一頁面點 「Add」、 選 「Network Device (veth)」、 填入網卡名稱 (就填 eth0 吧)、 選取 bridge (就選預設的 vmbr0 吧)。
- 從 host 下
vzctl start 208
重新啟動 CT (假設你的 CT 的 vmid 是 208) 。 然後vzctl enter 208
進入 CT。 進行 一般的網路設定。 重新啟動網路服務service networking restart
或重開機reboot
。
進行以上變動之前, 下 ifconfig -a
會看到
CT 的 ip 是綁在 venet0:0 這個裝置上; 變動之後再下
ifconfig -a
應該要看到 CT 的 ip
現在變成綁在 eth0 (或是第三步所取的其他網卡名稱) 這個裝置上才對。
本篇其實只是
這個問答 的整理。 先前我在 host 裡從命令列新增 veth
(很囉嗦) 所以沒注意到舊的 venet 還在。
後來用 ifconfig -a 才發現 ip 還是綁在 venet 裝置上。 搜尋到
這篇 才知道如果手動改 /etc/vz/conf/208.conf
不只要新增一句 (對應到 veth 的) NETIF=...
還要刪掉
(對應到 venet 的) IP_ADDRESS=...
。
結論: 有時 GUI 真的比較簡單; 堅持用命令列有時會繞遠路 --
然後也會順便學比較多。 又,
備份/搬家/還原/大量複製 openvz 虛擬機 這篇也跟著更正了。
以下是 proxmox 網路設定的其他相關參考資料。 veth 與 venet 的比較表格大致抄自第二篇。 (翻譯自 OpenVZ 官網) 例如架設 openvpn 伺服器等等跟 routing 有關的應用, 有時可能就非用 veth 不可。
Feature 特徵 |
veth | venet |
---|---|---|
可使用的虛擬機器類型 | OpenVZ KVM |
OpenVZ |
可透過網頁管理 直接配置網路IP |
No | Yes |
MAC address 網卡位置 |
Yes | No |
Broadcasts inside CT 封包會在虛擬機器間廣播 |
Yes | No |
Traffic sniffing 封包攔截 |
Yes | No |
Network security 網路安全 |
Low | High |
Can be used in
bridges 可否用於橋接器 |
Yes | No |
IPv6 ready 可否使用IPv6 |
Yes | Yes |
Performance 效能 |
Fast | Fastest |
沒有留言:
張貼留言
因為垃圾留言太多,現在改為審核後才發佈,請耐心等候一兩天。