一、
docker默认网络是桥接模式:
brctl show //显示docker0网桥和网桥上面的接口
iptables -t nat -L //显示路由规则和NAT地址转换
二、自定义虚拟网桥:
brctl addbr br0 //添加虚拟网桥
ifconfig br0 192.168.100.1 netmask 255.255.255.0
在/etc/default/docker中添加DOCKER_OPTS值,-b=br0 //更改docker守护进程的启动配置
三、docker容器的互联
允许所有容器互联(默认)
容器每次重启时ip地址都会发生变化,当我们用ip地址作为连接时是不可靠的。因此我们使用link:
使用link参数之后,当我们使用env命令查看环境变量时,会有很多跟我们所链接的容器相关的参数;查看/etc/hosts文件时,会增加一个容器地址映射
拒绝容器间互联
在/etc/default/docker中添加DOCKER_OPTS值,–icc=false。
ps -ef | grep docker //查看配置是否启用
允许特定容器间的链接
在/etc/default/docker中添加DOCKER_OPTS值,–icc=false,–iptables=true //设置了这些参数时,在docker run中使用link参数就能建立连接,否则不能连接
四、docker容器与外部网络的连接
sysctl net.ipv4.conf.all.forwarding //查看其值是否为1,当值为1时允许流量转发
iptables -I DOCKER -s 10.211.55.3 -d 172.17.0.7 -p TCP –dport 80 -j DROP //设置了一条iptables规则,阻止宿主机10.211.55.3对容器172.17.0.7的访问
iptables -L -n //查看iptables规则