Route advertisements in Calico BGP

I have a cluster with 3 nodes. Lets call it Node 1, 2 and 3. Node 1 is the master and the other 2 nodes are the worker nodes. I am using calico CNI for networking. I also have an external system (lets call it Ext 1) connected to the kube cluster and the routes are being advertised between the 2 AS s.


  1. Calico inherent BGP is being used to establish the mesh topologu between the nodes. How do i check what routes are being disttributed by each of the nodes? My system does not have BIRD or quagga installed and is most liking using the BIRD that comes with the calico.

  2. Another problem is that the routes from the kube cluster which show up on Ext 1, the nexthop is not as expected. The nexthop is the IP that is reachable between the 3 nodes. Although Ext1 is directly connected to the kube cluster via the data ports, the nexthop of the routes advertized are still the IP over which the kubes are reachable to each other. How do I force to set the desired nexthop?

Note: The nodes in kube cluster are running on Ubuntu 20.04.2 LTS. Ext 1 is a rouuer/load balancers. I am using kubeadm to orchestrate the cluster.

Cluster information:

Kubernetes version: v1.20.
Cloud being used: bare metal
Installation method: kubeadm
Host OS: Ubuntu 20.04.2 LTS
CNI and version:
CRI and version:

You can format your yaml by highlighting it and pressing Ctrl-Shift-C, it will make your output easier to read.