【问题标题】:Allow routing to docker 172.17.0.0/16 network without NAT?允许在没有 NAT 的情况下路由到 docker 172.17.0.0/16 网络?
【发布时间】:2015-08-08 05:02:10
【问题描述】:

我正在探索 Docker 1.7。以前我使用过 CoreOS(很棒的项目),它解决了所有令人头疼的网络问题。

在 CoreOS 中,我可以为外部路由器上的 docker 桥接网络(即 172.17.0.0/16 或任何它选择的)的流量设置静态路由,以指向 CoreOS 主机,它会正常工作.

使用在 CentOS 7 下运行的最新最好的 docker,我试图复制此功能,但是如果我在 sysctl 中打开 ipv4 路由并从 nat 后路由表中删除伪装规则,则没有任何效果(简单的 docker 回收将重新规则,我假设 docker 配置中的某些内容不正确)。

有没有办法配置 docker 以这种方式设置网络(我是否必须自己使用自定义桥接接口来执行此操作,或者是否有它的配置标志)?我总是可以等待 CoreOS 更新到最新最好的 docker,但我想知道如何自己配置它。

【问题讨论】:

  • 关闭 NAT 应该只是用--ip-masq=false 启动守护进程的情况。您可能还需要手动删除规则。其他的不清楚。

标签: networking routing docker centos7 coreos


【解决方案1】:

Adrian Mouat 给了我正确的响应,这是一个您可以在 docker 配置中通过设置 --ip-masq=false 来关闭的选项。我最终没有这样做,因为虽然它在单个 docker 主机上工作,但您会遇到扩展问题,因为每次添加 docker 主机时都需要添加另一条路由或为每个主机设置路由协议(如 RIP /OSPF/etc) 来自动处理这个问题。我改为使用 gliderlabs/registrator 和 Consul 进行服务发现。

【讨论】:

    猜你喜欢
    • 2021-08-26
    • 2021-08-01
    • 1970-01-01
    • 2021-10-03
    • 2016-10-16
    • 2018-08-06
    • 1970-01-01
    • 2023-03-12
    • 1970-01-01
    相关资源
    最近更新 更多