前面学习了原生网络和自定义网络
前言
建议使用自定义的网桥来控制哪些容器可以相互通信,还可以自动DNS解析容器名称到IP地址
Docker提供了创建这些网络的默认网络驱动程序,你可以创建一个新的Bridge网络,Overlay或Macvlan网络
你还可以创建一个网络插件或远程网络进行完整的自定义和控制
你可以根据需要创建任意数量的网络,并且可以在任何给定时间将容器连接到这些网络中的零个或多个网络
此外,您可以连接并断开网络中的运行容器,而无需重新启动容器
当容器连接到多个网络时,其外部连接通过第一个非内部网络以词法顺序提供
1.容器如何访问外网是通过iptables的SNAT实现的?
2.外网如何访问容器?
端口映射,-p指定对应端口
外网访问容器用到了docker-proxy和iptables DNAT
宿主机访问本机容器使用的是iptables DNAT
外部主机访问容器或容器之间的访问是docker-proxy实现
3.演示过程
查看当前iptable的nat表火墙策略
[root@server1 ~]# iptables -t nat -nL