docker網路連結——網橋
阿新 • • 發佈:2019-01-07
docker0簡介
安裝好docker,並啟動docker服務後,通過ifconfig檢視本機的網路裝置。
可以看到有一個名為docker0的網路裝置,docker0是linux的虛擬網橋。docker的守護程序就是通過docker0為docker容器提供網路連結的。
linux虛擬網橋的特點:
(1)網橋屬於資料鏈路層裝置,但是linux虛擬網橋可以設定IP地址。
(2)相當於擁有一個隱藏的虛擬往卡
docker地址劃分:
IP:172.17.0.1
子網掩碼:255.255.0.0
總共提供65534個地址。
docker再容器啟動時要建立網路連結的兩端。一端是容器中的網路裝置,另一端是再執行docker的主機上開啟一個名為veth的網路介面,用來實現docker網橋和容器的網路通訊。
安裝網橋管理工具:
(1)安裝
sudo yum install bridge-utils
(2)檢視網橋裝置
sudo brctl show
自定義docker0
(1)修改docker0地址:
sudo ifconfig docker0 192.168.200.1 netmask 255.255.255.0
(2)檢視修改結果
(3)重啟docker服務,重新啟動容器,將會看到容器的ip會使用我們設定的網段。
自定義虛擬網橋
(1)新增虛擬網橋相關命令如下
//建立一個新的網橋
sudo brctl addbr br0
//為網橋設定ip和子網掩碼
sudo ip addr add 192.168.5.1/24 dev bridge0
//啟動新建立的網橋
sudo ip link set dev br0 up
//刪除網橋
sudo brctl delbr docker0
(2)配置docker啟動項
//進入docker啟動配置檔案
sudo vi /etc/sysconfig/docker
//配置內容如下
DOCKER_OPS="-b=br0"
重啟docker服務後發現配置的網橋並沒有生效,於是開啟docker服務啟動檔案
sudo vi /usr/lib/systemd/system/docker.service
發現引數配置為OPTIONS於是修改/etc/sysconfig/docker
OPTIONS="-b=br0"