小知识:Docker中iptables规则在iptables重启后丢失的完整过程

前因后果

1、在跳板机上使用ansible命令测试机器b时,报错如下,于是就怀疑是网络防火墙的问题

?
1
2
3
4
5
10.10.0.86 | failed >> {
failed“: true,
“msg”: “/bin/sh: /usr/bin/python: no such file or directory\r\nopenssh_7.6p1 ubuntu-4ubuntu0.3, openssl 1.0.2n 7 dec 2017\r\ndebug1: reading configuration data /etc/ssh/ssh_config\r\ndebug1: /etc/ssh/ssh_config line 19: applying options for *\r\ndebug1: auto-mux: trying existing master\r\ndebug1: mux_client_request_session: master session id: 2\r\nshared connection to 10.10.0.86 closed.\r\n”,
“parsed”: false
}

2、登录到机器b上,这是一台线上的机器,里面运行docker容器,然后我看平时的经验一般是网络防火墙有问题就直接

?
1
2
3
systemctl stop iptables
systemctl stop firewalld

3、然后我想着这应该不会影响容器吧,就看容器的日志,没想到10几个全部报错,都是连接不上,有点慌…,重启容器,完全是起不来的,报错如下

?
1
2
3
docker: error response from daemon: driver failed programming external connectivity on endpoint happy_ptolemy (9cedc114be35eb86cd6f7f7bb4f11f93b5f8d2c0745afc72664cef8e96aad439): iptables failed: iptables –wait -t filter -a docker ! -i docker0 -o docker0 -p tcp -d 10.10.0.86 –dport 3000 -j accept: iptables: no chain/target/match by that name.
(exit status 1).

4、解决办法,重启docker

?
1
systemctl restart docker

知识点

1、netfilter与iptables的关系

netfilter是在linux内核中的一个防火墙框架,用于管理网络数据包,不仅具有网络地址转换(nat)的功能,也具有数据包内容修改,以及数据包过滤等防火墙功能。利用在用户空间的应用软件iptables等来控制netfilter(iptables只是应用软件,工具)。

%小知识:Docker中iptables规则在iptables重启后丢失的完整过程-猿站网-插图

2、iptables与firewalld的关系

firewalld和iptables一样都是应用软件,是工具,但是他的底层还是先通过iptables。

%小知识:Docker中iptables规则在iptables重启后丢失的完整过程-1猿站网-插图

3、docker与firewalld、iptables的关系

1)docker安装完成后,会自动接管iptables或者firewalld,在docker run的时候,会自动往iptables里加入规则;所以当iptables重启后会丢失,只有再重启docker就好了的原因。

2)当使用systemd 的时候, firewalld 会在 docker 之前启动,但是如果你在 docker 启动之后再启动 或者重启 firewalld ,就需要重启 docker 进程了。

总结

1、对生产环境的敬畏

2、对知识点的理解不透彻,不知道什么场景能用,什么场景不能用

3、后面还需要把防火墙的规则再深入了解

到此这篇关于docker中iptables规则在iptables重启后丢失的文章就介绍到这了,更多相关docker中iptables规则重启后丢失内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://www.cnblogs.com/lemon-le/p/12976999.html

声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:VMware安装ubuntu 20.04操作系统的教程图解

2023-3-30 10:07:14

建站知识

小知识:Docker容器互相连接三种实现方法详解

2023-3-30 10:18:00

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索