docker 容器指定主机网段

docker 容器指定主机网段。

直接连接到物理网络:使用macvlan技术可以让Docker容器直接连接到物理网络,而不需要通过NAT或端口映射的方式来访问它们。可以提高网络性能和稳定性,同时也可以使容器更加透明和易于管理。

1、查询网卡的名称:使用ifconfig命令查看网卡名:

  ifconfig
[网卡名]: 
		inet [主机IP]  netmask [子网掩码]  broadcast [网关地址]

docker 容器指定主机网段_第1张图片

2、创建网络并绑定物理网卡
网络模式 macvlan
macvlan 可以将虚拟网卡跟主机共用同一网段。

docker network create -d macvlan  --subnet=172.168.1.0/24  --gateway=172.168.1.1  -o parent=eth0 网络名称
	-o parent=eth0  将虚拟网络绑定网卡
docker network create -d macvlan --subnet=[网段] --gateway=[网关] -o parent=[网卡] macvlan
例如,我查询到的网卡名是eth0,网关是192.168.1.1,这样我可以创建一个名字叫new_macvlan01的macvlan网络如下:
docker network create -d macvlan --subnet=192.168.1.1/24 --gateway=192.168.1.1 -o parent=eth0 new_macvlan01

3、容器一个固定IP,可以使用如下命令创建一个容器,并给它一个固定IP:

docker run -it --name [容器名] --net macvlan --ip=[固定IP] [镜像名] /bin/bash
例如,我想以centos镜像创建一个名字叫test的容器,并给它一个IP为192.168.1.10
docker run -it --name test --net macvlan --ip=192.168.1.10 centos /bin/bash

其他命令

4.解除容器绑定的网络

docker network disconnect 网络名称 容器名称

5.为容器重新指定网络

docker network connect 网络名称 容器名称

6、为容器重新指定网络和ip

 docker network connect  网络名称 容器名称 --ip 192.168.252.10

你可能感兴趣的:(Docker,docker)