> On 29 Mar 2024, at 10:48, Yasen Atanasov <yasen6...@abv.bg> wrote:
>
> Hello,
> Lets imagine I have 2 BGP servers announcing same subnet. BGP sessions with
> upstream are in different VLAN. Both servers have keepalived and all clients
> are using for default route the virtual address. The idea is if I need to
> upgrade/rebuild one of the servers the clients will still have connectivity
> trough the other server. Do I need to do something special in the bird config
> or just announcing the same net is enough?
Just announce the same net and ensure you do not have 'state': connection
tracking... otherwise you need to do connection tracking state handover and
things become nasty very quick.
Also, in keepalived or as a manual trigger have a script that removes the
announce for the prefix the moment it detects it does not have proper
connectivity. One choice there is then also if only the primary does announce
for incoming traffic or not, traffic load balancing can be a good thing, but
might not work unless your upstream does ECMP for you.
As you note VLAN, ensure that that VLAN has 2 different physical underlying
paths, otherwise you will lose connectivity anyway if a single link that
underlies it dies.
If it is really a single link, one does not really need separate VLANs btw, 1
remote router, 2 IPs for your side is then enough. A separate VLAN can be nice
to cleanly separate though.
BFD and low timers also come to mind too if you really want to do 'failover'
and not 'I know it is going down soon, lets stop announces for the prefix from
the router I am going to play with'.
Greets,
Jeroen