Проблема маршрутизации между Linux-машиной

Проблема маршрутизации между Linux-машиной

Привет, у меня есть 3 сервера Linux, развернутых в облаке Openstack в одной сети.

Сервер A -----> Сервер B ------> Сервер C

  • Диапазон частных IP-адресов каждого сервера — 192.168.10.x/24.

Все 3 сервера взаимодействуют друг с другом по диапазону IP 192.168.10.x. Я хочу, чтобы сервер A пересылал трафик на сервер B, если он принадлежит серверу C, и наоборот.

Для этого я создал статический маршрут на сервере A, который, если пунктом назначения является сервер C, отправлял его через сервер B, а для этого трафика создал такой же обратный маршрут на сервере C.

Проблема в том, что если мы добавим этот конкретный маршрут, связь между сервером A и сервером C прекратится. Я вижу пакеты на сервере B, но они не проходят на сервер C.

Я попробовал включить переадресацию IP на каждом сервере, но проблема осталась прежней.

[root@serverB ~]# cat /proc/sys/net/ipv4/ip_forward
1
[root@serverB ~]#

решение1

Вам необходимо поместить сервер B и сервер C в отдельные подсети 192.168.11.0/24.

Сервер A и сервер B остаются в 192.168.10.0/24.

Для этого вам необходимо иметь два интерфейса на сервере B, которые подключены к двум разным сетям Ethernet.

После этого вы можете настроить B на пересылку пакетов между A и C.

Вам также необходимо настроить таблицы маршрутизации соответствующим образом на A и C:

  • На A необходимо настроить так, чтобы пакеты отправлялись 192.168.11.0/24через B.
  • На C необходимо настроить 192.168.10.0/24отправку пакетов через B.

Связанный контент