Docker的网络模型 熟悉docker的人都知道,它有以下四种网络模式 host container none bridge 要理解Docker的网络,首先要发解的是Linux下面的network namespace。Linux Namespace是Linux提供的一种内核级别环境隔离的方法。其中network namepspace是六种隔离中的一种。 简单来说,如果将某一个进程的network namespace为设置为ns1,那么它将无法看到宿主机上(默认的名称空间下)的任何网络设备,路由规则,iptables,甚至是整个tcp/ip协议栈。在ns1下面创建的网络设备等等,在宿主机(默认的名称空间下)也同样看不到这些新创建的设备。这样,让用户感觉像是让我们的进程跑在了另外一个操作系统上面,仿佛我们新创建了一个操作系统环境。 了解了network namespace,我在再来了解docker的网络模式 host: 当使用host模式启动容器时,这个容器将不会创建自己的network namespace,而是和宿主机共用同一个。那么这样也就很好理解了,我们的进程创建的任何网络设备,监…