Quagga est le successeur de Zebra, et fonctionne avec un noyau 2.6 (je n'ai pas testé avec un noyau 2.4). Dans le cas où Quagga n'est pas disponible, Zebra peut parfaitemant être utilisé.

Guagga installe des démons qui peuvent ensuite être paramétrés en live, via un accès en telnet sur des ports particuliers. On accède alors à une interface en ligne de commande, à la manière des routeurs cisco.


Procédure d'installation :

Après une installation habituelle (apt-get...), les fichiers de conf sont créés dans /etc/quagga, le paramétrage initial se déroule en 3 temps :

1. Fichier de conf général : /etc/quagga/daemons. "xxx=yes" pour activer les démons qui doivent être lancés au démarrage. Dans un premier temps, on se contente de :

    zebra=yes
    ripd=yes

2. Fichiers de conf propres à chaque démon (1 fichier par démon -> zebra.conf et ripd.conf). Ces fichiers ne sont pas forcément créés par la procédure d'install. Ils doivent alors être créés à la mano. Ils sont nécessaire au premier démarrage des démons, et permettent de fixer les mots de passe d'accès en telnet à chaque démon.

/etc/quagga/zebra.conf :

    hostname zebra
    password zebra
    enable password zebra

/etc/quagga/ripd.conf :

    hostname ripd
    password ripd
    enable password ripd

3. Configurer rip : en direct, via telnet

    telnet localhost 2602
    -> entrer le mot de passe paramétré dans /etc/quagga/ripd.conf
    ripd> en
    -> entrer le second mot de passe paramétré dans /etc/quagga/ripd.conf
    ripd# conf t
    ripd(config)# router rip
    ripd(config-router)# version 2
    ripd(config-router)# redistribute connected
    ripd(config-router)# network @ip/masque
    ripd(config-router)# end
    ripd# write

La première commande en est le raccourci de enable, elle sert a passer en mode "super-utilisateur" de façon à pouvoir configurer le routeur.

Conf t : mode configuration terminal

Ensuite on indique au routeur le type de routage à effectuer, dans notre cas rip.

Nous allons maintenant pouvoir configurer rip à proprement parler. La première commande en mode config-router indique que nous allons utiliser la version 2 du protocole rip.

Redistribute connected indique que le routeur doit envoyer aux autres routeurs les routes qui utilisent les interfaces qui lui sont directement connectées (autres modes disponibles : redistribute kernel et redistribute static)

Network @ip/masque indique le (ou les) réseaux sur lesquels on doit envoyer les routes. On peut mettre 10.0.0.0/8 pour englober tous les réseaux vpn tun/tap (par convention, les vpn sont créés en 10.x.0.1), ou rentrer les différents vpn un par un.

Plutôt que d'indiquer les réseaux, on peut spécifier les interfaces sur lesquelles les trames rip doivent être envoyées. Par exemple "network tun0", "network tun1"...

Enfin on quitte le mode config (end) et on sauvegarde la configuration (write)

Et pour finir, /etc/init.d/quagga restart ... et ça ripe !


Pour tout savoir sur Quagga : http://www.quagga.net/docs/docs-info.php#SEC36