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

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值