docker网络 docker网络原理
乐乐给大家谈谈docker网络,以及docker网络原理应用的知识点,希望对你所遇到的问题有所帮助。
docker网络 docker网络原理
docker网络 docker网络原理
1、此时指定的容器ip为172.16.12.12。
2、Docker的4种网络模式由于目标地址并不属于host主机所在网段,那么会匹配机器上的 iptables中的nat表POSTROUTING链中的规则。
3、我们在使用docker run创建Docker容器时,可以用--net选项指定容器的网络模式,Docker有以下4种网络模式:host模式,使用--net=host指定。
4、container模式,使用--net=container:NAME_or_ID指定。
5、none模式,使用--net=none指定。
6、bridge模式,使用--net=bridge指定,默认设置。
7、下面分别介绍一下Docker的各个网络模式。
8、1、host模式众所周知,Docker使用了Linux的Namespaces技术来进行资源隔离,如PID Namespace隔离进程,Mount Namespace隔离文件系统,Network Namespace隔离网络等。
9、一个Network Namespace提供了一份的网络环境,包括网卡、路由、Iptable规则等都与其他的Network Namespace隔离。
10、一个Docker容器一般会分配一个的Network Namespace。
11、但如果启动容器的时候使用host模式,那么这个容器将不会获得一个的Network Namespace,而是和宿主机共用一个Network Namespace。
12、容器将不会虚拟出自己的网卡,配置自己的IP等,而是使用宿主机的IP和端口。
13、例如,我们在10.10.101.105/24的机器上用host模式启动一个含有web应用的Docker容器,tcp80端口。
14、当我们在容器中执行任何类似ifconfig命令查看网络环境时,看到的都是宿主机上的信息。
15、而外界访问容器中的应用,则直接使用10.10.101.105:80即可,不用任何NAT转换,就如直接跑在宿主机中一样。
16、但是,容器的其他方面,如文件系统、进程列表等还是和宿主机隔离的。
17、在理解了host模式后,这个模式也就好理解了。
18、这个模式指定新创建的容器和已经存在的一个容器共享一个Network Namespace,而不是和宿主机共享。
19、新创建的容器不会创建自己的网卡,配置自己的IP,而是和一个指定的容器共享IP、端口范围等。
20、同样,两个容器除了网络方面,其他的如文件系统、进程列表等还是隔离的。
21、两个容器的进程可以通过lo网卡设备通信。
22、3、none模式这个模式和前两个不同。
本文到这结束,希望上面文章对大家有所帮助。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系 836084111@qq.com 删除。