[quagga-dev 4577] Re: Quagga 'client'?

Paul Jakma paul at clubi.ie
Wed Feb 7 19:49:00 GMT 2007


Hi Daniel,

On Wed, 7 Feb 2007, Daniel Ng wrote:

> Hi,
>
> I would like to develop an application that interfaces with the 
> various Quagga daemons to do things such as:
>
> -query the Zebra daemon's routing table
> -disable/enable ospf
> -add static routes
>
> Would you recommend that I design the app so that it interfaces 
> with the VTY servers ie. the app will have to do a lot of text 
> processing of telnet prompts and responses?

No, that seems horrible :). Ideally, any project such as the one you 
envisage would eventually allow the VTY layer to be /removed/ from 
the protocol daemons, shifted instead to a dedicated "telnet 
interface server". It should also be able to accomodate other UI 
styles.

> Or should I extend the Zebra protocol to have new packet types such 
> as a 'Query Routing Table Command' and 'Query Routing Table 
> Response'?

Yes.

I actually have a really quick prototype somewhere for a 'quagga' 
type CLI tool. It only uses the standard Zserv commands at the moment 
(so can only retrieve/monitor interface/route state from zebra).

See the 'quagga-tool' branch in:

   http://cvs.quagga.net/cgi-bin/gitweb.cgi?p=people/paul/quagga

E.g.:


  http://cvs.quagga.net/cgi-bin/gitweb.cgi?p=people/paul/quagga;a=blob;h=32c1fbd8267a4be748d10f8b88a3cf22fcb58fd6;hb=24def9c81d53a65166149ee6ad2c356849537e62;f=tools/quagga.c

Note that it supports a new Zserv message to act as 'End of Command' 
delimiter, ZEBRA_COMMAND_COMPLETE. Which I don't appear to have 
commited to that tree. I'll try dig that up.

Also, any CLI tool should endeavour to try follow the excellent 
CLIP specification, see:

http://www.opensolaris.org/os/community/arc/caselog/2006/062/spec-clip-html/

regards,
-- 
Paul Jakma	paul at clubi.ie	paul at jakma.org	Key ID: 64A2FF6A
Fortune:
Those who can, do; those who can't, simulate.



More information about the Quagga-dev mailing list