My situation is that I have 10 Linux servers announcing the same VIP (10.0.0.10 for example) to the router with bird
, so the router is doing kind of load balancing with ECMP.
+---------------------------+
| BGP router (192.168.0.10) |
+---------------------------+
^
| BGP session
+---------------------------+---------------------------------+
| | |
VIP: 10.0.0.10 v VIP: 10.0.0.10 v VIP: 10.0.0.10 v
+----------------------+ +-----------------------+ +----------+
| Node 1 (192.168.0.20)| | Node 2 (192.168.0.21) | ... | Node 10 |
+----------------------+ +-----------------------+ +----------+
(Linux with Bird)
It works well, but I want to understand how does BGP router know the MAC addresses of clients, as the BGP rfc does not specify how RIB is translated to FIB or Forwarding table.
Does it also depends on ARP protocol?