A PCRE internal error occured. This might be caused by a faulty plugin
 


====== QUAGGA ======

===== Objectifs =====

Nous avons utilisé jusqu'ici les équipements Cisco, dans la suite du document nous vous proposons de découvrir une solution de routage logicielle appelée Quagga.

Avantages :

Logiciel libre.
Plateforme supportée : gnu/Linux, FreeBSD, NetBSD, OpenBSD, Mac OSX.
L'un de ses intérêts est de proposer des commandes très proches des commande Cisco.
Quagga supporte les protocoles : IPv4, IPv6
Quagga supporte les protocoles de routage : RIPv1, RIPv2, RIPng, OSPFv2, OSPFv3, IS-IS, BGP-4, and BGP-4.
Quagga offre de nombreuses fonctionnalités de filtrage très flexibles.

Nous mettrons en situation cette solution dans deux cas pratiques :

Routage statique.
Routage dynamique avec RIP.

===== Topologie =====

==== Plan d’adressage =====

{{:cours:activite2:quagga.png|}}

==== Configuration ====


R1, R2, R3 :
Routeurs Quagga
OS : Debian 7.1
RAM : 128 Mo
CPU : 1
DD : 3 Go

S1, S2, S3 :
Machine clientes
OS : Debian 7.1
RAM : 128 Mo
CPU : 1
DD : 3 Go

===== Installation =====

⇒ Installer une machine Debian sans interface graphique avec les caractéristiques proposées.
⇒ Installer les paquets suivants : ssh, tcpdump et quagga
Configuration
Quagga

⇒ Créer les fichiers suivants :
<code=bash>
#nano /etc/quagga/zebra.conf
#nano /etc/quagga/ripd.conf
</code>
⇒ Modifier le fichier /etc/quagga/deamon, en mettant à yes les champs suivants :
<code=bash>
zebra=yes
ripd=yes
</code>
Configuration de VTYSH

⇒ Copier et Modifier le fichier /etc/quagga/vtysh.conf :
<code=bash>
#cp /usr/share/doc/quagga/examlples/vtysh.conf.sample /etc/quagga/vtysh.conf
</code>
<note><code=bash>! service intergrated-vtysh-config
hostname Rx
username root nopassword</code></note>

Remplacer Rx avec le nom du routeur : R1, R2 ou R3

⇒ Positionner les droits sur les fichiers :
<code=bash>
# chown quagga:quaggavty /etc/quagga/*.conf
# chmod 640 /etc/quagga/*.conf
</code>
⇒ Configurer l'environnement :
<code=bash>
# echo VTYSH_PAGER=more > /etc/environement
</code>
<note>Sous DEBIAN; il faut aussi modifier le bash.bashrc en exportant cette variable : export VTYSH_PAGER=more
</note>

===== Configuration des interfaces réseaux =====

⇒ En vous basant sur la topologie, entrer la configuration des interfaces réseau dans le fichier /etc/network/interfaces.

===== Transformer la machine en routeur =====

<code=bash>
#echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
</code>

===== Test et création des clones =====

⇒ Démarrer le service quagga :

<code=bash>
# service quagga start
root@quagga1:~# service quagga start
Loading capability module if not yet done.
Starting Quagga daemons (prio:10): zebra ripd.
Starting Quagga monitor daemon: watchquagga.
</code>

⇒ Faire un test :

<code=bash>
root@quagga1:~# vtysh

Hello, this is Quagga (version 0.99.22.4).
Copyright 1996-2005 Kunihiro Ishiguro, et al.

quagga1#
</code>

<code=bash>
quagga1# show ip route
Codes: K - kernel route, C - connected, S - static, R - RIP,
O - OSPF, I - IS-IS, B - BGP, A - Babel,
> - selected route, * - FIB route

C>* 100.0.0.0/8 is directly connected, eth1
R>* 101.0.0.0/8 [120/2] via 102.0.0.2, eth2, 00:02:20
C>* 102.0.0.0/8 is directly connected, eth2
C>* 127.0.0.0/8 is directly connected, lo
C>* 192.168.1.0/24 is directly connected, eth0
R>* 192.168.2.0/24 [120/3] via 102.0.0.2, eth2, 00:02:20
R>* 192.168.3.0/24 [120/2] via 102.0.0.2, eth2, 00:02:20
</code>

votre sortie sera différente.

⇒ Arrêter le routeur modèle R1.
⇒ Cloner deux autres machines, R2 et R3 depuis le routeur modèle.

<note warning>3 fichiers sont a modifier /etc/hosts, /etc/hostname et /etc/quagga/vtysh.conf</note>
⇒ Démarrer les routeur R2 et R3.
⇒ Configurer les routeur R2 et R3 selon la topologie.


⇒Détails des fichiers /etc/network/interfaces

==== R1 ====

