一、macvlan
macvlan是真正意义上的桥接网络,在网络结构上跟宿主机平级,宿主机网卡需要开启混杂模式,允许容器数据通过。
但是macvlan模式容器和宿主机之间不能互访
macvlan bridge 模式:
1、创建macvlan网络:
docker network create -d macvlan --subnet=172.30.0.0/24 --gateway=172.30.0.1 -o parent=eth0 macvlan_name
2、启动docker测试:
docker run -it --net=macvlan_name --ip=172.30.0.101 centos
docker run -it --net=macvlan_name --ip=172.30.0.102 centos ping -c 2 172.16.0.101
macvlan vlan bridge 模式:
1、创建vlan,VLAN ID 50:
ip link add link eth0 name eth0.50 type vlan id 50
2、创建macvlan网络:
docker network create -d macvlan --subnet=172.30.0.0/24 --gateway=172.30.0.1 -o parent=eth0.50 macvlan_name
3、启动docker测试:
docker run -it --net=macvlan_name --ip=172.30.0.101 centos
docker run -it --net=macvlan_name --ip=172.30.0.102 centos ping 172.30.0.101