docker的网络类型

Docker支持多种网络类型,包括:

  1. 桥接网络(Bridge Network):默认的网络类型。在同一主机上的容器可以相互通信,但不同主机的容器不能互相通信。
  2. 主机网络(Host Network):容器与主机共享网络命名空间,容器可以使用主机的IP地址和端口,容器之间也可以直接通信。
  3. 覆盖网络(Overlay Network):允许跨越多个Docker主机创建网络,容器可以在不同主机上的网络中进行通信。
  4. none网络:容器没有网络连接。
  5. MACVLAN网络:与主机网络类似,但容器有自己的MAC地址,可以与主机网络隔离。
  6. 第三方网络插件(Third-party Network Plugins):Docker提供了API和插件机制,允许第三方开发者创建自己的网络插件。

类型

说明

None

不为容器配置任何网络功能,没有网络 --net=none

Container

与另一个运行中的容器共享Network Namespace,–net=container:containerID

Host

与主机共享Network Namespace,–net=host

Bridge

Docker设计的NAT网络模型**(默认类型)**

veth pair介绍

Docker网络类型:bridge host none container overlay_eureka

在 Docker 中,veth pair 是一种虚拟网络设备,用于将 Docker 容器连接到主机或其他容器的网络。

veth pair 由两个虚拟网络接口组成:veth0 和 veth1。其中,veth0 是在主机上创建的,而 veth1 是在容器中创建的。这两个接口被视为一对,它们通过一个虚拟网络连接在一起,形成一个通信通道。

当一个容器启动时,Docker 会自动创建 veth pair,并将 veth0 接口添加到主机上的 Docker 网桥中,将 veth1 接口添加到容器的网络命名空间中。这样,容器就可以通过 veth1 接口访问主机网络,并与其他容器通信。

需要注意的是,veth pair 是一种点对点连接,只能连接两个网络设备。如果需要将多个容器连接到同一个网络,可以使用 Docker 的桥接网络或覆盖网络。