2017-09-26 172 views
0

我對以下方案的工作原理有點困惑。這是一個非常簡單的設置,所以我希望解釋很簡單。單個macvlan接口上的多個LXD容器

我有一個物理網卡的主機。我在這個物理網卡的橋接模式下創建一個單獨的macvlan子接口。然後我啓動了兩個LXD/LXC容器。每個都有自己獨特的MAC和IP,但在配置文件中,我指定與每個容器的父接口相同的單個macvlan子接口。

這兩個容器都可以訪問網絡,沒有問題。我還能夠使用每個容器的唯一IP地址將SSH連入每個容器。這是讓我困惑的一點:

這是如何工作在引擎蓋下面的?訪問外部世界時,這兩個容器都使用單個macvlan MAC/IP。是不是會有某種碰撞?這不應該工作嗎?我不應該爲每個容器需要一個macvlan子接口嗎?這裏有一些NAT嗎?

macvlan沒有很多文件記錄,希望有人在那裏可以幫忙。

+1

你應該前往https://discuss.linuxcontainers.org/詢問,LXD/LXC社區在stackoverflow上有點稀疏,stackoverflow也是用於編程的相關問題。 –

回答

1

沒有NAT的說法,因爲這是在IP層 - MAC是鏈路層 - 但它是一個類似的結果。

所有MAC(NIC和macvlan's)將通過連接到NIC的相同鏈接路由。 NIC設備驅動程序然後將流量路由到正確的接口(虛擬或非虛擬),該接口將其放置到其中一個來賓或主機。你可以把macvlan看作虛擬交換機。

相關問題