5天前 CloudMan6  每天5分鐘Docker
文章評分 0 次,平均分 0.0

上一節我們在 flannel 網絡中部署了容器,本節討論 flannel 的連通和隔離特性。

flannel 網絡連通性

測試 bbox1 和 bbxo2 的連通性:

bbox1 能夠 ping 到位于不同 subnet 的 bbox2,通過 traceroute 分析一下 bbox1 到 bbox2 的路徑。

bbox1 與 bbox2 不是一個 subnet,數據包發送給默認網關 10.2.40.1(docker0)。

根據 host1 的路由表(下圖),數據包會發給 flannel.1。

flannel.1 將數據包封裝成 VxLAN,通過 enp0s8 發送給 host2。

host2 收到包解封裝,發現數據包目的地址為 10.2.17.2,根據路由表(下圖)將數據包發送給 flannel.1,并通過 docker0 到達 bbox2。

數據流向如圖所示:

另外,flannel 是沒有 DNS 服務的,容器無法通過 hostname 通信。

flannel 網絡隔離

flannel 為每個主機分配了獨立的 subnet,但 flannel.1 將這些 subnet 連接起來了,相互之間可以路由。本質上,flannel 將各主機上相互獨立的 docker0 容器網絡組成了一個互通的大網絡,實現了容器跨主機通信。flannel 沒有提供隔離。

flannel 與外網連通性

因為 flannel 網絡利用的是默認的 bridge 網絡,所以容器與外網的連通方式與 bridge 網絡一樣,即:

容器通過 docker0 NAT 訪問外網

通過主機端口映射,外網可以訪問容器

詳細討論可參考前面 bridge 網絡相關章節。
以上是 flannel vxlan 的相關知識點,下一節我們討論 flannel host-gw backend。

 

除特別注明外,本站所有文章均為鐵匠運維網原創,轉載請注明出處來自http://www.kzrhud.live/25593.html

關于

發表評論

暫無評論

切換注冊

登錄

忘記密碼 ?

您也可以使用第三方帳號快捷登錄

切換登錄

注冊

掃一掃二維碼分享
青海11选5开奖结果走势图