當前位置:
首頁 > 知識 > 使用Docker的macvlan為容器提供的橋接網路

使用Docker的macvlan為容器提供的橋接網路

對於了解Docker容器網路的朋友,我想對虛擬機的網路也不會陌生,畢竟我們是跟隨這個時代一起學習和進步的人。相比VM,Docker的網路也在逐步走向成熟,本文主要針對其中的macvlan做下簡單的介紹。

使用Docker的macvlan為容器提供的橋接網路

Why macvlan?

首先我們去對比下VM和Docker中不同的網路,這樣會比較清楚。


VM Docker
NAT bridge
Bridged macvlan, overlay等
Host-only bridge

NAT

VM中的NAT對應Docker中的bridge,雖然叫bridge,但和VM的bridged網路卻不一樣,其原理是在宿主機上虛出一塊網卡bridge0,然後所有容器會橋接在這塊網卡的網段上。默認情況下容器能訪問外部網路,但外部網路無法訪問容器,因此需要通過暴露容器埠的方式(docker run -p)讓外部網路訪問容器內的服務。此時docker會在宿主機上建立一條NAT路由規則,將子網中容器內的服務通過埠轉發(port forwarding)的方式暴露給外部網路。當bridge網路下不去暴露任何埠,那麼基本上等同於VM的Host-only網路。

Bridged

橋接網路帶來的好處是,不需要通過NAT的埠映射即可實現容器內服務的暴露,當容器橋接到物理網路時,容器就是物理網路中的一台主機,使得容器間及容器與物理主機間實現互通。上面提到Docker中默認的bridge並不是真正的橋接網路,而Docker的網路是可以靈活自定義的,可以通過多種方式實現真正的橋接。其中可以通過overlay網路驅動實現,多主機多容器的橋接,但需要依賴額外的key-value服務來保存網路拓撲信息。另外一些第三方工具也能夠實現橋接模式,如pipework等。橋接網路可以使容器網路部署簡單化,因此Docker官方在1.12版本之後引入了macvlan網路驅動,這樣我們可以更簡單的為容器配置橋接網路。

Macvlan

顧名思義,macvlan的原理是在宿主機物理網卡上虛擬出多個子網卡,通過不同的MAC地址在數據鏈路層(Data Link Layer)進行網路數據轉發的,它是比較新的網路虛擬化技術,需要較新的內核支持(Linux kernel v3.9–3.19 and 4.0+)。

Using macvlan

使用Docker的macvlan為容器提供的橋接網路

另外,macvlan還支持802.1q trunk等更為複雜的網路拓撲結構,大家可以深入學習。

[via] Get started with Macvlan network driver

[via] Linux 上虛擬網路與真實網路的映射

文章來自博客園

IT精品課程:http://xue.ujiuye.com/

「勤工儉學計劃」,給你一個真正0元學習IT技術的機會!

http://www.ujiuye.com/zt/qgjx/?wt.bd=zy35844tt

找工作太難?不是你不行,我們來幫你!

http://www.ujiuye.com/zt/jyfc/?wt.bd=zy35844tt

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 IT優就業 的精彩文章:

有哪些普通人覺得很容易實現,但卻讓程序員一籌莫展的技術?
看直播,送大禮,我們不見不散!
原來,你一直喜歡畫畫
SignalR在ASP.NET MVC中的應用
App 組件化/模塊化之路——Repository 模式

TAG:IT優就業 |

您可能感興趣

基於Chromium的Microsoft Edge將提供Fluent Design外觀
索尼:不會為Xperia Z5 Premium提供Meltdown和Spectre的漏洞補丁
SpringCloud之服務提供與調用(Ribbon,Feign)
Rackspace與HPE合作提供按使用付費的Kubernetes私有雲
Google Search Console開始提供關於Web Light呈現搜索結果的數據
Immersion與TDK Electronics達成為PowerHap壓電式執行器提供觸覺設計和營銷服務的協議
Oculus與FramesDirect合作,提供Oculus Go處方透鏡
RelayCars與起亞合作,用Magic Leap One提供汽車體驗
Rimini Street為Solar Frontier提供一流的SAP支持服務
微軟發布Windows Defender擴展 為Chrome用戶提供上網安全
Microsoft Teams將提供免費版本
微軟為所有Outlook.com用戶提供全新的Mail使用體驗
Facebook Messenger 將提供聊天翻譯功能
Discovery Education收購VR/AR內容提供商Inspyro
macOS Catalina為普通MacBook機型提供了虛擬Touch Bar控制項
Corona Corporation改由Rimini Street提供Oracle EBS支持服務
StreetLight Data提供Traffic Diagnostics工具 優化城市交通擁堵及規劃方案
Oculus與FramesDirect合作,為近視用戶提供定製鏡片
Oracle 收購 SD-WAN 提供商 Talari Networks
微軟的Unity插件Project Acoustics為VR提供雲端3D音頻