Я добавил сеть macvlan docker в свой экземпляр Ubuntu в GCP. Однако я не могу получить доступ к / от экземпляра. Я подумал, что, может быть, есть ограничение, которое навязывает ровно одну MA C на экземпляр.
Кто-нибудь знает об этом или есть обходной путь? Есть ли способ увидеть, как выглядит таблица arp / ma c на стороне шлюза в GCP?
Я намеревался использовать сеть Macvlan для docker, который использует дополнительный IP-адрес из Первичная сеть экземпляра.
Подробнее: я назначил дополнительный диапазон IP-адресов для экземпляра виртуальной машины. например, внутренний IP-адрес виртуальной машины (первичный): 10.10.10.2/24, диапазон вторичных IP-адресов виртуальной машины: 10.10.11.0/24
GCP направляет вторичный диапазон виртуальной машины к IP-адресу виртуальной машины. Я проверил это, создав тестовую петлю с IP 10.10.11.2 и получив доступ к этому IP с другой виртуальной машины в том же VP C. Это сработало.
На следующем шаге я удалил эту фиктивную петлю и установил автономный контейнер docker, используя сеть Macvlan с IP-адресом 10.10.11.2.
Я ожидал, что новый контейнер, подключенный к этой сети macvlan, будет доступен через интерфейс виртуальной машины ens4 с MA C и IP-адресом контейнера (10.10.11.2).
Согласно документация это то, что делает сеть Macvlan. Он полностью изолирует сеть Macvlan от сети хоста, используя новый адрес MA C для каждого контейнера в сети Macvlan.
Единственное отличие между IP-адресом от вторичного диапазона на виртуальной машине хоста и в контейнере Docket, находящемся в сети Macvlan, заключается в том, что контейнер использует MA C, отличную от виртуальной машины хоста.