auto eth0
iface eth0 inet static
address 192.168.1.254
netmask 255.255.255.0

auto eth1
iface eth1 inet static
address 100.0.0.1
netmask 255.0.0.0

auto eth2
iface eth2 inet static
address 102.0.0.1
netmask 255.0.0.0

==== R2 ====


auto eth0
iface eth0 inet static
address 192.168.2.254
netmask 255.255.255.0

auto eth1
iface eth1 inet static
address 100.0.0.2
netmask 255.0.0.0

auto eth2
iface eth2 inet static
address 101.0.0.1
netmask 255.0.0.0

==== R3 ====

auto eth0
iface eth0 inet static
address 192.168.3.254
netmask 255.255.255.0

auto eth1
iface eth1 inet static
address 101.0.0.2
netmask 255.0.0.0

auto eth2
iface eth2 inet static
address 102.0.0.2
netmask 255.0.0.0





===== Préparation des machines clientes : S1, S2 et S3 =====

==== Installation ====

⇒ Installer une machine Debian sans interface graphique avec les caractéristiques proposées.
⇒ Installer le paquet suivant : ssh
Configuration
Configuration des interfaces réseaux

En vous basant sur la topologie et pour chaque machine :

⇒ Entrer la configuration de l'interface réseau dans le fichier /etc/network/interfaces.

⇒ Configurer la routes par défaut.

==== Route Statique ====

=== R1 ===

R1(config)# ip route 192.168.2.0 255.255.255.0 100.0.0.2
R1(config)# ip route 192.168.3.0 255.255.255.0 102.0.0.2

=== R2 ===

R2(config)# ip route 192.168.1.0 255.255.255.0 100.0.0.1
R2(config)# ip route 192.168.3.0 255.255.255.0 101.0.0.2

=== R3 ===

R3(config)# ip route 192.168.2.0 255.255.255.0 101.0.0.1
R3(config)# ip route 192.168.1.0 255.255.255.0 102.0.0.1


==== RIP ====

<note warning>Effacer les routes statiques</note>

=== R1 ===

conf t
router rip
network 192.168.1.0/24
network 100.0.0.0/8
network 102.0.0.0/8
passive-interface eth0

=== R2 ===

conf t
router rip
network 192.168.2.0/24
network 100.0.0.0/8
network 101.0.0.0/8
passive-interface eth0

=== R3 ===

conf t
router rip
network 192.168.2.0/24
network 101.0.0.0/8
network 102.0.0.0/8
passive-interface eth0

===== Intégration d'une quatrième interface INTERNET =====

==== Topologie ====

{{:cours:activite2:quagga_1.png|}}

==== Installation ====

⇒ modifier /etc/network/interfaces pour faire correspondre la topologie

⇒ Mettre en place la translation d’adressage

<code=bash>
iptables -t nat -A POSTROUTING -o eth3 -j MASQUERADE
</code>

⇒ Vérifiez la bonne prise en compte de la règle par :

<code=bash>
iptables -t nat -L
</code>

⇒ Activer la translation d’adresses (NAT) au démarrage :

⇒ Inscrivez la ligne suivante juste avant exit 0 mais après la ligne concernant le routage dans le fichier /etc/rc.local :

<code=bash>
/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
</code>

⇒ Relancez votre système et vérifiez à nouveau l’existence de la règle NAT à l’aide de la commande vue plus haut.

==== Détails running-config ====

=== R1 ===

!
hostname R1
!
debug rip packet
!
interface eth0
ipv6 nd suppress-ra
!
interface eth1
ipv6 nd suppress-ra
!
interface eth2
ipv6 nd suppress-ra
!
interface eth3
ipv6 nd suppress-ra
!
interface lo
!
router rip
version 2
redistribute kernel
network 100.0.0.0/8
network 102.0.0.0/8
network 192.168.1.0/24
network 192.168.254.0/24
passive-interface eth0
!
ip forwarding
!
line vty
!
end

=== R2 ===

hostname R2
!
interface eth0
ipv6 nd suppress-ra
!
interface eth1
ipv6 nd suppress-ra
!
interface eth2
ipv6 nd suppress-ra
!
interface lo
!
router rip
version 2
network 100.0.0.0/8
network 101.0.0.0/8
network 192.168.2.0/24
passive-interface eth0
!
ip forwarding
!
line vty
!
end

=== R3 ===

!
hostname R3
!
interface eth0
ipv6 nd suppress-ra
!
interface eth1
ipv6 nd suppress-ra
!
interface eth2
ipv6 nd suppress-ra
!
interface lo
!
router rip
version 2
network 101.0.0.0/8
network 102.0.0.0/8
network 192.168.3.0/24
passive-interface eth0
!
ip forwarding
!
line vty
!
end

 
cours/activite2/quagga.txt · Dernière modification: 2019/05/11 14:35 (modification externe)     Haut de page