Re: [mpls-linux-general] VPNs using MPLS-Linux/LDP-Portable
Status: Beta
Brought to you by:
jleu
From: Yon U. <uk...@rz...> - 2001-02-20 16:18:47
|
On Tue, 20 Feb 2001, Arm=E9nio Pinto wrote: > Hi there, Hi hi, > Has anyone tried to implement any kind of VPN using > MPLS-Linux/LDP-Portable packages? Thanks in advance. There is (was?) support for BGP-MPLS in zebra. For LDP you need: 1) mpls support in zebra (zebra <-> kernel interface) 2) mpls support in zebra protocol (zebra <-> daemons) 3) port ldp-portable to zebra For 1&2 you could just split Mr. Leu's mpls API (portability layer) in two, translating it to the zebra framework, mantaining the general function calls (just serializing them over the zebra protocol). For 1, you have to write some kind of mpls LIB manager, too. I have started on 3, it is a mess, doesn't do anything useful yet, as I have problems understanding ldp-portable (to be precise: I don't want to learn how ldp-portable works, need-to-know is my keyword here). So I have some cut'n'pasted code. It is quite basic, yet. I might start (paid) work soon, so I guess I'll put it up for grabs. I'll mail you. Now, you wanted VPN, if you want to emulate cisco's vpn code, you need VRF, that is: 1) different packet forwarding tables in zebra 2) a way to attach such vrf to an interface 3) a way to route routes from such vrfs to/from routing processes 1 might be easy, maybe. Look at zebra/lib/table.h and zebra/lib/rib.* (at least). I'm no zebra expert. 2 is kernel dependent, linux 2.[2|4] could do it. For linux you'll have to clean the "local" table, too, or you will have problems, and anyway, I guess there are some other details. Just abstract this into a portable api for zebra. 3 zebra internals, see 1. Extend zebra protocol? Oh, and you want different routing processes (per VPN, at least, if not per interface), which isn't trivial with zebra at the moment, though it is possible, i've been told. Afterward, mpls-linux will do all you want, no need to patch it, I guess. Disclaimer: I'm no expert at anything, this are just ideas from my "a little knowledge and curiosity" standpoint. Have fun, yon |