Как и на диаграмме ниже, физическая сеть - 192.168.99.0/24. veth0 живет в отдельном пространстве имен сети. Я хочу, чтобы он напрямую подключался к физической сети, поэтому node1 и veth0 могут общаться друг с другом через физическую сеть без каких-либо NAT.
Что я пробовал это:
- создать Linux-мост BR0
- подключить veth1 к br0
- подключите eth0 (физический NIC узла 2) к br0
Оказывается, если мы пропингуем с 192.168.99.3 до 192.168.99.1, то пакеты arp приходят от veth0 , проходят через veth1 до br0 , а затем транслируются на node2 eth0 и, наконец, получаются node1 eth0 .
Однако, когда node1 отвечает, пакет, отправленный на veth0 -адрес veth0, не будет получен eth0 узла2 (несоответствие mac, я думаю), таким образом, veth0 не получит пакеты ответа arp, и ping завершится неудачно.
Итак, если я не понимаю этого неправильно, кто-нибудь может дать мне какие-нибудь идеи о том, как сделать эту мостовую сеть?
ОБНОВИТЬ
Я перестраиваю эту тестовую среду на голых железных машинах, оказывается, все работает отлично. Возможно, что-то не так с сетью виртуальных ящиков.

