Ping 到 LXC 容器

Ping 到 LXC 容器

請,我嘗試從 VMB ping 10.0.3.8(LXC 容器的 IP),但沒有成功!請問你有什麼想法嗎?

這是我想要做的事情的解釋:(紅色箭頭)

藍色箭頭表示 ping 工作正常。紅色箭頭表示有問題:我嘗試從 VMB (192.168.1.7) ping 10.0.3.8 我已封鎖此訊息: ping 10.0.3.8 PING 10.0.3.8 (10.0.3.8) 56(84) 位元組資料。 --- 10.0.3.8 ping 統計資料 --- 發送 68 個資料包,接收 0 個資料包,100% 資料包遺失,時間 67214ms –

在此輸入影像描述 多謝。

此致。

答案1

當您建立 Linux 容器時,它存在於自己的網路空間中。這就是 IP 位址看起來如此不同的原因。您的虛擬機器具有 192.168.1.x,而您的 Linux 容器則分配 10.0.3.x。

解決此問題的一種方法是在 Linux 容器上建立專用虛擬網路卡,然後從 192.168.1.x 網路中提取位址。

以下是核心說明,但是詳細的步驟和背景來自這篇盆景框架文章

在主機上建立永久 macvlan

/etc/network/interfaces新增到主機檔案的底部,

# Creates a macvlan interface called macvlan0 without an IP address  
iface mvlan0 inet manual  
   pre-up ip link add mvlan0 link eth0 address 8a:38:2a:cc:d7:aa type macvlan mode bridge  
   post-down ip link del macvlan0  
auto mvlan0  

重新啟動系統以使變更生效。mvlan0使用檢視網路設備時,您會注意到現在ifconfig -a

macvlan透過修改位於 中的設定檔將容器連接到主機/var/lib/lxc/[container]/config

為您的新網卡新增的條目,

# macvlan for external IP  
lxc.network.type = macvlan   
lxc.network.macvlan.mode = bridge  
lxc.network.flags = up  
lxc.network.link = mvlan0  
lxc.network.hwaddr = 00:16:3e:8d:4f:51  
lxc.network.name = eth0  

對於 hwaddr,透過免費網站(如helion.org

最後,調整容器內的介面檔案以透過靜態綁定,或者如果您喜歡使用動態綁定。

就我而言,我調整了我的家庭路由器,以便 192.168.0.1 到 192.168.0.20 不是動態分配的,而是在我的 LXC 中使用靜態。

所以我修改我的容器介面檔如下,

auto eth0  
iface eth0 inet static  
address 192.168.0.12  
gateway 192.168.0.1  
netmask 255.255.255.0  

auto eth1  
iface eth1 inet dhcp  

重新啟動您的 Linux 容器。

相關內容