進階 網路設定

本章將介紹 Docker 的一些進階 網路設定和選項。

當 Docker 啟動時,會自動在主電腦上建立一個 docker0 虛擬橋接器,實際上是 Linux 的一個 bridge,可以理解為一個軟體交換機。它會在載入到它的連線阜之間進行轉發。

同時,Docker 隨機指派一個本地未佔用的私有網段(在 RFC1918 中定義)中的一個位址給 docker0 界面。比如典型的 172.17.42.1,遮罩為 255.255.0.0。此後啟動的容器內的連線阜也會自動指定一個同一網段(172.17.0.0/16)的位址。

當建立一個 Docker 容器的時候,同時會建立了一對 veth pair 界面(當封包傳送到一個界面時,另外一個界面也可以收到相同的封包)。這對界面一端在容器內,即 eth0;另一端在本地並被載入到 docker0 橋接器,名稱以 veth 開頭(例如 vethAQI2QT)。透過這種方式,主電腦可以跟容器通信,容器之間也可以相互通信。Docker 就建立了在主電腦和所有容器之間一個虛擬共享 網路。

Docker  網路
圖 1.12.1 - Docker 網路

接下來的部分將介紹在一些場景中,Docker 所有的 網路訂製設定。以及透過 Linux 指令來調整、補充、甚至取代 Docker 預設的 網路設定。

results matching ""

    No results matching ""