兩個docker容器之間獨立的網絡命名空間的通訊原理

容器中網絡命名空間與宿主機的網絡命名空間是隔離開的
在這裏插入圖片描述

容器之間的獨立命名空間是可以通訊的
在這裏插入圖片描述

兩個獨立的網絡命名空間進行通訊的原理

##相關命令
執行sudo ip netns list 查看獨立的網絡命名空間
sudo ip netns add test1 新增獨立的網絡命名空間
sudo ip netns delete test1 刪除獨立的網絡命名空間
sudo ip netns exec xx 進入xx網絡命名空間
sudo ip netns exec xx ip link 進入xx網絡命名空間並執行ip link命令
執行命令ip link 查看主機的網絡命名空間的ip link
在這裏插入圖片描述
sudo ip netns exec xx ip a 進入xx網絡命名空間並執行ip a命令
在這裏插入圖片描述
sudo ip netns exec xx ip link set dev lo up 開啓xx命名空間的迴環口

veth pair實現兩個network namespace之間能夠ping通

在這裏插入圖片描述

添加一對veth接口
在這裏插入圖片描述

將新增的一對veth接口分別添加到test1和test2網絡命名空間中
在這裏插入圖片描述

給veth接口添加ip
在這裏插入圖片描述

veth接口未處於未開啓狀態無法看到新增的ip地址,執行命令開啓test1和test2的veth接口(沒截圖好,圖片最後一行要留意改爲test2)
在這裏插入圖片描述

veth接口處於開啓狀態,可以看到veth接口新增的ip地址已生效
在這裏插入圖片描述
在這裏插入圖片描述

測試test1和test2網絡是否ping通
在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章