The server network setup requirements are the following:
- All four interfaces on each server should be able to send/receive traffic independently (e.g. ping -I 192.168.15.100 -c 2 192.168.16.100 should see ICMP traffic between the pair only). No interface bonding is used - this is intentional.
- All four interfaces should know of the route to the subnet of the other server.
I have done:
- added to /etc/iproutes/rt_tables the following
Code: Select all
4 ens1f1table
3 ens1f0table
2 ens20f1table
1 ens20f0table
- introduced /etc/sysconfig/network-scripts/ route-* and rule-* for each of the four interfaces on each server (an example is given below)
For example, for server A's interface ens20f0, I have the following in /etc/sysconfig/network-scripts/route-ens20f0:
Code: Select all
192.168.15.0/24 dev ens20f0 src 192.168.15.100 table ens20f0table
default via 192.168.15.1 dev ens20f0 table ens20f0table
Code: Select all
from 192.168.15.100/32 table ens20f0table
to 192.168.15.100/32 table ens20f0table
Code: Select all
/sbin/route add -net 192.168.16.0/24 gw 192.168.15.1 dev ...
Code: Select all
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 192.168.11.3 0.0.0.0 UG 0 0 0 ens10f0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 ens20f0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 ens10f0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 ens20f1
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 ens1f0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 ens1f1
192.168.11.0 0.0.0.0 255.255.255.0 U 0 0 0 ens10f0
192.168.15.0 0.0.0.0 255.255.255.0 U 0 0 0 ens20f0
192.168.15.0 0.0.0.0 255.255.255.0 U 0 0 0 ens20f1
192.168.15.0 0.0.0.0 255.255.255.0 U 0 0 0 ens1f0
192.168.15.0 0.0.0.0 255.255.255.0 U 0 0 0 ens1f1
192.168.16.0 192.168.15.1 255.255.255.0 UG 0 0 0 ens1f1
192.168.16.0 192.168.15.1 255.255.255.0 UG 0 0 0 ens1f0
192.168.16.0 192.168.15.1 255.255.255.0 UG 0 0 0 ens20f1
192.168.16.0 192.168.15.1 255.255.255.0 UG 0 0 0 ens20f0
Obviously, the "get-around" setup is not persistent. I have tried to put in 192.168.16.0/24 via 192.168.15.1 dev ens20f0 into the route-ens20f0. After a /sbin/ifdown ens20f0 and then /sbin/ifup ens20f0, the desired route didn't show up in the kernel routing table. I am at a loss here what to do. Repeated reading of https://access.redhat.com/documentation ... lt_Gateway didn't help. I would be grateful to any hints as to what I have missed.
--Zack