<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://doc.ycharbi.fr/index.php?action=history&amp;feed=atom&amp;title=Frr</id>
	<title>Frr - Historique des versions</title>
	<link rel="self" type="application/atom+xml" href="https://doc.ycharbi.fr/index.php?action=history&amp;feed=atom&amp;title=Frr"/>
	<link rel="alternate" type="text/html" href="https://doc.ycharbi.fr/index.php?title=Frr&amp;action=history"/>
	<updated>2026-06-10T00:38:48Z</updated>
	<subtitle>Historique des versions pour cette page sur le wiki</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://doc.ycharbi.fr/index.php?title=Frr&amp;diff=1420&amp;oldid=prev</id>
		<title>Ycharbi : Page créée avec « Category:routage_dynamique  [https://frrouting.org/ Free Range Routing] ou &#039;&#039;FRR&#039;&#039; est une bifurcation de Quagga. Il implémente donc, tout en suivant la même logique, divers protocoles de routages dynamiques et de gestion réseau dont : * BGP * OSPF * RIP / RIPNG * IS-IS * PIM * LDP * BFD * Babel * PBR * OpenFabric * VRRP * EIGRP * NHRP  Fidèle a ses origines, le logiciels s’appuie sur un démon central nommé &lt;syntaxhighlight lang=&quot;bash&quot; inline&gt;zebra&lt;/s... »</title>
		<link rel="alternate" type="text/html" href="https://doc.ycharbi.fr/index.php?title=Frr&amp;diff=1420&amp;oldid=prev"/>
		<updated>2023-02-09T17:52:09Z</updated>

		<summary type="html">&lt;p&gt;Page créée avec « &lt;a href=&quot;/index.php/Cat%C3%A9gorie:Routage_dynamique&quot; title=&quot;Catégorie:Routage dynamique&quot;&gt;Category:routage_dynamique&lt;/a&gt;  [https://frrouting.org/ Free Range Routing] ou &amp;#039;&amp;#039;FRR&amp;#039;&amp;#039; est une bifurcation de &lt;a href=&quot;/index.php/Quagga&quot; title=&quot;Quagga&quot;&gt;Quagga&lt;/a&gt;. Il implémente donc, tout en suivant la même logique, divers protocoles de routages dynamiques et de gestion réseau dont : * BGP * OSPF * RIP / RIPNG * IS-IS * PIM * LDP * BFD * Babel * PBR * OpenFabric * VRRP * EIGRP * NHRP  Fidèle a ses origines, le logiciels s’appuie sur un démon central nommé &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; inline&amp;gt;zebra&amp;lt;/s... »&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nouvelle page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Category:routage_dynamique]]&lt;br /&gt;
&lt;br /&gt;
[https://frrouting.org/ Free Range Routing] ou &amp;#039;&amp;#039;FRR&amp;#039;&amp;#039; est une bifurcation de [[Quagga]]. Il implémente donc, tout en suivant la même logique, divers protocoles de routages dynamiques et de gestion réseau dont :&lt;br /&gt;
* BGP&lt;br /&gt;
* OSPF&lt;br /&gt;
* RIP / RIPNG&lt;br /&gt;
* IS-IS&lt;br /&gt;
* PIM&lt;br /&gt;
* LDP&lt;br /&gt;
* BFD&lt;br /&gt;
* Babel&lt;br /&gt;
* PBR&lt;br /&gt;
* OpenFabric&lt;br /&gt;
* VRRP&lt;br /&gt;
* EIGRP&lt;br /&gt;
* NHRP&lt;br /&gt;
&lt;br /&gt;
Fidèle a ses origines, le logiciels s’appuie sur un démon central nommé &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; inline&amp;gt;zebra&amp;lt;/syntaxhighlight&amp;gt; (du nom du premier logiciel à l&amp;#039;origine de toutes les bifurcations dont &amp;#039;&amp;#039;Quagga&amp;#039;&amp;#039;, &amp;#039;&amp;#039;Cumulus Quagga&amp;#039;&amp;#039; et &amp;#039;&amp;#039;FRR&amp;#039;&amp;#039;) qui s&amp;#039;interface entre le système d&amp;#039;exploitation et les démons de routages. Chaque protocole est implémenté dans un démon spécifique situé dans &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; inline&amp;gt;/usr/lib/frr/&amp;lt;/syntaxhighlight&amp;gt; qu&amp;#039;il convient d&amp;#039;activer manuellement via le fichier de configuration &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; inline&amp;gt;/etc/frr/daemons&amp;lt;/syntaxhighlight&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Leur socket de communication interne sont décrits [http://docs.frrouting.org/en/latest/setup.html#services ici].&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
&amp;#039;&amp;#039;FRR&amp;#039;&amp;#039; a remplacé &amp;#039;&amp;#039;Quagga&amp;#039;&amp;#039; dans &amp;#039;&amp;#039;Debian Stable&amp;#039;&amp;#039; depuis la version 11 de cette dernière. Il est donc présent dans les dépôts officiels&lt;br /&gt;
 apt install --no-install-recommends frr&lt;br /&gt;
&lt;br /&gt;
=Configuration=&lt;br /&gt;
Il n&amp;#039;est plus nécessaire d&amp;#039;utiliser un fichier de configuration par démon. Cette philosophie, jugée peu efficace par les développeurs, a laissée place à un unique fichier (&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; inline&amp;gt;/etc/frr/frr.conf&amp;lt;/syntaxhighlight&amp;gt;) comme sur [[Ios - cisco|Cisco IOS]] dont il reprend la syntaxe.&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, il faut activer les démons de routage pour les protocoles souhaités en passant à &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; inline&amp;gt;yes&amp;lt;/syntaxhighlight&amp;gt; les clés correspondantes dans &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; inline&amp;gt;/etc/frr/daemons&amp;lt;/syntaxhighlight&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vous pouvez utiliser la commande suivante pour le faire sans éditeur de texte&lt;br /&gt;
 DEMON=&amp;quot;bgpd&amp;quot; sed -i &amp;quot;s/${DEMON}=no/${DEMON}=yes/&amp;quot; /etc/frr/daemons&lt;br /&gt;
&lt;br /&gt;
Redémarrer le service pour prendre en compte la modification&lt;br /&gt;
 systemctl restart frr.service&lt;br /&gt;
&lt;br /&gt;
Vous constaterez avec un &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; inline&amp;gt;ss -ltn&amp;lt;/syntaxhighlight&amp;gt; que les sockets des démons choisis ont étés créés (plus celui de &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; inline&amp;gt;zebra&amp;lt;/syntaxhighlight&amp;gt;, indispensable au fonctionnement de la solution). Les sockets ouvrants les ports des protocoles se créeront à la configuration de chacun d&amp;#039;eux.&lt;br /&gt;
&lt;br /&gt;
Afin de configurer ces protocoles, &amp;#039;&amp;#039;FRR&amp;#039;&amp;#039; propose deux solutions. Il est alors possible d&amp;#039;éditer directement le fichier de configuration principal comme avec n&amp;#039;importe quel programme ou alors d&amp;#039;utiliser le &amp;#039;&amp;#039;shell&amp;#039;&amp;#039; de connexion &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; inline&amp;gt;vtysh&amp;lt;/syntaxhighlight&amp;gt;. Dans le premier cas, une vérification syntaxique pourra être effectuée avec la commande &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; inline&amp;gt;vtysh -C&amp;lt;/syntaxhighlight&amp;gt;, dans le second, le &amp;#039;&amp;#039;shell&amp;#039;&amp;#039; informe de toute erreur en temps réel et propose une auto-completion (ne pas oublier un &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; inline&amp;gt;wr&amp;lt;/syntaxhighlight&amp;gt; pour écrire les modification en dur). Dans les deux cas, le programme se réfèrera à &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; inline&amp;gt;/etc/frr/frr.conf&amp;lt;/syntaxhighlight&amp;gt; pour fonctionner.&lt;br /&gt;
&lt;br /&gt;
==BGP==&lt;br /&gt;
Dans la mesure où &amp;#039;&amp;#039;FRR&amp;#039;&amp;#039; reprend la syntaxe  de [[Bgp - cisco|Cisco IOS]], cette section ne sera pas détaillée. Il y a cependant un delta de taille à prendre compte : le programme suit la [https://www.rfc-editor.org/rfc/rfc8212 RFC 8212] à la lettre et impose d&amp;#039;appliquer une politique d&amp;#039;importation et d&amp;#039;exportation à l&amp;#039;annonce des routes, sans quoi aucune action n&amp;#039;est exécuté par le démon. Dans la mesure où aucun exemple n&amp;#039;est fournis pour programmer ces fameuses politiques dans la [https://docs.frrouting.org/en/latest/bgp.html?highlight=soft-reconfiguration#clicmd-bgp-ebgp-requires-policy documentation] officielle (comme c&amp;#039;est malheureusement systématiquement le cas avec les documentations officielles...)  et où cette notion ne pose strictement aucun problème sur &amp;#039;&amp;#039;IOS&amp;#039;&amp;#039; depuis 30 ans, nous allons simplement désactiver cette merde inutile afin de pouvoir utiliser notre programme (la meilleurs des sécurité étant d&amp;#039;éteindre définitivement la machine - rappel aux développeurs qui font chier les administrateurs...) avec la commande &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; inline&amp;gt;no bgp ebgp-requires-policy&amp;lt;/syntaxhighlight&amp;gt; (nécessite un redémarrage du service).&lt;br /&gt;
&lt;br /&gt;
Voici une configuration complète :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ip router-id 10.0.0.1&lt;br /&gt;
!&lt;br /&gt;
router bgp 64999&lt;br /&gt;
 no bgp ebgp-requires-policy&lt;br /&gt;
 neighbor 10.0.0.2 remote-as 65000&lt;br /&gt;
 !&lt;br /&gt;
 address-family ipv4 unicast&lt;br /&gt;
  network 10.0.0.0/30&lt;br /&gt;
  network 172.16.0.0/30&lt;br /&gt;
 exit-address-family&lt;br /&gt;
exit&lt;br /&gt;
!&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ycharbi</name></author>
	</entry>
</feed>