I believe IXP Manager has the pieces in place to work with non-BIRD route servers, but not having implemented an alternative, I can't be confident they're complete. However, a lot of IXP Manager is based on customizable templates, so I would be surprised if it didn't work here too.
Thanks for the referral to ARouteServer. It has a lot of features and could be quite useful. It doesn't quite replace IXP Manager doing it natively, but it certainly advances me to my end goal. ----- Mike Hammett Intelligent Computing Solutions Midwest Internet Exchange The Brothers WISP ----- Original Message ----- From: "Stuart Henderson" <s...@spacehopper.org> To: misc@openbsd.org Sent: Thursday, October 19, 2017 6:19:55 AM Subject: Re: OpenBGPd Templates for IXP Manager On 2017-10-16, Mike Hammett <openbsd-m...@ics-il.net> wrote: > Here's a quick summary for those outside of the IX community. > > OpenBGPd used to be the spine of the IX route server community. Once IXes > like AMS-IX and DE-CIX ran into scaling issues with the number of prefix > filters, a ton of IXes moved with them over to BIRD. Most IXes will never see > the scale that the previously mentioned do. This was around the 2012 > time-frame. Also around the 2012 time-frame INEX released v3 of IXP Manager, > which took off among IXes. It automated many aspects of the IX. > > Despite IXP Manager being fairly open and templated, INEX uses BIRD and > therefore only produces BIRD templates. We went OpenBGPd on OpenBSD for our > IXes due to OpenBSD's reputation for stability and security. Things have been > manual thus far. > > We started a new IX earlier this year, which took advantage of the about to > be released IXP Manager v4. Still only BIRD templates, however Barry > O'Donovan (of INEX) mentioned that Peter Hessler had expressed interest in > working on OpenBGPd templates for IXP Manager. I had reached out to him, but > he's a busy guy and hasn't been able to follow up much. > > I figured with OpenBGPd largely resolving the prefix filter performance > issues that getting templates for IXP Manager would allow IXes to find some > parity in OpenBGPd with BIRD and hopefully win back market share. However, > I'm not a programmer. I Google for what others have done and mash it > together, at least sometimes successfully. I attempted to forge through the > IXP Manager BIRD templates to convert them myself, but once I got to the meat > and potatoes of the config, I was in way over my head. There's PHP logic, > some template system logic, BIRD logic and no understanding from me. > > I came here hoping to come across someone with more time than Peter who can > help me out with this. > > > https://www.inex.ie/pipermail/ixpmanager/2017-January/000905.html > http://ixp-manager.readthedocs.io/en/latest/features/router-configuration.html > > http://ixp-manager.readthedocs.io/en/latest/features/looking-glass.html > https://github.com/inex/IXP-Manager/tree/17b5d36a57f40569c0da4fbb8e4f666d5e62921c/resources/views/api/v4/router > > https://github.com/inex/IXP-Manager/tree/50c3781711ed38e773f86a8f3017d669d18e464d/resources/skins/inex/api/v4/router > I'm unlikely to have any more time than phessler to look at it, but my 2c: there are two separate parts to this work. One is supporting openbgpd in templates, the other is changing things so that IXP Manager has framework in place to work with _any_ non-BIRD daemon. If you don't care about supporting BIRD as well initially, it might be simpler to hack on the existing BIRD templates/scripts (there are some parts in /tools/runtime as well) so they work with openbgpd instead. This makes the task a bit easier than supporting both, and upstream probably have ideas about how to do that integration anyway (but there's not much point in them doing that unless there's some code existing for a non-BIRD route server to make it worthwhile). The following isn't going to help directly with IXP Manager changes (and obviously IXP Manager has a much wider scope than just being a route daemon config generator), but might be of interest to the same people who read this - there's another IXP config generator that *does* handle both BIRD and openbgpd: https://arouteserver.readthedocs.io/