Hi, recently upgraded to OpenBSD/BGPD 4 and suddenly stopped getting routes from some neighbors.
This is what showed up in the logs... (IP's removed...) Nov 2 14:20:56 strange bgpd[13739]: neighbor (XO): received notification: error in OPEN message, unsupported capability Nov 2 14:20:56 strange bgpd[13739]: neighbor (XO): disabling restart capability bgpctl show fib nexthop reports the neighbor with a flag "N". While bgpctl show fib does not show any routes from the neighbor. After talking with our upstream they said they were getting errors about their refresh ability being disabled (or something along those lines). Above you see bgpd turning off restart capability ... not refresh? bug? (oh and i think they are running zebra, though not sure). So i disabled refresh (set it to 0 in alloc_peer (parse.y)), compiled and everything seemed to be nominal. (routes started coming in...) So just in case anyone else is hit by this here is a patch to allow you to initially disable it on a per neighbor option. (sorry gmail... patch breakage may occur) Sorry if this is not the real fix, but it seems to be a work around... at least for me. If this is in fact a bug with openbgpd I can provide additional info... Oh and thanks for the great product(s)!! Keep up the good work! diff -u bgpd.orig/parse.y bgpd/parse.y --- bgpd.orig/parse.y 2006-08-27 10:11:05.000000000 -0600 +++ bgpd/parse.y 2006-11-02 17:37:35.000000000 -0700 @@ -149,7 +149,7 @@ %token AS ROUTERID HOLDTIME YMIN LISTEN ON FIBUPDATE %token RDE EVALUATE IGNORE COMPARE %token GROUP NEIGHBOR NETWORK -%token REMOTEAS DESCR LOCALADDR MULTIHOP PASSIVE MAXPREFIX RESTART +%token REMOTEAS DESCR LOCALADDR MULTIHOP PASSIVE MAXPREFIX RESTART REFRESH %token ANNOUNCE DEMOTE %token ENFORCE NEIGHBORAS CAPABILITIES REFLECTOR DEPEND DOWN SOFTRECONFIG %token DUMP IN OUT @@ -935,6 +935,9 @@ else curpeer->conf.softreconfig_out = $3; } + | REFRESH yesno { + curpeer->conf.capabilities.refresh = $2; + } ; restart : /* nada */ { $$ = 0; } @@ -1635,6 +1638,7 @@ { "qualify", QUALIFY}, { "quick", QUICK}, { "rde", RDE}, + { "refresh", REFRESH}, { "reject", REJECT}, { "remote-as", REMOTEAS}, { "restart", RESTART},