博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第 5 章 网络 - 031 - none和host网络的适用场景
阅读量:6154 次
发布时间:2019-06-21

本文共 4775 字,大约阅读时间需要 15 分钟。

none和host网络的适用场景

Docker 安装时会自动在 host 上创建三个网络,用 docker network ls 命令查看:

1 root@ubuntu:~# docker network ls2 NETWORK ID          NAME                DRIVER              SCOPE3 74b905c25854        bridge              bridge              local4 464e732836b8        host                host                local5 1e467ad897d5        none                null                local6 root@ubuntu:~#

 

 

none 网络

none 网络就是什么都没有的网络。挂在这个网络下的容器除了 lo,没有其他任何网卡。容器创建时,可以通过 --network=none 指定使用 none 网络。

1 root@ubuntu:~# docker run -it --network=none busybox 2 / #  3 / # ifconfig  4 lo        Link encap:Local Loopback   5           inet addr:127.0.0.1  Mask:255.0.0.0 6           UP LOOPBACK RUNNING  MTU:65536  Metric:1 7           RX packets:0 errors:0 dropped:0 overruns:0 frame:0 8           TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 9           collisions:0 txqueuelen:1 10           RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)11 12 / #

none网络的应用场景

  隔离,一些对安全性要求高并且不需要联网的应用可以使用 none 网络。

  比如某个容器的唯一用途是生成随机密码,就可以放到 none 网络中避免密码被窃取。

 

host 网络

连接到 host 网络的容器共享 Docker host 的网络栈,容器的网络配置与 host 完全一样。可以通过 --network=host 指定使用 host 网络

1 root@ubuntu:~# docker run -it --network=host busybox 2 / #  3 / # ip l 4 1: lo: 
mtu 65536 qdisc noqueue qlen 1 5 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 6 2: ens192:
mtu 1500 qdisc mq qlen 1000 7 link/ether 00:50:56:87:03:ab brd ff:ff:ff:ff:ff:ff 8 3: docker0:
mtu 1500 qdisc noqueue 9 link/ether 02:42:84:1f:d9:25 brd ff:ff:ff:ff:ff:ff10 35: vetha0836f4@if34:
mtu 1500 qdisc noqueue master docker0 11 link/ether a2:44:e5:67:d4:2b brd ff:ff:ff:ff:ff:ff12 73: vethe93fca0@if72:
mtu 1500 qdisc noqueue master docker0 13 link/ether b2:7d:0b:27:07:5d brd ff:ff:ff:ff:ff:ff14 / # 15 / # 16 / # ifconfig 17 docker0 Link encap:Ethernet HWaddr 02:42:84:1F:D9:25 18 inet addr:172.17.0.1 Bcast:172.17.255.255 Mask:255.255.0.019 inet6 addr: fe80::42:84ff:fe1f:d925/64 Scope:Link20 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:121 RX packets:51367 errors:0 dropped:0 overruns:0 frame:022 TX packets:52135 errors:0 dropped:0 overruns:0 carrier:023 collisions:0 txqueuelen:0 24 RX bytes:53261486 (50.7 MiB) TX bytes:124403203 (118.6 MiB)25 26 ens192 Link encap:Ethernet HWaddr 00:50:56:87:03:AB 27 inet addr:10.12.31.1 Bcast:10.12.31.255 Mask:255.255.252.028 inet6 addr: fe80::250:56ff:fe87:3ab/64 Scope:Link29 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:130 RX packets:8898800 errors:0 dropped:1612 overruns:0 frame:031 TX packets:305141 errors:0 dropped:0 overruns:0 carrier:032 collisions:0 txqueuelen:1000 33 RX bytes:1187474166 (1.1 GiB) TX bytes:93847252 (89.4 MiB)34 35 lo Link encap:Local Loopback 36 inet addr:127.0.0.1 Mask:255.0.0.037 inet6 addr: ::1/128 Scope:Host38 UP LOOPBACK RUNNING MTU:65536 Metric:139 RX packets:10179 errors:0 dropped:0 overruns:0 frame:040 TX packets:10179 errors:0 dropped:0 overruns:0 carrier:041 collisions:0 txqueuelen:1 42 RX bytes:99596888 (94.9 MiB) TX bytes:99596888 (94.9 MiB)43 44 vetha0836f4 Link encap:Ethernet HWaddr A2:44:E5:67:D4:2B 45 inet6 addr: fe80::a044:e5ff:fe67:d42b/64 Scope:Link46 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:147 RX packets:5398 errors:0 dropped:0 overruns:0 frame:048 TX packets:5487 errors:0 dropped:0 overruns:0 carrier:049 collisions:0 txqueuelen:0 50 RX bytes:49767395 (47.4 MiB) TX bytes:49779783 (47.4 MiB)51 52 vethe93fca0 Link encap:Ethernet HWaddr B2:7D:0B:27:07:5D 53 inet6 addr: fe80::b07d:bff:fe27:75d/64 Scope:Link54 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:155 RX packets:0 errors:0 dropped:0 overruns:0 frame:056 TX packets:8 errors:0 dropped:0 overruns:0 carrier:057 collisions:0 txqueuelen:0 58 RX bytes:0 (0.0 B) TX bytes:648 (648.0 B)59 60 / # 61 / # hostname62 ubuntu63 / #

 

在容器中可以看到 host 的所有网卡,并且连 hostname 也是 host 的。

好处:

  性能,如果容器对网络传输效率有较高要求,则可以选择 host 网络。

缺点:

  要考虑端口冲突问题,Docker host 上已经使用的端口就不能再用了。

Docker host 的另一个用途是让容器可以直接配置 host 网路。比如某些跨 host 的网络解决方案,其本身也是以容器方式运行的,这些方案需要对网络进行配置,比如管理 iptables。

 

--------------------------------引用来自----------------------------------

https://mp.weixin.qq.com/s?__biz=MzIwMTM5MjUwMg==&mid=2653587677&idx=1&sn=f4b65107a7f19a6530014bf49a04c7d1&chksm=8d3080c4ba4709d21902b08986585bf42d79c0b8bfb771276292a2d46ab02dd955ca9bc29f44&scene=21#wechat_redirect

 

转载于:https://www.cnblogs.com/gsophy/p/10375278.html

你可能感兴趣的文章
网页特殊符号HTML代码大全
查看>>
SIP协议
查看>>
抽象是为了方便表达
查看>>
如何解决SSH Secure Shell Client中文乱码
查看>>
怎么制作WinPE(U盘启动盘)
查看>>
使用系统内置script和scriptreplay命令来记录操作记录
查看>>
无论窗口如何改变大小,如何让块元素始终相对当前窗口位于水平,垂直居中显示?...
查看>>
VMwareTool安装问题
查看>>
Presto 常用语句汇总
查看>>
JVM之GC监控
查看>>
Netconsole
查看>>
一个漂亮的php验证码类(分享)
查看>>
Nginx源代码分析-hash
查看>>
easyUI-后台管理界面
查看>>
[转]安装Fedora 15后需做的25件事情
查看>>
springmvc学习笔记(5)-入门程序小结
查看>>
从内核文件系统看文件读写过程
查看>>
反编译swf
查看>>
Java基础
查看>>
java基础——IO
查看>>