免重启解决docker No chain/target/match by that name 免重启解决方案

问题原因和基本思路

网上通用方案就是重启,然后通过docker的生命函数重新创建网桥,出现这个情况的原因就是因为iptables里面丢失了网桥配置,导致主机和容器网络不通,所以需要我们恢复网桥链接通过iptables,那么这个配置文件的重新载入就能实现

我们通过iptables -L -n | grep DOCKER ,可以看到如果没有证明docker的网桥配置丢失了那还搞个屁

【保存现在的配置】
iptables-save > my.ipt 
#将这个内存的映射导出到当前目录
【查看配置】
vim my.ipt

查看文件如下,为了将原有配置跟docker配置合并所以需要下载原来的文件避免出现其它问题

 #Generated by iptables-save v1.4.21 on Thu Feb  1 16:33:12 2024
*filter
:INPUT ACCEPT [106581789:28976139577]
:FORWARD ACCEPT [147087:8825220]
:OUTPUT ACCEPT [116406101:43593334612]
COMMIT
#Completed on Thu Feb  1 16:33:12 2024
#Generated by iptables-save v1.4.21 on Thu Feb  1 16:33:12 2024
*nat
:PREROUTING ACCEPT [207224:12269475]
:INPUT ACCEPT [89680:5216807]
:OUTPUT ACCEPT [763177:50807942]
:POSTROUTING ACCEPT [880721:57860610]
COMMIT
#Completed on Thu Feb  1 16:33:12 2024
Ps:*[表名就是]
【追加配置】
nat表增加:
:DOCKER - [0:0]
-A PREROUTING -m addrtype --dst-type LOCAL -j DOCKER
-A OUTPUT ! -d 127.0.0.0/8 -m addrtype --dst-type LOCAL -j DOCKER
-A POSTROUTING -s 172.17.0.0/16 ! -o docker0 -j MASQUERADE
-A DOCKER -i docker0 -j RETURN


filter表增加:
:DOCKER - [0:0]
:DOCKER-ISOLATION-STAGE-1 - [0:0]
:DOCKER-ISOLATION-STAGE-2 - [0:0]
:DOCKER-USER - [0:0]
-A FORWARD -j DOCKER-USER
-A FORWARD -j DOCKER-ISOLATION-STAGE-1
-A FORWARD -o docker0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -o docker0 -j DOCKER
-A FORWARD -i docker0 ! -o docker0 -j ACCEPT
-A FORWARD -i docker0 -o docker0 -j ACCEPT
-A DOCKER-ISOLATION-STAGE-1 -i docker0 ! -o docker0 -j DOCKER-ISOLATION-STAGE-2
-A DOCKER-ISOLATION-STAGE-1 -j RETURN
-A DOCKER-ISOLATION-STAGE-2 -o docker0 -j DROP
-A DOCKER-ISOLATION-STAGE-2 -j RETURN
-A DOCKER-USER -j RETURN

结果:
#Generated by iptables-save v1.4.21 on Thu Feb  1 16:33:12 2024

*filter
:INPUT ACCEPT [106581789:28976139577]
:FORWARD ACCEPT [147087:8825220]
:OUTPUT ACCEPT [116406101:43593334612]
:DOCKER - [0:0]
:DOCKER-ISOLATION-STAGE-1 - [0:0]
:DOCKER-ISOLATION-STAGE-2 - [0:0]
:DOCKER-USER - [0:0]
-A FORWARD -j DOCKER-USER
-A FORWARD -j DOCKER-ISOLATION-STAGE-1
-A FORWARD -o docker0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -o docker0 -j DOCKER
-A FORWARD -i docker0 ! -o docker0 -j ACCEPT
-A FORWARD -i docker0 -o docker0 -j ACCEPT
-A DOCKER-ISOLATION-STAGE-1 -i docker0 ! -o docker0 -j DOCKER-ISOLATION-STAGE-2
-A DOCKER-ISOLATION-STAGE-1 -j RETURN
-A DOCKER-ISOLATION-STAGE-2 -o docker0 -j DROP
-A DOCKER-ISOLATION-STAGE-2 -j RETURN
-A DOCKER-USER -j RETURN
COMMIT
#Completed on Thu Feb  1 16:33:12 2024
#Generated by iptables-save v1.4.21 on Thu Feb  1 16:33:12 2024
*nat
:PREROUTING ACCEPT [207224:12269475]
:INPUT ACCEPT [89680:5216807]
:OUTPUT ACCEPT [763177:50807942]
:POSTROUTING ACCEPT [880721:57860610]
:DOCKER - [0:0]
-A PREROUTING -m addrtype --dst-type LOCAL -j DOCKER
-A OUTPUT ! -d 127.0.0.0/8 -m addrtype --dst-type LOCAL -j DOCKER
-A POSTROUTING -s 172.17.0.0/16 ! -o docker0 -j MASQUERADE
-A DOCKER -i docker0 -j RETURN
COMMIT
【重新载入配置】
iptables-restore < my.ipt
【查看结果】
iptables -L -n | grep DOCKER 
相关推荐
梅见十柒7 分钟前
wsl2中kali linux下的docker使用教程(教程总结)
linux·经验分享·docker·云原生
->yjy10 小时前
计算机网络(第一章)
网络·计算机网络·php
摘星星ʕ•̫͡•ʔ12 小时前
计算机网络 第三章:数据链路层(关于争用期的超详细内容)
网络·计算机网络
意疏14 小时前
【Linux 篇】Docker 的容器之海与镜像之岛:于 Linux 系统内探索容器化的奇妙航行
linux·docker
墨鸦_Cormorant14 小时前
使用docker快速部署Nginx、Redis、MySQL、Tomcat以及制作镜像
redis·nginx·docker
Code_Artist14 小时前
Docker镜像加速解决方案:配置HTTP代理,让Docker学会科学上网!
docker·云原生·容器
wanmei00215 小时前
Dockerfile复制目录进入镜像里
docker
inter_peng15 小时前
[Docker-显示所有容器IP] 显示docker-compose.yml中所有容器IP的方法
tcp/ip·docker·eureka
Linux运维日记16 小时前
k8s1.31版本最新版本集群使用容器镜像仓库Harbor
linux·docker·云原生·容器·kubernetes
战术摸鱼大师17 小时前
计算机网络-理论部分(二):应用层
计算机网络