server2 (10.0.0.2) <--> **server1** <--> server3 (10.0.1.3)
вывод в server1.
netstat -rn
Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface
10.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 enp131s0f1
10.0.1.0 0.0.0.0 255.255.255.0 U 0 0 0 enp131s0f0
ip route
10.0.0.0/24 dev enp131s0f1 proto kernel scope link src 10.0.0.1 metric 102
10.0.1.0/24 dev enp131s0f0 proto kernel scope link src 10.0.1.4 metric 103
У меня 3 сервера. Сервер 2 и сервер 3 подключены к серверу 1 через Ethernet-кабели 10G.
Теперь сервер 2 и сервер 3 могут связываться с сервером 1. Но я не уверен, как позволить серверу 3 и серверу 2 связываться друг с другом напрямую через сервер 1. Я не могу соединить их с помощью дополнительных кабелей. Думаю, для этого я могу использовать мост. Но я еще не заставил это работать.
server2 и server3 - это разные IP-подсети, поэтому мост (обычно) не то, что вы бы там использовали. Вы бы хотели, чтобы server1 действовал как маршрутизатор, а не как мост.
Похоже, что server1 уже имеет IP 10.0.0.1 в сети server2 и 10.0.1.4 в сети server3.
Сначала включите переадресацию IP на server1:
sysctl -w net.ipv4.ip_forward=1
Далее вам понадобится маршрутизация. Если server1 уже является шлюзом по умолчанию для server2 и server3, тогда все готово. Если это не так, вам нужно как-то настроить маршрутизацию. Статические маршруты самые простые:
На server2:
ip route add 10.0.1.0/24 via 10.0.0.1 dev XXX
На server3:
ip route add 10.0.0.0/24 via 10.0.1.4 dev YYY
Где XXX и YYY - соответствующие имена интерфейсов Ethernet на этих серверах.