UKNOF 16: Enhancing BGP

              · · · · ·

After a late programme committee request, I presented on “Enhancing BGP” at UKNOF 16. The presentation was intended to be an update on the current drafts in the IDR working group, and give some encouragement to operators to get involved, and contribute.

I’ll put the video up when the Tom at PortFast and Brandon of Bogons have done their excellent job on it. For the meantime, the slides are linked below.

There's also a good add-paths presentation that John Scudder and Dave Ward gave at NANOG here


Error Handling in BGP (Again!)

              · ·

It looks like, once again, there's another attribute flying around the global BGP table causing Quagga instances to crash (if based on 0.99.9 - I believe the bug is fixed in 0.99.10). This relates to the 2007 draft that introduced AS_PATHLIMIT - see ietf.org - draft-ietf-idr-as-pathlimit. This attribute is actually relatively interesting, from an operator's point of view, where control that is more granular than setting the common no-export or no-advertise communities does not suffice.


CV Update

              ·

I am currently actively interested in new opportunities due to changing circumstances with my current role. I’ve therefore uploaded a current curriculum vitae to this site.


Network Updates and Opportunities

              · ·

A quick personal post to break the silence here!

I’m currently very interested in hearing about any UK or EU-based network engineering or architecture opportunities that are out there, especially in SP networks that run MPLS with TE. If anyone has some such opportunity, or knows of something that they think might suit me – please drop me a mail to rjs@rob.sh for a copy of my CV.

An outline of my CV is available on LinkedIn.

I’m hoping to find some time to put some technical articles together that can be posted here in the near future.


LINX 65 Presentation

              · · · · · · · ·

Further to my previous post - I presented this issue at LINX65 - video and slides can be found below.

Video
Fixed Slides - LINX’s PowerPoint install seems to have corrupted my slides on the day.




Comments and feedback are most welcome.


Removing BGP from a VRF under 12.2(33)SRC2

              ·

I had a bit of a weird problem last night – when trying to remove BGP from a VRF on a 7600 running 12.2(33)SRC2, I tried:

ar01.tn5(config)#router bgp 65302
ar01.tn5(config-router)#no address-family ipv4 vrf SRC2-TEST
ar01.tn5(config-router)#exit
ar01.tn5(config)#exit

One would expect that this would stop BGP redistributing the VRF routes for the VRF SRC2-TEST. In fact, what happens is that the VRF starts reporting ‘debugging-style’ messages:

ar01.tn5#sh run vrf SRC2-TEST
Building configuration...

% Topology SRC2-TEST::VPNv4 Unicast::base is currently being deconfigured.
% Topology SRC2-TEST::VPNv4 Unicast::base is currently being deconfigured.
% Topology SRC2-TEST::VPNv4 Unicast::base is currently being deconfigured.
% BGP context has not been initialized properly.
% Topology SRC2-TEST::VPNv4 Unicast::base is currently being deconfigured.
% BGP context not been initialized properly.
% Topology SRC2-TEST::VPNv4 Unicast::base is currently being deconfigured.
% Topology SRC2-TEST::VPNv4 Unicast::base is currently being deconfigured.
Current configuration : 340 bytes
ip vrf SRC2-TEST
 description :c=CORE:x=rjs test for ar01.tn5 issues:
 rd 5413:1020
 export map EXPORT-MAP-SRC2-TEST
 route-target export 5413:1020
 route-target import 5413:1022
!
!
ip route vrf SRC2-TEST 10.0.0.0 255.255.255.0 Null0
!
router bgp 65302
 !
 address-family ipv4 vrf SRC2-TEST
  redistribute static
 exit-address-family
end

And you then can’t get rid of the BGP from the VRF. It turns out the fix for this is to remove the VRF itself – or, rather than removing the address-family itself, remove the contents of the address family. I’m not entirely sure that this is designed behaviour – and I couldn’t seem to find any further results for it. I guess it needs to be put into TAC as another Cisco weird.


Building the RIPEDB server

              · · ·

It took me a few hours over the course of this week to build the RIPE whois server for some internal projects – given that there seems to be a very limited amount of documentation for the build process, and threads on mailing lists, I’m going to post this here. I hope that it gets picked up by Google.

The first problem that is encountered is that the libtool that is included with the whois server does not support ‘modern’ tags, such as –tag=CC. This looks to be because the included libtool is somewhat dated. This can be easily fixed by using the system libtool:


Handy vim tip

              ·

I’ve been working on a number of bits of code recently, and have found that it’s not entirely practical to check into RCS or SVN for every change that I’ve made. I really like to work by committing when I’ve finished adding a feature to a script, or a project. Hence, I’ve been using the vim “set backup” option. However, this has some limitations, and hence I decided to have a look at what .vimrc could do for me.


Django

              · · ·

Since I’ve got a few moments, and I’ve decided to actually write down some rants rather than deciding that I can’t be bothered to - I’m going to use some space to single the praises of Django.

I’ve been using Django for a couple of years now - since around the autumn of 2005, and as such, feel that I’ve got a pretty good grasp of how the framework works. I haven’t really hacked around that much with the innards of Django (although I did propose a patch), however, what I really like about this framework isn’t particularly the internals, but just the whole philosophy that there seems to be in terms of building a web application.