为什么防火墙重启docker容器连接不上网络?

8 篇文章 0 订阅
4 篇文章 0 订阅

记录一次docker网络连接的问题:
docker 容器化技术
linux 主机防火墙重启了之后为啥docker 就不能正常连接网络了,需要重启docker服务;
系统版本:redhat 7.5 docker版本:19.03.13

说起这个问题,就不得不说docker的网络模式了:
1. host docker不会为容器创建独有的network namespace,特点容器与宿主机IP一致,网络性能高;
2. bridge 桥接模式,与vmware的nat模式有几分相似,特点 docker 会创建docker0网桥,写入iptables规则,docker会为容器创建独有的network namespace,也会为这个命名空间配置好虚拟网卡,路由,DNS,IP地址与iptables规则;
3. none 模式 网络环境为 none,即不为 Docker Container 任何的网络环境,一般做定制开发时才需要用到;
4. 容器共享模式,这种模式是host模式的一种延伸,一组容器共享一个network namespace;
对外表现为他们有共同的IP地址,共享一个网络栈;
kubernetes的pod就是使用的这一模式。

今天说的防火墙重启后,容器不能联网的问题就发生在bridge模式下,原因是在bridge模式下,docker会默认写入iptables规则,但是这些规则不知为何,没有写入磁盘所以当防火墙重启后,规则丢失,容器自然无法上网。
解决办法就是重启docker,重写规则,所以一般生产要不就是关闭防火墙起docker,要不就开启防火墙起docker,过程中不要让防火墙重启;
在这里插入图片描述

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值