Docker macvlan может только пропинговать шлюз, не может быть пропингован другими устройствами - PullRequest
0 голосов
/ 24 августа 2018

Чего я пытаюсь достичь

Мне нужен контейнер, чтобы я мог пинговать другие устройства в сети.В частности, мой nginx контейнер, который теперь имеет статический IP-адрес через macvlan.

Настройка

Server (NAS):           192.168.1.1
     other container  : 192.168.1.1:32811
     nginx (container): 192.168.1.192 (macvlan bridge_lan)

Gateway:                192.168.1.254

Что я сделал

Для настройки моей сети я запустил:

docker network create -d macvlan --subnet=192.168.1.0/24 --gateway=192.168.1.254 --ip-range=192.168.1.200/27 -o parent=eth0 bridged_lan

Затем я создаю контейнер Docker и назначаю его сети bridge_lan.Если я перейду к 192.168.1.192, меня встретит мой контейнер nginx.Несколько тестов показывают, что он почти правильно настроен, где:

Network -> nginx container // every device can ping this container on network
nginx container -> network // container cannot ping any device, except for case below
nginx container -> gateway // the only device it can ping, the gateway

Я явно что-то здесь упускаю.Это может быть мое непонимание, но почему и как я могу решить эту проблему?Мне просто нужно, чтобы у моего контейнера был собственный статический IP-адрес, чтобы он был доступен в локальной сети и наоборот.

...