У меня есть виртуальная машина CentOS 7 Hyper-V, работающая на Windows Server 2012 R2, которая действует как мой хост Docker. Я пытаюсь разместить свои контейнеры в локальной сети с другими виртуальными машинами с помощью сетевого драйвера Docker macvlan.
Сеть:
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
Из контейнера я не могу проверить связь с шлюзом. я сделал tcpdump -n -i eth0
на хосте Docker и увидел arp
запросы из контейнера, но без ответов. Сетевая карта виртуальной машины хоста Docker - это виртуальный коммутатор внешней сети, который, как я подозреваю, является причиной. Есть ли какая-то конфигурация, которую мне не хватает?
Вам нужно включить неразборчивый режим в Hyper-V.
Hyper-V> ВМ> Настройки> Сетевая карта (щелкните плюс)> РАСШИРЕННАЯ ФУНКЦИЯ> Включить спуфинг MAC-адреса