Доступ к интерфейсу крана в пространстве имен сети на разных машинах

Я хочу иметь возможность доступа к службам, работающим на интерфейсе TAP, в пространстве имен снаружи компьютера, на котором он запущен. У меня есть настройки, которые выглядят так -

VM1/Machine1
 +eth0 : Public Network
 +eth1 : Private Network (IP: 192.168.2.5/24)

VM2/Machine2
+========================================+
|                                        |
| eth0: Public Network 10.1.1.20/24 UP   |
| eth1: Private Network             UP   |
|----------------------------------------+
| Network Namespace : test               |
|  TAP0: 192.168.2.10/24, UP             |
|----------------------------------------|
|                                        |
+========================================+

Я хочу иметь возможность пинговать / получать доступ к службам, работающим на TAP0, в тесте пространства имен с VM1/Machine1. Я использовал информацию о посте 'OpenVSwitch между пространствами имен' и нескольких других онлайн-статьях, чтобы создать мост, поместив 'eth1' и 'TAP0' на тот же мост. Но я все еще не могу получить к нему доступ. Не уверен, что еще не хватает? Вот команды, которые я пробовал на VM2/Machine2 -

ip netns add test
ovs-vsctl add-br br0
ovs-vsctl add-port br0 tap0 -- set interface tap0 type=internal
ip link set tap0 netns test
ip netns exec test ip addr add 192.168.2.10/24 dev tap0
ip netns exec test ip link set tap0 up
ovs-vsctl add-port br0 eth1 -- set interface eth1 type=internal

После этого у моста 'br0' есть 'eth1' и 'tap0'. Поэтому, когда я пингую IP-адрес интерфейса tap от VM1, я думал, что смогу достичь tap0. Это работает должным образом без пространств имен, но с пространством имен это не работает.

В другой попытке я тоже пытался

- creating 2 bridges
- one OVS bridge outside
- one linux bridge inside namespace
- created a veth pair
- ovs bridge has eth1 and one end of veth pair
- linux bridge in the namespace has 'tap' interface and other end of veth pair

Но это тоже не сработало:(

Я думал, что весь смысл моста в том, что, если я добавлю интерфейс / порт в него, я должен иметь доступ к службам на порту, как коммутатор. Я не уверен, что мне не хватает.

0 ответов

Другие вопросы по тегам