网络基础
基于数据包的网络协议,以及7层网络协议,ip和路由,公有ip和私有ip,网络地址转换NAT,ping(检查连接的可达性)和telnet(检查服务的可用性,一般是防火墙的问题,可达但是服务不一定可用)
网络命名空间
实现两个network namespace可以相互ping通
veth
Linux container 中用到一个叫做veth的东西,这是一种新的设备,专门为 container 所建。veth 从名字上来看是 Virtual ETHernet 的缩写,它的作用很简单,就是要把从一个 network namespace 发出的数据包转发到另一个 namespace。veth 设备是成对的,一个是 container 之中,另一个在 container 之外,即在真实机器上能看到的。
|
|
两个容器之间如何通信,容器如何访问外网
veth,nat处理
端口映射
若对外提供一个web服务,将端口映射到本地
none与host的network
none:除了本地无法访问
host:共享主机的网络地址空间
多容器复杂应用的部署
单台linux
分模块的放在不同的容器内,确定不同容器的访问关系
多机网络
两台linux的话怎么用呢(跨机器overlay网络)
vxlan
etcd,分布式存储