【问题标题】:Giving full access to eth1 to docker container为 docker 容器提供对 eth1 的完全访问权限
【发布时间】:2014-12-18 21:50:57
【问题描述】:

我可以运行可以访问eth1docker 容器吗? DSL 提供商连接到eth1。 我在eth0 上有默认互联网。 我希望docker 容器在eth1 上拨打pppoe 和docker 中的应用程序以使用该互联网,无需端口映射即可完全访问互联网。

【问题讨论】:

    标签: networking docker


    【解决方案1】:

    我看不出你有什么理由不能做你正在尝试的事情。添加标志

    --cap-add=NET_ADMIN
    

    到 docker run 命令。这将赋予容器足够的权限来创建和配置接口。

    【讨论】:

    • 它适用于--net=host,但它是完全相同的网络。如果我更改路线,那么它会在主机上更改。我想做的是在主机和容器中有不同的路由来使用不同的互联网提供商。
    • 是否有可能通过同一条 DSL 线路同时拨打两个互联网提供商?
    【解决方案2】:

    最简单的选择是使用主机的网络堆栈运行。您不会在容器之间进行任何网络隔离,但 eth1 会在那里,就像您在运行常规进程一样。

    为此,请使用docker run --net=host [rest of run command]

    也可以build your own bridge 并将容器中的 veth 链接到网桥到 eth1。我没试过,也没试过控制pppoe。

    【讨论】:

    • 无法更改路由。 apt-get install pppoeconf 在 docker 中也不起作用。这是另一个问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-09
    • 1970-01-01
    • 2013-03-20
    • 2018-04-28
    • 2012-01-08
    • 1970-01-01
    相关资源
    最近更新 更多