net.ipv4.ip_forward=0导致docker容器无法与外部通信

在启动一个docker容器时报错:

WARNING: IPv4 forwarding is disabled. Networking will not work.

并且,此时本机上的其他容器的网络服务,只能在本机上访问,其他机器上访问不到。

原因:

复制代码
sysctl net.ipv4.ip_forward
# net.ipv4.ip_forward = 0

在Docker网络配置中,有一项重要的参数是net.ipv4.ip_forward,它的作用是开启Linux内核的IP转发功能。通过开启该功能,Docker容器可以实现对外部网络的访问,使得容器可以与其他计算机进行通信。

解决方法:

复制代码
sysctl -w net.ipv4.ip_forward=1

临时生效的配置方式,在系统重启,或对系统的网络服务进行重启后都会失效。

永久配置参考:linux net.ipv4.ip_forward 数据包转发

参考文章:
linux net.ipv4.ip_forward 数据包转发
docker 为什么开启net.ipv4.ip_forward=1

相关推荐
ALex_zry2 小时前
Docker Compose运维技术实战分享:从安装到架构解析
运维·docker·架构
jinxinyuuuus6 小时前
GTA 风格 AI 生成器:跨IP融合中的“视觉语义冲突”与风格适配损失
人工智能·网络协议
roman_日积跬步-终至千里7 小时前
【Docker】Docker Stop 后到底发生了什么?——从信号机制到优雅停机
运维·docker·容器
嵌入式-小王7 小时前
每天掌握一个网络协议----ICMP
网络·网络协议·ping
Awkwardx7 小时前
Linux网络编程—应用层协议HTTP
网络·网络协议·http
4***v2147 小时前
详解 为什么 tcp 会出现 粘包 拆包 问题
网络·tcp/ip·php
蓝牙先生7 小时前
简易TCP C/S通信
c语言·tcp/ip·算法
z***6268 小时前
Docker:基于自制openjdk8镜像 or 官方openjdk8镜像,制作tomcat镜像
docker·容器·tomcat
Running_slave9 小时前
你应该了解的TCP滑窗
前端·网络协议·tcp/ip
❀͜͡傀儡师11 小时前
Docker部署视频下载器
docker·容器·音视频