<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Blog sur les technologies réseau et sécurité &#187; dynagen</title>
	<atom:link href="http://bmigette.fr/tag/dynagen/feed/" rel="self" type="application/rss+xml" />
	<link>http://bmigette.fr</link>
	<description>Blog de Bastien Migette sur les technologies réseau et sécurité, particulièrement cisco.</description>
	<lastBuildDate>Mon, 21 Nov 2011 22:12:51 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Virtualisation d&#8217;hôtes</title>
		<link>http://bmigette.fr/2009/01/07/virtualisation-dhotes/</link>
		<comments>http://bmigette.fr/2009/01/07/virtualisation-dhotes/#comments</comments>
		<pubDate>Wed, 07 Jan 2009 19:58:39 +0000</pubDate>
		<dc:creator>Bastien Migette</dc:creator>
				<category><![CDATA[astuces]]></category>
		<category><![CDATA[Divers]]></category>
		<category><![CDATA[Emulation/simulation routeurs/firewalls/switchs...]]></category>
		<category><![CDATA[Non classé]]></category>
		<category><![CDATA[dynagen]]></category>
		<category><![CDATA[dynamips]]></category>
		<category><![CDATA[netkit]]></category>
		<category><![CDATA[vpcs]]></category>

		<guid isPermaLink="false">http://bmigette.fr/2009/01/07/virtualisation-dhost/</guid>
		<description><![CDATA[Ceux qui ont travaillé avec dynamips/dynagen, savent qu&#8217;il n&#8217;est pas forcément aisé de simuler des points d&#8217;extrêmité. Si vous n&#8217;avez besoin de faire que des test basique, par exemple ping/arp/traceroute&#8230; Voici un petit outil assez pratique, disponible sous linux, windows et macos. http://wiki.freecode.com.cn/doku.php?id=wiki:vpcs Si vous souhaitez avoir plus de fonction, vous pouvez toujours utiliser VMWare [...]]]></description>
			<content:encoded><![CDATA[<p>Ceux qui ont travaillé avec dynamips/dynagen, savent qu&#8217;il n&#8217;est pas forcément aisé de simuler des points d&#8217;extrêmité. Si vous n&#8217;avez besoin de faire que des test basique, par exemple ping/arp/traceroute&#8230; Voici un petit outil assez pratique, disponible sous linux, windows et macos.<br />
<a href="http://wiki.freecode.com.cn/doku.php?id=wiki:vpcs" target="_blank">http://wiki.freecode.com.cn/doku.php?id=wiki:vpcs</a><br />
Si vous souhaitez avoir plus de fonction, vous pouvez toujours utiliser VMWare et bridger vos interfaces sur des loopback, ou alors, sous linux, on peut aussi utiliser netkit sous linux et des interfaces tap:<br />
<a href="http://wiki.netkit.org/index.php/Labs_Official" target="_blank">http://wiki.netkit.org/index.php/Labs_Official</a><br />
<a href="http://forum.ciscoblog.com/index.php?topic=84.0" target="_blank">http://forum.ciscoblog.com/index.php?topic=84.0</a></p>
<p>Note:  Les liens sont en anglais&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://bmigette.fr/2009/01/07/virtualisation-dhotes/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>MPLS, VRFs, BGP pour s&#8217;ammuser</title>
		<link>http://bmigette.fr/2008/12/10/mpls-vrfs-bgp-pour-sammuser/</link>
		<comments>http://bmigette.fr/2008/12/10/mpls-vrfs-bgp-pour-sammuser/#comments</comments>
		<pubDate>Wed, 10 Dec 2008 16:33:43 +0000</pubDate>
		<dc:creator>Bastien Migette</dc:creator>
				<category><![CDATA[Réseau Avancé]]></category>
		<category><![CDATA[BGP]]></category>
		<category><![CDATA[dynagen]]></category>
		<category><![CDATA[MP-BGP]]></category>
		<category><![CDATA[MPLS]]></category>
		<category><![CDATA[VPN]]></category>
		<category><![CDATA[VRF]]></category>
		<category><![CDATA[VRFS]]></category>

		<guid isPermaLink="false">http://bmigette.fr/?p=90</guid>
		<description><![CDATA[[caption id="attachment_93" align="aligncenter" width="500" caption="Topologie du lab"]<a href="http://bmigette.fr/wp-content/uploads/2008/12/mpls.png"><img class="size-full wp-image-93" title="mpls" src="http://bmigette.fr/wp-content/uploads/2008/12/mpls.png" alt="Topologie du lab" width="500" height="595" /></a>[/caption]
Nous allons voir comment monter une petite topologie avec des VRFs, du BGP, et le tout sur un réseau MPLS.]]></description>
			<content:encoded><![CDATA[<div id="attachment_93" class="wp-caption aligncenter" style="width: 510px"><a href="http://bmigette.fr/wp-content/uploads/2008/12/mpls.png"><img class="size-full wp-image-93" title="mpls" src="http://bmigette.fr/wp-content/uploads/2008/12/mpls.png" alt="Topologie du lab" width="500" height="595" /></a><p class="wp-caption-text">Topologie du lab</p></div>
<p>Nous allons voir comment monter une petite topologie avec des VRFs, du BGP, et le tout sur un réseau MPLS.<span id="more-90"></span><br />
Pour les PC Client, j’ai utilisé deux loopback sur ma machine (il faudra donc penser à modifier sur votre PC)</p>
<h2><a href="http://bmigette.fr/files/MPLS.zip">Télécharger le fichier dynagen et les configurations</a></h2>
<p>Voici la topologie dynagen utilisée:</p>
<pre>ghostios   = True
sparsemem  = True
#workingdir = c:temp

[localhost]

    [[3660]]
        image = ..imagesC3660-JK.BIN
        ram = 128
        idlepc = 0x604eb02c
    [[7200]]
        image = ..imagesC7200-AD.BIN
        ram = 160
        npe = npe-400
        idlepc= 0x62b4aa30

    [[ROUTER CORE]]
        model=7200
        F0/0=PE1 F0/0
        F0/1=PE2 F0/0

    [[ROUTER PE1]]
        model = 3660
        F0/1 = CE1 F0/0

    [[ROUTER CE1]]
        model = 3660
        F0/1 = NIO_gen_eth:DeviceNPF_{XXXX} #my loopback = CPC1    

    [[ROUTER PE2]]
        model = 3660
        F0/1 = CE2 F0/0

    [[ROUTER CE2]]
        model = 3660
        F0/1 = NIO_gen_eth:DeviceNPF_{XXX} #my 2nd loopback = CPC2</pre>
<h1>Configurations interfaces</h1>
<p>Pour clarifier les choses, si vous ne comprenez pas les lignes qui suivent, je vous conseille d&#8217;arrêter la lecture de l&#8217;article :p</p>
<h3>Core:</h3>
<pre>En
Conf t
Hostn Core
interface loopback 100
ip address 10.0.2.1 255.255.255.255
no shutdown
interface F0/0
ip address 10.0.10.2 255.255.255.0
no shutdown
interface f0/1
ip address 10.0.20.2 255.255.255.0
no shutdown</pre>
<h3>PE1:</h3>
<pre>En
Conf t
Hostn PE1
interface loopback 0
ip address 10.0.1.1 255.255.255.255
interface F0/0
ip address 10.0.10.1 255.255.255.0
no shutdown
interface fastethernet 0/1
ip address 172.16.100.254 255.255.255.0
no shutdown</pre>
<h3>PE2</h3>
<pre>En
Conf t
Hostn PE2
interface loopback 0
ip address 10.0.3.1 255.255.255.255
interface F0/0
ip address 10.0.20.1 255.255.255.0
no shutdown
interface F0/1
ip address 172.16.200.254 255.255.255.0
no shutdown</pre>
<h3>CE1</h3>
<pre>En
Conf t
Hostn CE1
interface loop0
ip address 172.16.10.1 255.255.255.0
interface fastethernet 0/0
ip address 172.16.100.1 255.255.255.0
no shutdown
interface fastethernet 0/1
ip address 192.168.1.1 255.255.255.0
no shutdown</pre>
<h3>CE2</h3>
<pre>En
Conf t
Hostn CE2
interface loop0
ip address 172.16.20.1 255.255.255.0
interface f0/0
ip address 172.16.200.1 255.255.255.0
no shutdown
interface fastethernet 0/1
ip address 192.168.2.1 255.255.255.0
no shutdown</pre>
<p><span style="color: #ff0000;"><span style="text-decoration: underline;">Ici : penser à effectuer des pings pour tester la connectivité :</span></span></p>
<pre>CE1#ping 192.168.1.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.1.2, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 12/32/84 ms

CE2#ping 192.168.2.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.2.2, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 12/32/84 ms

CE1#ping 172.16.100.254
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.100.254, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 16/51/76 ms

CE2#ping 172.16.200.254
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.200.254, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 20/54/124 ms

Core#ping 10.0.10.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.0.10.1, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 12/40/72 ms

Core#ping 10.0.20.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.0.20.1, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 8/37/68 ms</pre>
<p>Les pings sont OK, passons à la suite</p>
<h1>Routage interne FAI</h1>
<p>On va maintenant configurer le routage interne du fournisseur, car BGP est un protocole EGP (Exterior Gateway Protocol), et son but n’est pas le routage au sein de l’AS mais entre les AS. Ses neighbors ne seront pas forcément dans les mêmes sous réseaux, et il faut donc qu’ils puissent communiquer, ce qui implique une table de routage valide pour chaque routeur.<br />
Pour aller plus vite on agrégeras les différents réseaux de chaque router.</p>
<h3>Core</h3>
<pre>router ospf 1
network 10.0.0.0 0.255.255.255 area 0</pre>
<h3>PE1</h3>
<pre>router ospf 1
network 10.0.0.0 0.255.255.255 area 0</pre>
<h3>PE2</h3>
<pre>router ospf 1
network 10.0.0.0 0.255.255.255 area 0</pre>
<p>On doit avoir ça :</p>
<pre>Core#
Jun  6 15:03:57.174: %OSPF-5-ADJCHG: Process 10, Nbr 10.0.1.1 on GigabitEthernet2/35 from LOADING to FULL, Loading Done
Jun  6 15:24:58.342: %OSPF-5-ADJCHG: Process 10, Nbr 10.0.3.1 on GigabitEthernet2/36 from LOADING to FULL, Loading Done
Core#sh ip ospf neighbor
Neighbor ID     Pri   State           Dead Time   Address         Interface
10.0.3.1          1   EXSTART/DR      00:00:34    10.0.20.1       FastEthernet0/1
10.0.1.1          1   EXSTART/BDR     00:00:39    10.0.10.1       FastEthernet0/0</pre>
<p>Et PE1 doit pouvoir pinger PE2 :</p>
<pre>PE1#ping 10.0.20.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.0.20.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 64/79/112 ms</pre>
<p>Ok tout est bon, passons aux choses sérieuses <img src='http://bmigette.fr/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<h1>Configuration MPLS</h1>
<p>Les protocoles de distribution de labels servent au routeur à échanger leurs labels afin de pouvoir router correctement. Chaque label est local, un peu à la manière des DLCI Frame relay, et est inséré entre les entêtes de couche 2 et 3. Pour le routage MPLS, le routeur doit obligatoirement utiliser le CEF, qui construit la FIB (Forwarding Information Base), qui contient le cache pour les trames en fonction de la table de routage (pour chaque route on a une entrée en cache qui contient les informations de couche 2 pour générer la trame).<br />
MPLS utilise la FIB pour générer la LFIB (Labeled FIB), qui a le même rôle que la FIB mais sur laquelle on ajoute les correspondances Label local, label averti par le voisin.<br />
Les labels locaux sont stockés dans la LIB (Label Information Base).<br />
Pour faire simple, le routeur MPLS attribue un label à chaque route, qu’il garde dans sa LIB, et lorsqu’un de ses voisin l’informe d’un label pour une même route, il rempli la LFIB pour faire correspondre les labels, ce qui permettra le switching.<br />
Chaque routeur informe ses voisins des labels pour chacune de ses routes (Il envoi sa LIB) via LDP  (ou TDP).<br />
Ici, nous allons utiliser LDP (les deux protocoles actuels sont LDP et TDP).</p>
<p>Note : Les routeurs MPLS sont souvent appelés LSR pour Label Switching Routeur.</p>
<p>Définition de l’interface source: Optionnel mais conseillé: Dans mon cas le router Core a plusieurs interfaces loopback =&gt; résultat non prévisible.</p>
<h3>PE1</h3>
<pre>mpls ldp advertise-labels
mpls ldp router-id loopback0 force
interface f0/0
mpls ip</pre>
<h3>Core</h3>
<pre>mpls ldp advertise-labels
mpls ldp router-id loopback100 force
interface F0/0
mpls ip
interface F0/1
mpls ip</pre>
<h3>PE2</h3>
<pre>mpls ldp advertise-labels
mpls ldp router-id loopback0 force
interface f0/0
mpls ip</pre>
<p>On doit avoir ça :</p>
<pre>Core(config-if)#
Jun  6 15:39:37.390: %LDP-5-NBRCHG: LDP Neighbor 10.0.1.1:0 is UP
Jun  6 15:40:51.806: %LDP-5-NBRCHG: LDP Neighbor 10.0.3.1:0 is UP</pre>
<h3>Vérification :</h3>
<pre>Core#sh mpls ldp neighbor
    Peer LDP Ident: 10.0.1.1:0; Local LDP Ident 10.0.2.1:0
        TCP connection: 10.0.1.1.646 - 10.0.2.1.25314
        State: Oper; Msgs sent/rcvd: 9/10; Downstream        Up time: 00:01:35
        LDP discovery sources:
          FastEthernet0/0, Src IP addr: 10.0.10.1
        Addresses bound to peer LDP Ident:
          10.0.10.1       172.16.100.254  10.0.1.1
    Peer LDP Ident: 10.0.3.1:0; Local LDP Ident 10.0.2.1:0
        TCP connection: 10.0.3.1.63640 - 10.0.2.1.646
        State: Oper; Msgs sent/rcvd: 9/10; Downstream
        Up time: 00:01:17
        LDP discovery sources:
          FastEthernet0/1, Src IP addr: 10.0.20.1
        Addresses bound to peer LDP Ident:
          10.0.20.1       172.16.200.254  10.0.3.1</pre>
<h1>Configuration des VRF (Virtual Routing and Forwarding : L3 VPN)</h1>
<p>Une VRF permet de virtualiser une partie du routeur. Par exemple, un routeur qui doit traiter le traffic de plusieurs AS ayant le même adressage, afin de ne pas les mélanger, mettra chaque AS dans une VRF.<br />
Chaque VRF a sa proper Routing Information Base (RIB, Table de routage) et table Cisco Express Forwarding (doit être activé avec ip cef).<br />
Le routage se fera grâce à BGP et son extension multi protocole (MP BGP) : Un routeur en cœur de réseau pouvant avoir plusieurs clients ayant les mêmes adresses privées, on assignera à chaque VRF une route distinguisher, qui, préfixé a une adresse IPv4 donnera une adresse VPNv4 unique dans tout le réseau (on aura donc une RD par VRF). Les routes des VRFs pouvant être injectées dans d’autres VRF (VPN Multi Sites), on utilisera les Route Target (RT) qui permettront de définir un nom d’export à la table de routage de notre VRF, et d’indiquer quelles tables importer. Les RT seront transportées via MP BGP.<br />
Chaque VRF doit avoir une RD (unique) et une ou plusieurs RT en import et/ou export.</p>
<p>Convention RD :<br />
Numero_as :nombre_aleatoire<br />
ou<br />
IPv4 :nombre_aleatoire</p>
<p>Convention RT :<br />
Numero_as :nombre_aleatoire<br />
ou<br />
IPv4 :nombre_aleatoire</p>
<p>Les RD et RT peuvent ou non avoir la mêmes valeur, cela n’a rien à voir, mais doivent être les mêmes sur tous les routeurs pour la même VRF. Le mot clef both indique que les routes de la vrf crf_client seront exportées et importées sur chaque routeur, ce qui veut dire que si un des routeurs reçoit une màj BGP avec la RT 1:123 il l’injectera dans la table de routage de cette VRF. Le routeur Core n’a pas besoin d’avoir cette VRF de configurée puisqu’il n’a pas d’interfaces configurée dans cette VRF.</p>
<p>On remarque aussi que le client ne sait pas qu’il est dans une VRF, cela est défini uniquement coté FAI.</p>
<h3>PE1 :</h3>
<pre>ip vrf vrf_client
rd 65000:123
route-target both 65000:123</pre>
<h3>PE2 :</h3>
<pre>ip vrf vrf_client
rd 65000:123
route-target both 65000:123</pre>
<h2>Définition des interfaces dans la VRF:</h2>
<h3>PE1 :</h3>
<pre>interface fastethernet 0/1
ip vrf forwarding vrf_client
ip address 172.16.100.254 255.255.255.0
no shut</pre>
<h3>PE2 :</h3>
<pre>interface fastethernet 0/1
ip vrf forwarding vrf_client
ip address 172.16.200.254 255.255.255.0
no shutdown</pre>
<p>Attention de rentrer la commande IP vrf forwarding avant la commande ip address, car les routeurs cisco suppriment la configuration IP lors de l’affectation d’une interface à une vrf.</p>
<pre>PE1(config-if)#ip vrf forwarding vrf_client
% Interface FastEthernet0/1 IP address 172.16.100.254 removed due to enabling VRF vrf_client</pre>
<p>Test ping:<br />
Pout pinger dans une VRF, il vous faut utiliser la commande ping vrf :</p>
<pre>PE1#ping vrf vrf_client 172.16.100.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.100.1, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 12/33/56 ms</pre>
<h2>Configuration EIGRP</h2>
<p>Au sein de l’AS du client, nous allons utiliser EIGRP. Nous aurions tout aussi pu utiliser OSPF, ou mettre EIGRP dans l’AS fournisseur, mais ça fait un petit rappel ?<br />
Client : AS 65000<br />
FAI : AS 1</p>
<h3>CE1</h3>
<pre>router eigrp 65000
no auto-summary
network 172.16.0.0
network 192.168.1.0</pre>
<h3>CE2</h3>
<pre>router eigrp 65000
no auto-summary
network 172.16.0.0
network 192.168.2.0</pre>
<p>A ce point, on ne voit pas encore de relation de voisinage EIGRP. Chaque IGP à une configuration propre pour les VRFs. Pour EIGRP, dans le processus de routage principal, dans l’AS 1, on peut spécifier d’autres AS pour des VRFs particulières :<br />
Ici, il faut comprendre que les PE sont dans l’AS 1, mais qu’ils vont accepter les routes de l’AS 65000 et les convertir en route VPNV4, qui seront transportées d’un PE à l’autre par BGP.</p>
<h3>PE1 :</h3>
<pre>router eigrp 1
address-family ipv4 vrf vrf_client
autonomous-system 65000
no auto-summary
network 172.16.0.0</pre>
<h3>PE2 :</h3>
<pre>router eigrp 1
address-family ipv4 vrf vrf_client
autonomous-system 65000
no auto-summary
network 172.16.0.0</pre>
<p>On remarque que on ne mélangeras pas les adresses IPv4 et VPNv4, leur configuration sera donc séparée dans la configuration du protocole de routage.<br />
De même que pour la commande ping, il faut spécifier la vrf pour afficher sa table de routage. Si tout s’est bien passé vous devriez avoir quelque chose comme cela :</p>
<pre>*Mar  1 00:46:14.751: %DUAL-5-NBRCHANGE: IP-EIGRP(1) 65000: Neighbor 172.16.200.1 (FastEthernet0/1) is up: new adjacency
PE1#sh ip route vrf vrf_client
Routing Table: vrf_client
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route
Gateway of last resort is not set
     172.16.0.0/24 is subnetted, 2 subnets
D       172.16.10.0 [90/30720] via 172.16.100.1, 00:01:14, FastEthernet0/1
C       172.16.100.0 is directly connected, FastEthernet0/1</pre>
<h2>Configuration BGP</h2>
<p>Bien, nous avons maintenant activé le support du MPLS, le routage interne au cœur du réseau, le routage entre les routeurs d’extrémité et les routeurs client, il ne nous reste plus qu’a configurer BGP afin qu’il transporte les routes d’un point de la VRF à l’autre. Le paramètre après router BGP est le numero d&#8217;AS.</p>
<h3>PE1</h3>
<pre>router bgp 1
neighbor 10.0.3.1 remote-as 1
neighbor 10.0.3.1 update-source loopback0</pre>
<h3>PE2</h3>
<pre>router bgp 1
neighbor 10.0.1.1 remote-as 1
neighbor 10.0.1.1 update-source loopback0</pre>
<p>Il est important de prendre l’habitude de spécifier une adresse source pour les mises à jours BGP, car BGP refuse les mises à jours de voisins dont l’IP n’est pas configurée avec la commande neighbor, ce qui pourrait poser des problème en cas de lien redondant.<br />
On remarque que les voisins ne sont pas directement connectés, d’où l’utilisation d’un protocole de routage en interne au cœur de réseau.</p>
<p>On aura pas d’ailleurs à configurer BGP sur le Core Routeur, les PE vont échanger leur route directement entre eux.<br />
Par défaut, BGP ne transporte et ne reçoit que des routes IPv4, pour transporter les routes des VRFs, BGP enverra des routes VPNv4, il faudra donc activer le support de cette famille d’adresse et définir les voisins avec qui on échangera de type de routes.<br />
Les RT sont translatée comme étant des communautées étendue, il faut donc activer leur support.<br />
En mode de configuration BGP, tapez les commandes suivantes :</p>
<h3>PE1</h3>
<pre>address-family vpnv4
neighbor 10.0.3.1 activate
neighbor 10.0.3.1 send-community both
exit</pre>
<h3>PE2</h3>
<pre>address-family vpnv4
neighbor 10.0.1.1 activate
neighbor 10.0.1.1 send-community both
exit</pre>
<p>Vous devriez observe quelque chose de la sorte:</p>
<pre>*Mar  1 02:14:45.067: %BGP-5-ADJCHANGE: neighbor 10.0.3.1 Up
*Mar  1 02:15:36.291: %BGP-5-ADJCHANGE: neighbor 10.0.3.1 Down Peer closed the session
*Mar  1 02:15:38.543: %BGP-5-ADJCHANGE: neighbor 10.0.3.1 Up</pre>
<p>Il est normal que la relation de voisinage se termine et se réactive.<br />
Maintenant que BGP est configuré pour transporter les routes entre nos deux routeurs PE, il faut lui indiquer ou trouver ces routes. Dans notre cas, elles seront importées depuis EIGRP. Il faudra donc taper ces commandes en mode de configuration BGP:</p>
<h3>PE1</h3>
<pre>address-family ipv4 vrf vrf_client
redistribute eigrp 65000
exit
exit</pre>
<h3>PE2</h3>
<pre>address-family ipv4 vrf vrf_client
redistribute eigrp 65000
exit
exit</pre>
<p>Maintenant, il ne reste plus qu’a dire aux routeurs PE d’injecter les routes apprises par BGP dans l’EIGRP du client (attention, les métriques BGP et EIGRP ne sont pas compatibles, il faut définir leur paramètres):</p>
<h3>PE1</h3>
<pre>router eigrp 1
address-family ipv4 vrf vrf_client
redistribute bgp 1 metric 64 1000 255 1 1500</pre>
<h3>PE2</h3>
<pre>router eigrp 1
address-family ipv4 vrf vrf_client
redistribute bgp 1 metric 64 1000 255 1 1500</pre>
<h2>Vérifications:</h2>
<pre>CE1#sh ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

     172.16.0.0/24 is subnetted, 4 subnets
D       172.16.200.0 [90/30720] via 172.16.100.254, 00:02:32, FastEthernet0/0
D       172.16.20.0 [90/158720] via 172.16.100.254, 00:02:32, FastEthernet0/0
C       172.16.10.0 is directly connected, Loopback0
C       172.16.100.0 is directly connected, FastEthernet0/0
C    192.168.1.0/24 is directly connected, FastEthernet0/1
D    192.168.2.0/24 [90/33280] via 172.16.100.254, 00:00:10, FastEthernet0/0

CE1#ping 192.168.2.1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.2.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 144/212/264 ms

Core#show mpls forwarding-table
Local  Outgoing    Prefix            Bytes tag  Outgoing   Next Hop
tag    tag or VC   or Tunnel Id      switched   interface
16     Pop tag     10.0.3.1/32       4013       Fa0/1      10.0.20.1
17     Pop tag     10.0.1.1/32       4697       Fa0/0      10.0.10.1    

PE1#sh mpls ip binding
  10.0.1.1/32
        in label:     imp-null
        out label:    17        lsr: 10.0.2.1:0
  10.0.2.1/32
        in label:     17
        out label:    imp-null  lsr: 10.0.2.1:0       inuse
  10.0.3.1/32
        in label:     16
        out label:    16        lsr: 10.0.2.1:0       inuse
  10.0.10.0/24
        in label:     imp-null
        out label:    imp-null  lsr: 10.0.2.1:0
  10.0.20.0/24
        in label:     18
        out label:    imp-null  lsr: 10.0.2.1:0       inuse</pre>
<p>C’est pas beau ?</p>
]]></content:encoded>
			<wfw:commentRss>http://bmigette.fr/2008/12/10/mpls-vrfs-bgp-pour-sammuser/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Configuration automatique d&#8217;un équipement sous dynagen</title>
		<link>http://bmigette.fr/2008/09/26/configuration-automatique-dun-equipement-sous-dynagen/</link>
		<comments>http://bmigette.fr/2008/09/26/configuration-automatique-dun-equipement-sous-dynagen/#comments</comments>
		<pubDate>Thu, 25 Sep 2008 22:19:47 +0000</pubDate>
		<dc:creator>Bastien Migette</dc:creator>
				<category><![CDATA[astuces]]></category>
		<category><![CDATA[Divers]]></category>
		<category><![CDATA[Emulation/simulation routeurs/firewalls/switchs...]]></category>
		<category><![CDATA[automatique]]></category>
		<category><![CDATA[configuration]]></category>
		<category><![CDATA[dynagen]]></category>
		<category><![CDATA[dynamips]]></category>

		<guid isPermaLink="false">http://bmigette.fr/?p=31</guid>
		<description><![CDATA[Voici deux petites options bien pratiques: cnfg= et configuration=, toutes les deux à placer dans une section device. cnfg permet d&#8217;indiquer un fichier text contenant la configuration du routeur (show running-config) et la seconde accepte la configuration encodée en base 64. Exemple de configuration Prenons une configuration de base. Current configuration : 604 bytes ! [...]]]></description>
			<content:encoded><![CDATA[<p>Voici deux petites options bien pratiques:<br />
cnfg= et configuration=, toutes les deux à placer dans une section device.<br />
cnfg permet d&#8217;indiquer un fichier text contenant la configuration du routeur (show running-config) et la seconde accepte la configuration encodée en base 64.</p>
<p><span id="more-31"></span></p>
<h2>Exemple de configuration</h2>
<p>Prenons une configuration de base.</p>
<pre>Current configuration : 604 bytes
!
version 12.2
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname Router
!
logging queue-limit 100
!
memory-size iomem 15
ip subnet-zero
!
!
!
mpls ldp logging neighbor-changes
!
!
!
!
!
!
!
!
!
no voice hpi capture buffer
no voice hpi capture destination
!
!
mta receive maximum-recipients 0
!
!
!
!
interface FastEthernet0/0
 no ip address
 shutdown
 duplex auto
 speed auto
!
ip http server
ip classless
!
!
!
!
!
call rsvp-sync
!
!
mgcp profile default
!
!
!
dial-peer cor custom
!
!
!
!
line con 0
line aux 0
line vty 0 4
!
!
end</pre>
<h3>Exemple avec cnfg</h3>
<p>Imaginons que j&#8217;aie mis cette configuration dans un fichier appelé rtr1.txt<br />
Mon fichier dynagen pourrait ressembler à ceci:</p>
<pre>ghostios   = True
sparsemem  = True
[localhost]

    [[3660]]
        image = ..\images\C3660-JK.BIN
        ram = 128
        idlepc = 0x604eb02c

    [[ROUTER rtr1]]
        model = 3660
        cnfg=rtr1.txt</pre>
<p>L&#8217;avantage de cette solution est que l&#8217;on peut modifier le fichier de configuration sans lancer dynagen. Par contre, il faut sauvegarder nos changements dans ce fichiers (write mem ou copy run start ne fonctionneront pas&#8230;)</p>
<h3>Exemple avec configuration</h3>
<p>Utilisez un encodeur base64, par exemple: <a href="http://www.paulschou.com/tools/xlate/">http://www.paulschou.com/tools/xlate/</a><a href="http://makcoder.sourceforge.net/demo/base64.php"></a></p>
<p>Je parse ma config, mon fichier .net ressemblerai à ça:</p>
<pre>ghostios   = True
sparsemem  = True
[localhost]

    [[3660]]
        image = ..\images\C3660-JK.BIN
        ram = 128
        idlepc = 0x604eb02c

    [[ROUTER rtr1]]
        model = 3660
        configuration=Q3VycmVudCBjb25maWd1cmF0aW9uIDogNjA0IGJ5dGVzDQohDQp2ZXJzaW9uIDEyLjINCnNlcnZpY2UgdGltZXN0YW1wcyBkZWJ1ZyBkYXRldGltZSBtc2VjDQpzZXJ2aWNlIHRpbWVzdGFtcHMgbG9nIGRhdGV0aW1lIG1zZWMNCm5vIHNlcnZpY2UgcGFzc3dvcmQtZW5jcnlwdGlvbg0KIQ0KaG9zdG5hbWUgUm91dGVyDQohDQpsb2dnaW5nIHF1ZXVlLWxpbWl0IDEwMA0KIQ0KbWVtb3J5LXNpemUgaW9tZW0gMTUNCmlwIHN1Ym5ldC16ZXJvDQohDQohDQohDQptcGxzIGxkcCBsb2dnaW5nIG5laWdoYm9yLWNoYW5nZXMNCiENCiENCiENCiENCiENCiENCiENCiENCiENCm5vIHZvaWNlIGhwaSBjYXB0dXJlIGJ1ZmZlcg0Kbm8gdm9pY2UgaHBpIGNhcHR1cmUgZGVzdGluYXRpb24NCiENCiENCm10YSByZWNlaXZlIG1heGltdW0tcmVjaXBpZW50cyAwDQohDQohDQohDQohDQppbnRlcmZhY2UgRmFzdEV0aGVybmV0MC8wDQogbm8gaXAgYWRkcmVzcw0KIHNodXRkb3duDQogZHVwbGV4IGF1dG8NCiBzcGVlZCBhdXRvDQohDQppcCBodHRwIHNlcnZlcg0KaXAgY2xhc3NsZXNzDQohDQohDQohDQohDQohDQpjYWxsIHJzdnAtc3luYw0KIQ0KIQ0KbWdjcCBwcm9maWxlIGRlZmF1bHQNCiENCiENCiENCmRpYWwtcGVlciBjb3IgY3VzdG9tDQohDQohDQohDQohDQpsaW5lIGNvbiAwDQpsaW5lIGF1eCAwDQpsaW5lIHZ0eSAwIDQNCiENCiENCmVuZA==</pre>
<p>L&#8217;avantage de ces solutions est que l&#8217;on peut aisément préconfigurer une topologie dynagen pour un scénario donné.</p>
]]></content:encoded>
			<wfw:commentRss>http://bmigette.fr/2008/09/26/configuration-automatique-dun-equipement-sous-dynagen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

