Як я можу логічно розділити інтерфейси на хості?


0

Проблема Введення

У мене є топологія мережі, яка виглядає як діаграма нижче. Всі хости використовують різні дистрибутиви Linux, і вся моя конфігурація (сподіваюся) буде виконана на Host A, який є RHEL7.

Network Topology Graph

з цією таблицею маршрутизації:

Destination     Gateway         Genmask         Flags Metric Ref    Use 

Iface
default         fw.gatename.    0.0.0.0         UG    100    0        0 enp34s0
10.0.1.0        0.0.0.0         255.255.255.0   U     0      0        0 enp9s0
10.0.1.2        0.0.0.0         255.255.255.255 UH    0      0        0 bridge1
10.12.0.0       0.0.0.0         255.255.255.0   U     100    0        0 enp2s0f1
10.14.0.0       0.0.0.0         255.255.255.0   U     100    0        0 enp2s0f0
10.17.0.0       0.0.0.0         255.255.255.0   U     100    0        0 enp7s0
172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 docker0
172.18.0.2      0.0.0.0         255.255.255.255 UH    0      0        0 bridge2
172.18.0.3      0.0.0.0         255.255.255.255 UH    0      0        0 bridge0
172.18.0.4      0.0.0.0         255.255.255.255 UH    0      0        0 bridge1
192.168.3.0     0.0.0.0         255.255.255.0   U     100    0        0 enp34s0
192.168.30.0    0.0.0.0         255.255.255.0   U     0      0        0 enp35s0
192.168.30.91   0.0.0.0         255.255.255.255 UH    0      0        0 bridge2
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0

Моя головна мета полягає в тому, щоб кожен фізичний інтерфейс карти Host A містився в контейнер Docker, щоб трафік міг вільно перетікати тільки між обома кінцями цього відображення (і без трафіку на або від інтерфейсів за межами цього відображення).

Наприклад, Container1 повинен мати можливість (тільки) спілкуватися з Host B (уздовж червоних ліній діаграми), і Container2 повинен мати можливість (тільки) зв'язуватися з Host C (уздовж зелених ліній діаграми).

Початкова спроба

За замовчуванням докер створює міст br-97707d67f97c (наприклад), яку я вилучив (оскільки він з'єднує всі контейнери один з одним). Я створив три мости ( bridge0, bridge1, bridge2 ), тому що я думав, що може бути надія на якийсь спосіб зробити мост "приватним".

Як тільки він стоїть зараз, я можу пінг з будь-якого контейнера до будь-якого інтерфейсу на Host A, B або C; Я не можу пінгувати з одного контейнера в інший, що, на мою думку, пов'язано з тим, що вони знаходяться на одній підмережі і заплутують міст.

Питання

Як я можу логічно розділити інтерфейси на хості, щоб вони могли взаємодіяти тільки з інтерфейсом (ями), до якого я хочу?

Відповіді:


0

Я зміг вирішити цю помилку, починаючи з нуля, потім розділяючи мої інтерфейси на підмережу.

Щоб скористатися прикладом діаграми у моєму питанні, я змінив IP-адресу для Container2, щоб бути в межах підмережі 10.0.0.0/24, так, наприклад, 10.0.1.100. Я змінив адресу Container1, щоб бути в підмережі 192.168.30 / 24.

Я також видалив IP-адреси з enp35s0 і enp9s0, тому що я вважав, що вони були непотрібними, оскільки мости в моєму прикладі могли працювати тільки на OSI Layer 2.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.