Hi all,
I'm having some issues with OpenBGPD across a point-to-point openvpn
link. Some quick background: we have a number of quagga based
FreeBSD machines doing BGP sessions for our redundancy and due to
some recent backstabbing by quagga, want to test out openbgpd. It
worked well in a normal setup with full tables and advertising our
networks, but we hit a snag when we attempted to do some routing over
a couple vpn links. Over the tun link, OpenBGPD connects to the peer
and advertises the networks properly, but when selecting the nexthop
for the remote side prefixes, it installs the local IP in to the
routing table. I've tested every version of OpenBGPD I could get my
hands on (and I'm currently using the latest release) and have tested
it on OpenBSD and FreeBSD (currently using FreeBSD in this example,
but I can duplicate it on OpenBSD too)
For example, our tunnel interface looks like:
tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
inet 10.8.1.248 --> 10.8.1.2 netmask 0xffffffff
Opened by PID 49178
10.8.1.2 has a number of routes I'm interested in. When I start up
openbgpd, I'll get the normal route update messages:
neighbor 10.8.1.2 (AS64820) update 10.14.112.20/32 via 10.8.1.2
neighbor 10.8.1.2 (AS64820) update 10.14.113.5/32 via 10.8.1.2
neighbor 10.8.1.2 (AS64820) update 10.14.113.4/32 via 10.8.1.2
etc
and the BGP RIB has the same info:
*> 10.14.113.1/32 10.8.1.2 100 0 64820 65400
65402 i
*> 10.14.113.2/32 10.8.1.2 100 0 64820 65400
65402 i
*> 10.14.113.4/32 10.8.1.2 100 0 64820 65400
65402 i
etc
but when I look at the routes installed in the kernel:
10.14.113.1/32 10.8.1.248 UG1 0 0 fxp0.1
10.14.113.2/32 10.8.1.248 UG1 0 0 fxp0.1
10.14.113.4/32 10.8.1.248 UG1 0 0 fxp0.1
This is a very straightforward ebgp connection, bgpd.conf is below.
This was translated from a quagga/zebra configuration which is
identical and works properly. I've also tried adding a nexthop
10.8.1.2 but the nexthop still isn't set properly. I started looking
through the openbgpd source but it quickly went over my head. Is
this a bug or a behavior that I can't find any documentation on? Any
ideas?
bgpd.conf:
gw0# cat /usr/local/etc/bgpd.conf
AS 65530
router-id 10.8.1.248
log updates
fib-update yes
network 10.12.0.0/16
neighbor 10.8.1.2 {
remote-as 64820
descr 'at-br1.sv'
}
-casey