gpt4 book ai didi

docker - 无法通过Macvlan网络从主机访问Docker容器

转载 作者:行者123 更新时间:2023-12-05 00:15:39 33 4
gpt4 key购买 nike

在我的Linux网络中,我无法通过专用的macvlan网络从运行它们的主机上访问我的docker容器。与此macvlan网络的所有其他连接都可以。

因此,基本上的设置是:

DOCKER1       eth0  172.0.0.1 (default)
| eth1 10.0.0.1 (macvlan)
CONTAINER1 10.0.0.11 (macvlan)

DOCKER2 eth0 172.0.0.2 (default)
| eth1 10.0.0.2 (macvlan)
CONTAINER2 10.0.0.12 (macvlan)
  • 主机DOCKER1无法访问CONTAINER1
  • 主机DOCKER2无法访问CONTAINER2
  • 主机DOCKER1可以访问DOCKER2
  • 主机DOCKER1可以到达CONTAINER2
  • 主机DOCKER2可以到达DOCKER1
  • 主机DOCKER2可以到达CONTAINER1
  • 所有容器都可以互相到达
  • 物理网络中的所有其他设备都可以访问所有
  • 所有都可以到达网关/互联网

  • 如何使主机通过macvlan网络到达其自己的容器?

    我需要特定的应用程序才能通过此网络进行交互,因此使用 docker exec不能解决我的问题;)。

    最佳答案

    您可以通过执行以下操作来做到这一点:

    ip link add foobar link enp7s0 type macvlan mode bridge
    ip addr add 192.168.9.252/32 dev foobar
    ip link set foobar up
    ip route add 192.168.9.228/32 dev foobar

    在哪里:

    enp7s0-物理适配器的名称

    192.168.9.252/32-您网络上的全新IP

    192.168.9.228/32-使用macvlan的容器的IP

    请注意,它不会在重新启动后继续存在,因此您需要编写脚本来运行每次重新启动,或使用其他方法使其持久化

    关于docker - 无法通过Macvlan网络从主机访问Docker容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44048915/

    33 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com