Quagga is a routing software suite, providing implementations of OSPFv2, RIP v1 and v2, RIPv3 and BGPv4, OSPFv3 for Unix platforms, particularly FreeBSD, Linux, Solaris and NetBSD. Quagga is a fork of GNU Zebra which was developed by Kunihiro Ishiguro. The Quagga tree aims to build a more involved community around Quagga than the current centralised model of GNU Zebra.
The Quagga architecture consists of a core daemon:
zebra
Which acts as an abstraction layer to the underlying Unix kernel and presents the Zserv API over a Unix or TCP stream to Quagga clients. It is these Zserv clients which typically implement a routing protocol and communicate routing updates to the zebra daemon. Existing Zserv clients are:
ospfd
implementing OSPFv2
ripd
implementing RIP v1 and V2
ospf6d
implementing OSPFv3 (IPv6)
ripngd
implementing RIP v3 (IPv6)
bgpd
implementing BGPv4+ (including address family support for multicast and IPv6)
Additionally, the Quagga architecture has a rich development library to facilitate the implementation of protocol/client daemons, coherent in configuration and administrative behaviour.
Quagga daemons are each configurable via a network accessible CLI (called a 'vty'). The CLI follows a style similar to that of other routing software. There is an additional tool included with Quagga called 'vtysh', which acts as a single cohesive front-end to all the daemons, allowing one to administer nearly all aspects of the various Quagga daemons in one place.
What is new in this release:
- The primary focus of this release is a fix of a SEGV regression in ospfd, which was introduced in 0.99.19.
- It also features a series of minor improvements, including better RFC compliance in bgpd, better support of FreeBSD, and some enhancements to isisd.
What is new in version 0.99.19:
- This version provides security fixes which address assorted vulnerabilities in bgpd, ospfd, and ospf6d (CVE-2011-3323, CVE-2011-3324, CVE-2011-3325, CVE-2011-3326, and CVE-2011-3327).
What is new in version 0.99.18:
- Numerous bugs were fixed.
What is new in version 0.99.16:
- bgpd:
- use monotonic clock for time of day
- code cleanup
- compile warnings cleanup
- work around warning in assegments_parse()
- ospfd:
- fix debug messages that were masked by DISCARD_LSA
- remove unneeded memset from a very hot function
- VTY strings cleanup
- comment out unused function
- make local functions static
- enable more OSPF cost command aliases
- lib:
- fix memory logging
- make some structures constant
- move check_bit into prefix common code
- fix warning on little endian
- make match functions take const args
- remove unused function: route_dump_node()
- log source of vty connections (bug #566)
- zebra:
- change router-id selection algo
- deal with irdp compile warnings
- cleanup RIB meta queue code
- fix more warnings in rtadv
- fix more compiler warnings
- remove unused function to fix warning
- handle RTF_CLONING removal from FreeBSD 8.0
- fix argument reference in strncpy() call for BSD
- fix RIB debug message for IPv6
- make declaration const in rtm_flag_dump()
- fix router advertisements for non-Ethernet link layer addresses
- ospf6d:
- remove dead code
- fix warnings from recent prefix bit commit
- review LSA sequence number comparison
- fix LSA locking in ospf6_new_ls_id()
- other:
- ripd: fix compiler warnings
- ripngd: compiler warnings cleanup
- isisd: fix --enable-isis-topology for 64-bit Linux
- isisd: fix BPF ioctl() calls, treat "true" and "false" as reserved configure: fix spelling
- configure: fix HAVE_CLOCK_MONOTONIC spelling
What is new in version 0.99.15:
- This release fixes several bugs in the BGP and OSPF code. In particular, some notable regressions in ospfd and ospf6d were addressed. This release should be considered a 1.0.0 release candidate.
What is new in version 0.99.14:
- This release contains a regression fix for ospf6d, various small fixes and some hopefully very significant bgpd stability fixes.
- This release should be considered a 1.0.0 release candidate. Please test this release as widely as possible.
What is new in version 0.99.12:
- bgpd:
- Fix bgp ipv4/ipv6 accept handling
- [bgpd] AS4 bugfix by Chris Caputo
- [bgpd] Add 'show bgp views' command
- [bgpd] Allow accepted peers to progress even if realpeer is in Connect
- ospfd:
- [lib] Move type cast in Fletcher checksum
- [lib] Switch Fletcher checksum back to old ospfd version
- Justified OSPF cost function names and added support for:
- ospf cost A.B.C.D
- no ospf cost
- library:
- [lib] Fix timer precision.
- [lib] fix missing sockunion_normalise_mapped
- vtysh:
- [vtysh] Add commands from zebra_routemap.c to vtysh
- misc:
- [build] tools/multiple-bgpd.sh should be in 'make dist'
What is new in version 0.99.11:
- This release was intentionally prepared as a release candidate with most regressions addressed.
- Users of all 0.99.x and 0.98.x branches are advised to upgrade to 0.99.11, so the next stable branch can be started as early as possible.
- Particular changes include initial bgpd TCP-MD5 support (only for IPv4 at the moment), crash fixes in bgpd, another RIB-FIB syncing attempt in the zebra daemon, and an OpenSolaris SFW update.
Comments not found