macvlan 网络中的 Docker 容器连接

macvlan 网络中的 Docker 容器连接

我有一台在 Windows Server 2012 R2 上运行的 CentOS 7 Hyper-V VM,它充当我的 Docker 主机。我正尝试使用 Docker 的 macvlan 网络驱动程序将我的容器与其他 VM 一起放置在 LAN 中。

网络:

docker create network -d macvlan --subnet=10.1.0.0/24 --gateway=10.1.0.1 -o parent=eth0 macnet

容器:

docker run --net=macnet -it --ip=10.1.0.2 ubuntu bash

从容器中,我无法 ping 网关。我tcpdump -n -i eth0在 Docker 主机上执行了此操作,看到arp来自容器的请求,但没有回复。Docker 主机 VM 的 NIC 是外部网络虚拟交换机,我怀疑这是原因。我是否遗漏了一些配置?

答案1

您需要在 Hyper-V 中启用混杂模式。

Hyper-V > VM > 设置 > NIC(单击加号)> 高级功能 > 启用 MAC 地址欺骗

相关内容