Docker-網絡命名空間


概念圖

  小綠框為虛擬網卡,docker0為網橋,eth0為物理網卡

虛機網橋

  docker會在宿主機上創建多個網橋(類型如Bridge、Host、None,默認的網橋docker0) 

  查看當前宿主機中的網橋:docker network ls

brctl工具

  查看鏈接到網橋上的虛擬網口信息:brctl show docker0 (下載brctl工具:yum install -y bridge-utils)

  每個容器都會分配一個網橋上的虛擬網口,並將docker0的IP地址設置為默認網關,容器發起的網絡流量通過宿主機的iptables規則進行轉發

Linux虛擬網絡技術

  1.宿主機和容器各創建一個虛擬接口veth(組成一個veth pair)

  2.宿主機虛擬接口連接到docker0網橋或指定網橋

  3.容器中的虛擬網口修改名為eth0

  4.從網橋中分配一個閑置的IP地址給容器eth0,並設置網關為docker0的IP網關

Bridge

# 查看網橋信息
docker network ls
# 創建網橋
docker network create -d bridge my-bridge
# 創建容器時指定網橋
docker run 容器ID --network=my-bridge
# 查看my-bridge網橋的鏈接信息
docker network inspect my-bridge
# 為容器添加一個網段(如172.1.17.1 -> 172.1.17.1、172.1.18.1),可以根據容器名ping通
docker network connect my-bridge 容器ID

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM