You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

指定IP的Docker容器无法访问互联网的问题求助

Docker容器指定静态IP后无法联网的排查与解决方法
  • 检查自定义网桥的NAT规则
    Docker默认网桥会自动配置NAT实现外网访问,但自定义网桥可能缺失相关规则。执行以下命令查看NAT表:
    sudo iptables -t nat -L POSTROUTING
    如果没有针对193.111.77.0/24网段的SNAT规则,手动添加:
    sudo iptables -t nat -A POSTROUTING -s 193.111.77.0/24 -j MASQUERADE

  • 修正容器DNS配置
    容器无法解析域名会导致看似无法访问外网。进入容器查看DNS配置:
    cat /etc/resolv.conf
    若DNS服务器无效,创建网络时直接指定公共DNS:
    docker network create --driver=bridge --subnet=193.111.77.0/24 --gateway=193.111.77.1 --dns=8.8.8.8 --dns=114.114.114.114 br0
    或启动容器时单独指定:
    docker run --net br0 --ip 193.111.77.183 --dns=8.8.8.8 -it ubuntu bash

  • 验证网关连通性
    进入容器后先测试与网关的连通性:
    ping 193.111.77.1
    若无法连通,检查宿主机网卡配置,确保自定义网桥br0的网关设置正确,且宿主机本身能正常访问外网。

  • 更换私有网段
    你使用的193.111.77.0/24属于公网网段,可能与宿主机路由冲突。建议改用私有网段(如172.16.0.0/12、192.168.0.0/16、10.0.0.0/8):
    docker network create --driver=bridge --subnet=192.168.77.0/24 --gateway=192.168.77.1 br0
    再重新启动容器分配IP:
    docker run --net br0 --ip 192.168.77.183 -it ubuntu bash

内容的提问来源于stack exchange,提问作者bioflugel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 05:45:44