Contents
Quagga
Quagga is an open source GPL licensed IPv4/IPv6 routing software, originally forked off of the zebra project.
The supported routing protocols are
- RIPv1
- RIPv2
- RIPng
- OSPFv2
- OSPFv3
- BGP-4
- BGP-4+
- ISIS
Quagga also supports special BGP Route Reflector and Route Server behavior. With SNMP daemon which supports SMUX protocol, Quagga provides routing protocol MIBs. IPv6 routing is fully supported in RIPng, OSPFv3 and BGP-4+.
IPv6 router advertisement
One can enable IPv6 router and prefix advertisements on a given interface:
interface eth0 ! do not suppress IPv6 router advertisements no ipv6 nd suppress-ra ! include IPv6 prefix in router advertisements ipv6 nd prefix dead:beef::/64
RIPng
RIPng which is an IPv6-enabled RIP protocol is supported according to RFC 2080 in the ripngd daemon. Here follows a sample configuration (/etc/quagga/ripngd.conf):
! enable ripng router ripng ! Set RIPng enabled interface by name network sit1 ! Set RIPng static routing announcemenet to the enabled interface(s) route dead:beef::/64 ! Set an access-list on routing announcements (in or out) to a given interface distribute-list local-only out sit1
OSPFv3
The ospf6d daemon supports OSPF version 3 (RFC 2740) for IPv6 network. A sample configuration (/etc/quagga/ospf6d.conf):
! enable ospfv3 (ospf6!) routing router ospf6 ! set unique router id router-id 255.1.1.1 ! bind interface to specific area interface eth0 area 0.0.0.0 interface eth1 area 0.0.0.0 ! redistribute route static/connected/ripng/kernel route redistribute kernel ! interface specific OSPFv3 settings interface eth0 ! set cost manually ipv6 ospf6 cost 100
VTY access
Quagga supports access to the routing daemons via virtual teletype (VTY) interfaces. To enable a VTY interface for a daemon one must set the password for the VTY (in the example in /etc/quagga/ospf6d.conf):
! hostname to display at the prompt hostname ospf6d ! password password secret ! admin password enable password very-secret
Please note, the IPv4 routing daemons can be reached at the IPv4 loopback interface address while the IPv6 routing daemons at the IPv6 loopback interface address:
% telnet ::1 ospf6d Trying ::1... Connected to ::1. Escape character is '^]'. Hello, this is Quagga (version 0.99.2). Copyright 1996-2005 Kunihiro Ishiguro, et al. User Access Verification Password: <type 'secret'> ospf6d> enable Password: <type 'very-secret'> ospf6d#