osrg / gobgp

BGP implemented in the Go Programming Language
https://osrg.github.io/gobgp/
Apache License 2.0
3.65k stars 696 forks source link

gobgp cannot get routes from zebra debian 12/11 #2822

Open morhold opened 4 months ago

morhold commented 4 months ago

Good afternoon, everyone. Faced with the problem that on debian12/11 it is not possible to import connected routes from zebra

At the same time, everything works as it should on ubuntu 22

cat /etc/debian_version 
12.6

/usr/lib/frr/zebra  --version | grep version
zebra version 10.0.1

gobgpd --version
gobgpd version 3.28.0

cat gobgp.conf 
[global.config]
  as = 65502
  router-id = "10.0.9.214"
  local-address-list = ["10.0.9.214"]

[[neighbors]]
  [neighbors.config]
    neighbor-address = "10.0.9.213"
    peer-as = 65555
  [neighbors.transport.config]
        local-address = "10.0.9.214"

[zebra]
    [zebra.config]
        enabled = true
        url = "unix:/var/run/frr/zserv.api"
        redistribute-route-type-list = ["connect"]
        version = 6

I didn't see any errors in debug

 gobgpd -f gobgp.conf -l debug
{"level":"info","msg":"gobgpd started","time":"2024-07-04T11:16:38+03:00"}
{"Topic":"Config","level":"info","msg":"Finished reading the config file","time":"2024-07-04T11:16:38+03:00"}
{"Body":{},"Header":{"Len":10,"Marker":254,"Version":6,"VrfID":0,"Command":18},"Topic":"Zebra","level":"debug","msg":"send command to zebra","time":"2024-07-04T11:16:38+03:00"}
{"Body":{},"Header":{"Len":10,"Marker":254,"Version":6,"VrfID":0,"Command":15},"Topic":"Zebra","level":"debug","msg":"send command to zebra","time":"2024-07-04T11:16:38+03:00"}
{"Body":{},"Header":{"Len":10,"Marker":254,"Version":6,"VrfID":0,"Command":15},"Topic":"Zebra","level":"debug","msg":"send command to zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":14,"Marker":254,"Version":6,"VrfID":0,"Command":118},"Body":{"Data":"AgAAAA=="}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Topic":"Zebra","Version":6,"level":"info","msg":"success to connect to Zebra","time":"2024-07-04T11:16:38+03:00"}
{"Body":null,"Header":{"Len":10,"Marker":254,"Version":6,"VrfID":0,"Command":0},"Topic":"Zebra","level":"debug","msg":"send command to zebra","time":"2024-07-04T11:16:38+03:00"}
{"Body":{},"Header":{"Len":10,"Marker":254,"Version":6,"VrfID":0,"Command":11},"Topic":"Zebra","level":"debug","msg":"send command to zebra","time":"2024-07-04T11:16:38+03:00"}
{"Body":{},"Header":{"Len":10,"Marker":254,"Version":6,"VrfID":0,"Command":11},"Topic":"Zebra","level":"debug","msg":"send command to zebra","time":"2024-07-04T11:16:38+03:00"}
{"Key":"10.0.9.213","Topic":"config","level":"info","msg":"Add Peer","time":"2024-07-04T11:16:38+03:00"}
{"Key":"10.0.9.213","Topic":"Peer","level":"info","msg":"Add a peer configuration","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":84,"Marker":254,"Version":6,"VrfID":0,"Command":0},"Body":{}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":15,"Marker":254,"Version":6,"VrfID":0,"Command":42},"Body":{"Data":"AAAABAA="}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":25,"Marker":254,"Version":6,"VrfID":0,"Command":2},"Body":{}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":49,"Marker":254,"Version":6,"VrfID":0,"Command":2},"Body":{}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":84,"Marker":254,"Version":6,"VrfID":0,"Command":0},"Body":{}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":15,"Marker":254,"Version":6,"VrfID":0,"Command":42},"Body":{"Data":"AAAABQA="}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":25,"Marker":254,"Version":6,"VrfID":0,"Command":2},"Body":{}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":84,"Marker":254,"Version":6,"VrfID":0,"Command":0},"Body":{}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":15,"Marker":254,"Version":6,"VrfID":0,"Command":42},"Body":{"Data":"AAAAAgA="}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":25,"Marker":254,"Version":6,"VrfID":0,"Command":2},"Body":{}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":49,"Marker":254,"Version":6,"VrfID":0,"Command":2},"Body":{}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":84,"Marker":254,"Version":6,"VrfID":0,"Command":0},"Body":{}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":15,"Marker":254,"Version":6,"VrfID":0,"Command":42},"Body":{"Data":"AAAAAwA="}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":25,"Marker":254,"Version":6,"VrfID":0,"Command":2},"Body":{}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":49,"Marker":254,"Version":6,"VrfID":0,"Command":2},"Body":{}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":78,"Marker":254,"Version":6,"VrfID":0,"Command":0},"Body":{}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":15,"Marker":254,"Version":6,"VrfID":0,"Command":42},"Body":{"Data":"AAAAAQA="}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":84,"Marker":254,"Version":6,"VrfID":0,"Command":0},"Body":{}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":15,"Marker":254,"Version":6,"VrfID":0,"Command":42},"Body":{"Data":"AAAACQA="}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":49,"Marker":254,"Version":6,"VrfID":0,"Command":2},"Body":{}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":14,"Marker":254,"Version":6,"VrfID":0,"Command":118},"Body":{"Data":"AgAAAA=="}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Duration":0,"Key":"10.0.9.213","Topic":"Peer","level":"debug","msg":"IdleHoldTimer expired","time":"2024-07-04T11:16:38+03:00"}
{"Key":"10.0.9.213","Topic":"Peer","level":"debug","msg":"state changed","new":"BGP_FSM_ACTIVE","old":"BGP_FSM_IDLE","reason":{"Type":7,"BGPNotification":null,"Data":null},"time":"2024-07-04T11:16:38+03:00"}
{"Message":{"Header":{"Len":14,"Marker":254,"Version":6,"VrfID":0,"Command":118},"Body":{"Data":"AgAAAA=="}},"Topic":"Zebra","level":"debug","msg":"read message from zebra","time":"2024-07-04T11:16:38+03:00"}
{"Key":"10.0.9.213","Topic":"Peer","level":"debug","msg":"try to connect","time":"2024-07-04T11:16:45+03:00"}

At the same time, there are no routes in RIB

gobgp global rib
Network not in table

There are routes in Zebra

sh ip route connected 
Codes: K - kernel route, C - connected, L - local, S - static,
       R - RIP, O - OSPF, I - IS-IS, B - BGP, E - EIGRP, N - NHRP,
       T - Table, v - VNC, V - VNC-Direct, A - Babel, F - PBR,
       f - OpenFabric, t - Table-Direct,
       > - selected route, * - FIB route, q - queued, r - rejected, b - backup
       t - trapped, o - offload failure

C>* 10.0.9.208/28 is directly connected, eth0, 01:27:22
C>* 10.11.9.32/28 is directly connected, eth1, 01:27:22
C>* 172.18.0.0/16 is directly connected, br-de66f0637031, 01:27:22

How can I diagnose more? What could be the problem?

morhold commented 4 months ago

I have tried different versions of frr, frr-8, frr-9, frr-10. It's the same behavior everywhere. But only in debian 12 and debian11.