網絡基礎
網絡分層
IP地址和路由
公有IP和私有IP
- Public IP:互聯網上的唯一標識,可以訪問internet
- Private IP:不可再互聯網上使用,僅供機構內部使用
網絡地址轉換NAT
主要實現公有IP和私有IP的轉換。
備註:mac地址和IP地址
Linux 網絡命名空間
備註:linux網絡命名空間
docker 網絡分類
- 單機
- Bridge Network
- Host Network
- None Network
- 多機
- Overlay Network
單機–Bridge Network:外網訪問與容器之間
宿主機的網絡信息:
其中docker0 主機的命名空間,用來聯絡到docker容器的命名空間
docker 查看網絡:docker network ls
查看某個具體的網絡:docker network inspect {NETWORK ID}
查看命名空間已連接的鑰匙對:brctl show (yum install bridge-utils)
單機-- none
所在的網絡是孤立的,本地訪問,用來存儲密碼之類的信息。
(1)運行一個容器,並添加到 host 網絡上
docker run -d --name test1 --network none busybox /bin/sh -c "while true; do sleep 3600; done"
(2)查看網絡信息
docker network inspect {host網絡的id,通過 docker network ls 獲取}
(3)進入容器中查看:
docker exec -it test1 /bin/sh
ip a
單機-- host
和宿主機共享網絡命名空間。(宿主機的端口同docker容器的端口映射容易衝突)
(1)運行一個容器,並添加到 host 網絡上
docker run -d --name test2 --network host busybox /bin/sh -c "while true; do sleep 3600; done"
(2)查看網絡信息
docker network inspect {host網絡的id,通過 docker network ls 獲取}
(3)進入容器中查看:
docker exec -it test2 /bin/sh
ip a