Docker 網路設定

2022-07-20 01:51:10 字數 1184 閱讀 4547

一、docker 網路預設使用的 bridge 模式

預設生成為 docker0 ;每個容器使用 veth 對,一頭在容器的網路 namespace 中,一頭在 docker0 上;

1、docker 採用的na模式,網路也是隔離獨立的;是將容器服務監聽埠對映到宿主機的ip 埠,然後進行網路資料通訊;外界訪問是通過對映埠進行訪問的。

2、因為nat 模式是在三層網路上的實現手段,所以網路的傳輸效率還是有影響的。

3、還有 iptables 故障也是會影響 docker 容器網路的。

iptables -l -n         # 檢視規則

iptables -t nat -nl      # 檢視**

4、檢視docker 網路對映;

iptables -t nat --list-rules docker
二、在 kubnernetes 中;使用的網路是 flannel 和open vswitch 兩種型別;1、flannel 虛擬路由它的原理:就是預先留出乙個網段,供每個主機使用其中一部分,然後每個容器被分配不同的ip;讓所有的容器認為大家在同乙個直連的網路,底層是通過udp/vxlan等進行報文的封裝和**。

結合etcd 比較容易配置理解。預設使用 8285 埠作為udp封裝報文的埠,vxlan使用的是8472埠。

2、open vswitch

它是乙個開源的虛擬交換機;同時還支援標準的管理介面和協議(如netflow, sflow, span, rspan, cli, lacp, 802.1ag)。提供虛擬vm之間和之內的流量可見性和控制。openstack 專案也在用。

執行原理:核心模組實現了多個」資料路徑「(類似於網橋),每個都可以有多個「vports」(類似於橋內的埠)。每個資料路徑也通過關聯一下流表(flow table)來設定操作,而這些》流表中的流都是使用者空間在報文頭和元資料的基礎上對映的關鍵資訊!一般的操作都是將資料報**到另乙個vport!

Docker 網路設定

如果你之前有使用docker的經驗,你可能已經習慣了使用 link引數來實現容器互聯。隨著docker網路的完善,強烈建議將docker加入自定義的docker網路來連線多個容器,而不是使用 link引數 下面建立乙個新的docker網路 root ubuntu docker networker c...

設定 docker容器 禁用網路

如果打算完全禁用容器網路棧,可以通過在啟動容器時指定 network none 標誌實現,這樣在容器內部只有loopback網路裝置被建立。命令如下。第二個命令沒有返結果,因為沒有路由被建立。1.建立容器 docker run rm dit network none name no net alpi...

docker學習筆記 容器的網路設定

1.檢查你的系統是不是高於3.8的核心,如果沒有請公升級centos7或者ubuntu 14 uname a 2.centos7下安裝docker yum y install docker 3.檢視docker版本 docker version 4.啟動docker服務 docker service...