BGP Métrique: La local-preference

Bonjour à tous !

Nouvel article sur la série BGP on va aborder la Local-preference après avoir vu le weight.

Vidéos Youtube :

Qu’est-ce que la local-preference ?

L’attribut BGP Local-preference avec une valeur élevée indique le chemin (en routage sortant) favoris au niveau de l’AS(Autonomous System). Cette attribut est annoncé dans l’AS et non en eBGP.

Pour la définition cisco en anglais 😉 :

https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/iproute_bgp/configuration/15-mt/irg-15-mt-book/irg-external-sp.html

Pour résumé c’est comme l’attribut weight sauf que cela se configure plus en local sur le routeur mais au niveau de l’AS sur le routeur « favoris ».

Dans le schémas ci-dessus on va par exemple pour l’AS 123 choisir le routeur R3 comme routeur favoris et tous mes flux sortant passerons par R3. L’attribut Local-Preference va être alors configuré en local puis annoncés dans l’AS et R1 et R2 passerons par R3 pour accéder au réseaux hors AS 123.

Voici les confs des différents routeurs de l’AS 123:

R1:

router bgp 123
 bgp log-neighbor-changes
 neighbor 185.12.12.2 remote-as 123
 neighbor 185.13.13.3 remote-as 123

R2 :

router bgp 123
 bgp log-neighbor-changes
 network 185.12.12.0 mask 255.255.255.0
 neighbor 185.12.12.1 remote-as 123
 neighbor 185.12.12.1 next-hop-self
 neighbor 185.23.23.3 remote-as 123
 neighbor 185.24.24.4 remote-as 444

R3:

router bgp 123
 bgp log-neighbor-changes
 network 185.13.13.0 mask 255.255.255.0
 neighbor 185.13.13.1 remote-as 123
 neighbor 185.13.13.1 next-hop-self
 neighbor 185.23.23.2 remote-as 123
 neighbor 185.23.23.2 next-hop-self
 neighbor 185.35.35.5 remote-as 550

On configure ensuite la local-preference sur R3 :

 bgp default local-preference 300

En regardant sur R1 on voit quel chemin est favorisés pour accéder au réseau 185.67.81.0/24 :

Pareil sur R2 :

*> : indique la meilleur route.

Voilà pour la local-preference n’hésitez pas à vous abonnez à la chaîne Youtube et à commenter 🙂 !

Installer Passbolt sur Debian

Bonjour passbolt est une solution open source de gestion de mots de passe que j’ai découvert.

Pas de tuto pour cette article 🙂 mais voici le lien vers la documentation officiel :

Lien de la documentation :

https://help.passbolt.com/hosting/install/ce/debian/debian.html

Le lien de la vidéo :

A bientôt !

BGP Métrique: Le Weight

Salut à tous ! On reprend la série BGP : on s’attaque à la métrique et on va parler du Weight (le poids).

Qu’est ce que le weight ?

Le weight est le premier attribut BGP comme vous pouvez le voir dans le tableau ci-dessous :

Source : https://www.networklab.fr/wp-content/uploads/2013/09/M%C3%A9trique-de-BGP.png

Le weight (poids) comme son nom l’indique permet de favoriser un voisin (BGP) par rapport à un autre. Exemple : j’ai un router A connecté au routeur B et au routeur C comme ci-dessous :

J’ai 2 chemins pour accéder à la même route, si je configure un poids à 100 sur le routeur B et un poids à 200 sur le routeur C, alors le routeur A passera par le routeur C pour accèder au réseau.

C’est tout simplement cela le weight 🙂 .

Remarques importantes :

  • La configuration est faite en local sur le routeur
  • Cette métriques n’est pas annoncée au routeur voisin
  • La métrique est par défaut à 0

Passons au LAB :

Vidéo Youtube :

Schéma :

Le but du LAB : faire passer les flux de Marseille vers LibreNMS qui passe initialement par Bordeaux et les faire passer par Nantes en mettant un poids supérieur au niveau de la configuration BGP.

Voici les confs des différents routeurs :

MARSEILLE :

MARSEILLE#show running-config 
Building configuration...

Current configuration : 1576 bytes
!
version 15.2
service timestamps debug datetime msec
service timestamps log datetime msec
!
hostname MARSEILLE
!
boot-start-marker
boot-end-marker
!
!
!
no aaa new-model
no ip icmp rate-limit unreachable
ip cef
!
!
!
!
ip dhcp pool CLIENT_LAN
 network 192.168.70.0 255.255.255.0
 default-router 192.168.70.1 
!
!
!
no ip domain lookup
no ipv6 cef
!
!
multilink bundle-name authenticated
!
!
!
!
!
!
!
!
!
ip tcp synwait-time 5
! 
!
!
!
!         
!
!
!
!
!
!
!
interface Ethernet0/0
 no ip address
 shutdown
 duplex auto
!
interface GigabitEthernet0/0
 no ip address
 shutdown
 media-type gbic
 speed 1000
 duplex full
 negotiation auto
!
interface GigabitEthernet1/0
 ip address 50.54.30.1 255.255.255.252
 negotiation auto
!
interface GigabitEthernet2/0
 ip address 43.200.10.1 255.255.255.252
 negotiation auto
!
interface GigabitEthernet3/0
 no ip address
 shutdown
 negotiation auto
!
interface GigabitEthernet4/0
 no ip address
 shutdown
 negotiation auto
!
interface GigabitEthernet5/0
 no ip address
 shutdown
 negotiation auto
!
interface GigabitEthernet6/0
 ip address 192.168.70.1 255.255.255.0
 negotiation auto
!
router bgp 111
 bgp log-neighbor-changes
 network 192.168.70.0
 neighbor 43.200.10.2 remote-as 777
 neighbor 43.200.10.2 weight 100
 neighbor 50.54.30.2 remote-as 444
!
ip forward-protocol nd
!
!
no ip http server
no ip http secure-server
!
!
!
!
control-plane
!
!
line con 0
 exec-timeout 0 0
 privilege level 15
 logging synchronous
 stopbits 1
line aux 0
 exec-timeout 0 0
 privilege level 15
 logging synchronous
 stopbits 1
line vty 0 4
 login
!
!
end

BORDEAUX:

BORDEAUX#show running-config 
Building configuration...

Current configuration : 1504 bytes
!
version 15.2
service timestamps debug datetime msec
service timestamps log datetime msec
!
hostname BORDEAUX
!
boot-start-marker
boot-end-marker
!
!
!
no aaa new-model
no ip icmp rate-limit unreachable
ip cef
!
!
!
!
!
!
no ip domain lookup
no ipv6 cef
!
!
multilink bundle-name authenticated
!
!
!
!
!
!
!
!
!
ip tcp synwait-time 5
! 
!
!
!
!
!
!
!
!         
!
!
!
interface Ethernet0/0
 no ip address
 shutdown
 duplex auto
!
interface GigabitEthernet0/0
 no ip address
 shutdown
 media-type gbic
 speed 1000
 duplex full
 negotiation auto
!
interface GigabitEthernet1/0
 ip address 50.54.30.2 255.255.255.252
 negotiation auto
!
interface GigabitEthernet2/0
 ip address 187.18.20.2 255.255.255.0
 negotiation auto
!
interface GigabitEthernet3/0
 no ip address
 shutdown
 negotiation auto
!
interface GigabitEthernet4/0
 no ip address
 shutdown
 negotiation auto
!
interface GigabitEthernet5/0
 no ip address
 shutdown
 negotiation auto
!
interface GigabitEthernet6/0
 no ip address
 shutdown
 negotiation auto
!
router bgp 444
 bgp log-neighbor-changes
 network 187.18.20.0 mask 255.255.255.0
 neighbor 50.54.30.1 remote-as 111
 neighbor 187.18.20.1 remote-as 999
!
ip forward-protocol nd
!
!
no ip http server
no ip http secure-server
!
!
ip prefix-list NY_BOR seq 5 permit 187.18.20.0/24
!
!
!
control-plane
!
!
line con 0
 exec-timeout 0 0
 privilege level 15
 logging synchronous
 stopbits 1
line aux 0
 exec-timeout 0 0
 privilege level 15
 logging synchronous
 stopbits 1
line vty 0 4
 login
!
!
end

NANTES:

NANTES#show running-config 
Building configuration...

Current configuration : 1452 bytes
!
version 15.2
service timestamps debug datetime msec
service timestamps log datetime msec
!
hostname NANTES
!
boot-start-marker
boot-end-marker
!
!
!
no aaa new-model
no ip icmp rate-limit unreachable
ip cef
!
!
!
!
!
!
no ip domain lookup
no ipv6 cef
!
!
multilink bundle-name authenticated
!
!
!
!
!
!
!
!
!
ip tcp synwait-time 5
! 
!
!
!
!
!
!
!
!         
!
!
!
interface Ethernet0/0
 no ip address
 shutdown
 duplex auto
!
interface GigabitEthernet0/0
 no ip address
 shutdown
 media-type gbic
 speed 1000
 duplex full
 negotiation auto
!
interface GigabitEthernet1/0
 no ip address
 shutdown
 negotiation auto
!
interface GigabitEthernet2/0
 ip address 43.200.10.2 255.255.255.252
 negotiation auto
!
interface GigabitEthernet3/0
 ip address 150.90.40.2 255.255.255.0
 negotiation auto
!
interface GigabitEthernet4/0
 no ip address
 shutdown
 negotiation auto
!
interface GigabitEthernet5/0
 no ip address
 shutdown
 negotiation auto
!
interface GigabitEthernet6/0
 no ip address
 shutdown
 negotiation auto
!
router bgp 777
 bgp log-neighbor-changes
 network 150.90.40.0 mask 255.255.255.0
 neighbor 43.200.10.1 remote-as 111
 neighbor 150.90.40.1 remote-as 999
!
ip forward-protocol nd
!
!
no ip http server
no ip http secure-server
!
!
!
!
control-plane
!
!
line con 0
 exec-timeout 0 0
 privilege level 15
 logging synchronous
 stopbits 1
line aux 0
 exec-timeout 0 0
 privilege level 15
 logging synchronous
 stopbits 1
line vty 0 4
 login
!
!
end

NEW YORK :

NEW_YORK#show running-config 
Building configuration...

Current configuration : 1536 bytes
!
version 15.2
service timestamps debug datetime msec
service timestamps log datetime msec
!
hostname NEW_YORK
!
boot-start-marker
boot-end-marker
!
!
!
no aaa new-model
no ip icmp rate-limit unreachable
ip cef
!
!
!
!
ip dhcp pool WAN_NY
 network 192.168.90.0 255.255.255.0
 default-router 192.168.90.1 
!
!
!
no ip domain lookup
no ipv6 cef
!
!
multilink bundle-name authenticated
!
!
!
!
!
!
!
!
!
ip tcp synwait-time 5
! 
!
!
!
!         
!
!
!
!
!
!
!
interface Ethernet0/0
 no ip address
 shutdown
 duplex auto
!
interface GigabitEthernet0/0
 no ip address
 shutdown
 media-type gbic
 speed 1000
 duplex full
 negotiation auto
!
interface GigabitEthernet1/0
 no ip address
 shutdown 
 negotiation auto
!
interface GigabitEthernet2/0
 ip address 187.18.20.1 255.255.255.0
 negotiation auto
!
interface GigabitEthernet3/0
 ip address 150.90.40.1 255.255.255.0
 negotiation auto
!
interface GigabitEthernet4/0
 no ip address
 shutdown
 negotiation auto
!
interface GigabitEthernet5/0
 no ip address
 shutdown
 negotiation auto
!
interface GigabitEthernet6/0
 ip address 192.168.90.1 255.255.255.0
 negotiation auto
!
router bgp 999
 bgp log-neighbor-changes
 network 192.168.90.0
 neighbor 150.90.40.2 remote-as 777
 neighbor 187.18.20.2 remote-as 444
!
ip forward-protocol nd
!
!
no ip http server
no ip http secure-server
!
!
!
!
control-plane
!
!
line con 0
 exec-timeout 0 0
 privilege level 15
 logging synchronous
 stopbits 1
line aux 0
 exec-timeout 0 0
 privilege level 15
 logging synchronous
 stopbits 1
line vty 0 4
 login
!
!
end

Ensuite nous allons configurer le weight sur Marseille :

router bgp 111
neighbor 43.200.10.2 weight 100

Comme on peut le voir dans la vidéo les flux passent désormais par NANTES.

Merci à vous, n’hésitez pas à vous abonnez et à commenter la vidéo !

1. Prendre la main sur une VM fortigate : Mettre une ip fixe en CLI.

Bonjour à tous je reviens après un petit moment d’absence sur mon blog.

Nous allons attaquer un nouveau domaine : la sécurité !!!

Plus précisément le firewalling avec le produit Fortigate, un firewall créé par la société Fortinet (société américaine) spécialisée dans les équipements de sécurité réseau.

Voici le lien de ma vidéo Youtube :

Dans ce lab on va importer le fichier OVF avec une VM Fortigate puis configurer une IP en CLI.

Prérequis :

  • VMWare Workstation (ou VirtualBox)
  • Se procurer le fichier OVF fortigate en faisant une demande directement à Fortigate ou à un partenaire Forti.

Contexte : On utilisera VMWare Workstation dans ce lab; vous pourrez adapter si besoin est à VirtualBox (une vidéo sera peut être faite avec VirtualBox pour authentification AD avec Forti)

Tout d’abord importer le fichier OVF sur VMWare Workstation en cliquant sur « Open a Virtual Machine » :

J’accepte le contrat de licence :

Je fournis un nom et l’emplacement où sera enregistré la VM :

Ma VM est bien importée 🙂

Avant de la démarrer, je vais m’assurer que l’interface numéro 1 est bien en bridge en regardant dans les settings (les autres interfaces ne nous intéresse pas pour le moment).

PS : Normalement toutes les interfaces sont en bridge.

Je démarre ensuite la VM :

ATTENTION !!! On est en QWERTY

Login : admin

et pas de mot de passe (taper juste sur la touche ENTREE)

Astuce pour le login taper: qd,in

On configure l’interface port1 :

config system interface
  edit port1
  set mode static
  set ip 192.168.1.111 255.255.255.0 

On est toujours en QWERTY mais vous arriverez à vous débrouiller avec la tabulation.

je tape :

end

Et ensuite je vérifie ma conf :

show system interface

Mon interface est bien configuré. Je peux désormais accéder en WEBGui à mon Fortigate :

Login comme en CLI « admin » et sans mots de passe. Et cette fois vous pourrez écrire en AZERTY 😀 .

A bientôt pour de nouveau tutos sur Fortigate et d’autres sujets 🙂 !

BGP le filtrage les prefix-list

Salut à tous ! Bon ça fait un moment que j’ai pas écrit d’articles sur mon blog je m’étais focus sur la série « Debian en moins de 3 minutes » uniquement en petites vidéo Youtube.

Aujourd’hui je reviens 💪💪💪 sur la série BGP on va voir ensemble les prefix-list dans un LAB sur GNS3. J’explique dans la vidéo ce que cela est pour plus de précisions je vous invite à regarder ce lien en anglais :

https://www.cisco.com/c/m/en_us/techdoc/dc/reference/cli/nxos/commands/bgp/ip-prefix-list.html#:~:text=A%20prefix%20list%20consists%20of,match%20any%20prefix%2Dlist%20entry.&text=Cisco%20NX%2DOS%20evaluates%20prefix,until%20a%20match%20is%20made.

Sinon pour la faire courte une prefix-list c’est une peu comme une ACL (Access List) une liste d’IPs qui va me permettre de filtrer en l’occurence dans le cas de BGP d’annoncer certains réseaux à mes voisins et ne pas en annoncés d’autres. Dans les prefix-list il y’a un deny implicite tout ce qui ne sera pas permis ne sera pas autorisé.

Le LAB :

Contexte: Nous avons R1 (AS 111) qui doit annoncer seulement le réseaux Serveurs Publiques (carré rouge) à R2 (AS 800). Et annoncer à R3 (AS 999) les réseaux IP Firewalls (carré bleu foncé). De même R2 doit annoncer les réseaux en 200.10.0.0/22 et 200.10.4.0/22.

Remarque : Les IPs sont déjà configuré il y’aura uniquement la partie BGP et les prefix-list qui sera traité dans ce tuto.

Vidéo du LAB :

On commence le LAB !

Etape 1: Configuration de la relation de voisinage BGP.

Sur R1 :

R1(config)#router bgp 111
R1(config-router)#neighbor 120.80.10.2 remote-as 800
R1(config-router)#neighbor 110.90.30.2 remote-as 999

Sur R2 :

R2(config)#router bgp 800
R2(config-router)#neighbor 120.80.10.1 remote-as 111

Sur R3 :

R3(config)#router bgp 999
R3(config-router)#neighbor 110.90.30.1 remote-as 111

Je vérifie les relations de voisnage avec R2 et R3 sur R1 :

R1#show ip bgp summary 

On est bon de ce côté 😉

Etape 2 : Configuration de mes prefix-list

On entre dans le coeur du sujet. La configuration se fera uniquement sur R1 :

R1(config)#ip prefix-list SRV_PUB permit 153.139.0.0/20 le 22 
R1(config)#ip prefix-list FIREWALL permit 182.148.1.0/29                 
R1(config)#ip prefix-list FIREWALL permit 182.148.2.0/29 
R1(config)#ip prefix-list SRV_EXT permit 200.10.0.0/20 le 22

Quelques explications ma prefix-list est sous la forme :

ip prefix-list NOM_DE_MA_PREFIX-LIST permit/deny MON_RESEAU et si beoins le/ge

le : letter or equal

ge : gretter or equal

Si j’explique la prefix-list ci-dessous :

ip prefix-list SRV_PUB permit 153.139.0.0/20 le 22 

Cela donne : « J’autorise le réseau(résumé) en 153.139.0.0/20 dont les résaux annoncés ont un masque inférieurs ou égale à 22 donc tout ce qui est en /21 et en dessous. Cette prefix ce nomme SRV_PUB » voilà comment on pourrait traduire cette règle.

SRV_PUB représente les réseaux dans le carré rouge

SRV_EXT représente les réseaux dans le carré rose côté R2

FIREWALL les réseau dans le carré blei foncé.

Voir le schémas.

Etape 3 : J’applique mes prefix-list sur la conf BGP sur R1

R1(config-router)#neighbor 120.80.10.2 prefix-list SRV_PUB out 
R1(config-router)#neighbor 120.80.10.2 prefix-list SRV_EXT in 
R1(config-router)#neighbor 110.90.30.2 prefix-list FIREWALL out 

in : pour tout ce que je vais recevoir donc je filtre en entrée

out : pour tout ce que je vais envoyé donc je filtre en sortie.

Etape 4 : J’annonce mes réseaux

R1 :

R1(config-router)#network 153.139.0.0 mask 255.255.252.0 
R1(config-router)#network 153.139.4.0 mask 255.255.252.0 
R1(config-router)#network 153.139.8.0 mask 255.255.255.0 
R1(config-router)#network 182.148.1.0 mask 255.255.255.248
R1(config-router)#network 182.148.2.0 mask 255.255.255.248

R2 : 

R2(config-router)#network 200.10.0.0 mask 255.255.252.0   
R2(config-router)#network 200.10.4.0 mask 255.255.252.0

Sur R3 aucun réseaux à annoncés dans le cadre de ce LAB.

Etape 5: Vérifications

Commande :

show ip bgp

Sur R3 :

Sur R2 :

Sur R1 :

Mes prefix-list sont fonctionnels je reçoit bien les réseaux sur R2 et R3 que je dois recevoir et je ne reçois rien d’autres.

Tuto terminé merci d’avoir suivie et n’hésitez pas à partager vos remarques en commentaires et à vous abonnez à ma chaîne Youtube 😀 !

BGP: iBGP et TRANSIT AS

Salut nous allons voir dans ce tuto comment configurer une relation iBGP et comment se déroule la redistribution de routes lorsque l’on passe par un AS de transit pour joindre un autre AS.

Voici les liens des 2 vidéos :

Remarque: Dans le tuto contrairement à la vidéo je ne montrerais pas la configuration des intercos et des adresses IPs.

1 ère étape: Configuration de la relation iBGP entre R1 et R2

Configuration OSPF R1:

R1(config)#router ospf 1
R1(config-router)#router-id 1.1.1.1
R1(config-router)#network 1.1.1.1 0.0.0.0 area 0
R1(config-router)#network 102.12.1.0 0.0.0.3 area 0

Configuration OSPF R2:

R2(config)#router ospf 1
R2(config-router)#router-id 2.2.2.2
R2(config-router)#network 2.2.2.2 0.0.0.0 area 0
R2(config-router)#network 102.12.1.0 0.0.0.3 area 0

Configuration iBGP sur R1 :

R1(config)#router bgp 102
R1(config-router)#neighbor 2.2.2.2 remote-as 102
R1(config-router)#neighbor 2.2.2.2 update-source Loopback1

Configuration iBGP sur R2 :

R2(config)#router bgp 102
R2(config-router)#neighbor 1.1.1.1 remote-as 102
R2(config-router)#neighbor 1.1.1.1 update-source Loopback2

Je peux vérifier la relation de voisinage BGP avec la commande suivante :

R1#show ip bgp summary

J’ai bien ma relation de voisinage BGP. Je vais maintenant configurer les relations eBGP entre R3 et R1 et entre R2 et R4.

2 ème étape : Configuration des relations eBGP

Configuration eBGP entre R1 et R3 :

R1(config)#router bgp 102
R1(config-router)#neighbor 30.31.1.2 remote-as 333
R3(config)#router bgp 333
R3(config-router)#neighbor 30.31.1.1 remote-as 102
R3(config-router)#network 130.10.10.0 mask 255.255.255.0

Pour R3 j’annonce le réseau en /24 qui sera redistribué par la suite. Je ferais de même pour R4.

Configuration eBGP entre R2 et R4 :

R2(config)#router bgp 102
R2(config-router)#neighbor 40.42.1.2 remote-as 444
R4(config)#router bgp 444
R4(config-router)#neighbor 40.42.1.1 remote-as 102
R4(config-router)#network 140.20.20.0 mask 255.255.255.0

3 ème étape: Changement d’IP du prochain saut dans la relation iBGP entre R1 et R2.

En iBGP le next hop n’est pas modifié pour cela nous allons ajouté la directive next-hop-self au niveau de R1 et R2 :

R1(config)#router bgp 102
R1(config-router)#neighbor 2.2.2.2 next-hop-self
R2(config)#router bgp 102
R2(config-router)#neighbor 1.1.1.1 next-hop-self

Cette directive permet de modifier le next hop car en iBGP lorsque les routes sont redistribués le next hop n’est pas modifié(voir la vidéo pour plus de détails). Par exemple pour R1 le next hop sera 2.2.2.2(R2) et non 40.42.1.2 (R4) grâce à la directive next-hop-self.

Une fois que cela est fait je test la connectivité entre la loopback de R3 et de R4 :

Connectivité OK !

Fin de ce tuto ! N’hésite pas à t’abonnés et à me dire ce que tu en pense en commentaire 🙂 .

BGP : Authentification BGP et désactivation d’un voisin

Salut nouveau tuto sur BGP. Nous allons voir comment configurer l’authentification dans une relation BGP. Puis nous verrons comment désactiver un voisin BGP.

Le lien de la vidéo youtube:

La topologie :

Pour ce lab j’ai rajouté un 3 ème routeur R3 avec qui je vais configurer la relation BGP avec un mots de passe puis shuter la session BGP et la remonter après.

1 ère étape : Configuration de la relation de voisinage entre R1 et R3 avec mots de passe

Sur R1 :

 R1(config)#router bgp 100
 R1(config-router)#neighbor 160.45.10.2 remote-as 300
 R1(config-router)#neighbor 160.45.10.2 password savoiritetlab

Sur R3:

R3(config)#router bgp 300
R3(config-router)#neighbor 160.45.10.1 remote-as 100
R3(config-router)#neighbor 160.45.10.1 password savoiritetlab

2 ème étape : Désactivation de la relation de voisinage entre R1 et R3 sur R1

Pour désactiver un voisin il suffit de mettre le voisin et de rajouter shutdown comme ci-dessous :

R1(config-router)#neighbor 160.45.10.2 shutdown 
*Jul  7 09:57:47.351: %BGP-5-NBR_RESET: Neighbor 160.45.10.2 reset (Admin. shutdown)
*Jul  7 09:57:47.355: %BGP-5-ADJCHANGE: neighbor 160.45.10.2 Down Admin. shutdown
*Jul  7 09:57:47.355: %BGP_SESSION-5-ADJCHANGE: neighbor 160.45.10.2 IPv4 Unicast topology base removed from session  Admin. shutdown

On voit que la session BGP est down. On peut le voir aussi en tapant la commande suivante :

R1#show ip bgp summary 
BGP router identifier 1.1.1.1, local AS number 100
BGP table version is 9, main routing table version 9
8 network entries using 1152 bytes of memory
8 path entries using 640 bytes of memory
2/2 BGP path/bestpath attribute entries using 272 bytes of memory
1 BGP AS-PATH entries using 24 bytes of memory
0 BGP route-map cache entries using 0 bytes of memory
0 BGP filter-list cache entries using 0 bytes of memory
BGP using 2088 total bytes of memory
BGP activity 8/0 prefixes, 8/0 paths, scan interval 60 secs

Neighbor        V           AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd
150.10.10.2     4          900      26      26        9    0    0 00:19:56        4
160.45.10.2     4          300       0       0        1    0    0 00:01:11 Idle (Admin)

Si je souhaite remonter la session BGP il suffit de reprendre la commande qui me permet de shuter la session et de mettre un « no » devant :

R1(config)#router bgp 100
R1(config-router)#no neighbor 160.45.10.2 shutdown 
R1(config-router)#
*Jul  7 10:00:38.139: %BGP-5-ADJCHANGE: neighbor 160.45.10.2 Up 

La session BGP est de nouveau UP.

Voilà fin de ce tuto. N’hésitez pas à me dire ce que vous en pensez en commentaires et à vous abonnez à ma chaîen Youtube ! 😉

BGP: Résumer de Routes

Salut ! On va continuer notre lancé sur BGP. On va reprendre le LAB précédent et je vais vous montrer comment résumer les routes en BGP. C’est à dire qu’au lieu d’annoncer par exemple mes 3 /24 suivant :

  • 223.10.10.0/24
  • 223.10.20.0/24
  • 223.10.30.0/24

Je vais les annoncer en un seul réseau résumé : 223.10.0.0/16

On reste sur le même lab que le précédent tuto sauf que l’on va annoncer un nouveau préfixe résumé.

Lien vers le précédent tuto : https://savoiritetlab.com/index.php/2021/06/24/bgp-configuration-basique/

Topologie :

Ce tuto est (aussi) accompagné d’une vidéo :

1 ère étape : On configure les interfaces loopback sur les 2 routeurs:

R1(config)#interface Loopback0
R1(config-if)#ip address 223.10.10.1 255.255.255.0
R1(config-if)#exit
R1(config)#interface Loopback1
R1(config-if)#ip address 223.10.20.1 255.255.255.0
R1(config-if)#exit
R1(config)#interface Loopback2
R1(config-if)#ip address 223.10.30.1 255.255.255.0
R1(config-if)#exit

On fait de même sur R2 :

R2(config)#interface loopback 0
R2(config-if)#ip address 79.10.10.1 255.255.255.0
R2(config-if)#exit
R2(config)#interface loopback 1               
R2(config-if)#ip address 79.10.20.1 255.255.255.0
R2(config-if)#exit                               
R2(config)#interface loopback 2               
R2(config-if)#ip address 79.10.30.1 255.255.255.0

2 ème étape : Annonce du réseau résumé sur chacun des routeurs

R1(config)#router bgp 100
R1(config-router)#network 223.10.0.0 mask 255.255.0.0

R2(config)#router bgp 900
R2(config-router)#network 79.10.0.0 mask 255.255.0.0

Pour que mon réseau soit annoncés en BGP il faut qu’il soit routé. Je créer donc une route sur R1 et R2 pour que les différents réseaux soit annoncées.

R1(config)#ip route 223.10.0.0 255.255.0.0 Null 0
R2(config)#ip route 79.10.0.0 255.255.0.0 Null 0

Je peux maintenant vérifier sur R1 et R2 :


R1#show ip bgp neighbors 150.10.10.2 received-routes 
BGP table version is 9, local router ID is 150.10.10.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, 
              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter, 
              x best-external, a additional-path, c RIB-compressed, 
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop            Metric LocPrf Weight Path
 *>  79.10.0.0/16     150.10.10.2              0             0 900 i
 *>  93.50.0.0/16     150.10.10.2              0             0 900 i
 *>  93.60.0.0/16     150.10.10.2              0             0 900 i
 *>  93.70.0.0/16     150.10.10.2              0             0 900 i

Total number of prefixes 4 


R2#show ip bgp neighbors 150.10.10.1 received-routes 
BGP table version is 9, local router ID is 150.10.10.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, 
              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter, 
              x best-external, a additional-path, c RIB-compressed, 
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop            Metric LocPrf Weight Path
 *>  204.10.0.0/16    150.10.10.1              0             0 100 i
 *>  204.20.0.0/16    150.10.10.1              0             0 100 i
 *>  204.30.0.0/16    150.10.10.1              0             0 100 i
 *>  223.10.0.0/16    150.10.10.1              0             0 100 i

Total number of prefixes 4 

On remarque que je reçois bien un réseau résumé donc 1 préfixe au lieu de 3.

Fin de ce tuto merci d’avoir lu et/ou vue ma vidéo. Je vous dit à la prochaine pour un autre tuto 😀 .

BGP : Configuration Basique

Dans ce tuto on va voir comment configurer une session BGP basique et en prime une vidéo Youtube qui accompagne ce tuto !!!

Lien de la vidéo :

La topologie (très simple) :

Le but de ce tuto établir la relation BGP entre R1 et R2 et annoncer les différents préfixes commençant par 204 et 93. On utilisera le réseau 150.10.10.0/30 pour l’interco IP entre R1 et R2.

1 ère étape : Configuration de l’interco IP

Tout d’abord sur R1 :

R1(config)#interface GigabitEthernet0/0
R1(config-if)#ip address 150.10.10.1 255.255.255.252

On configure l’adresse IP sur R2 :

R2(config)#interface GigabitEthernet0/0
R2(config-if)#ip address 150.10.10.2 255.255.255.252

On vérifie la continuité avec un ping :

2 ème étape : Configuration de la session BGP entre R1 et R2

R1 :

R1(config)#router bgp 100
R1(config-router)#neighbor 150.10.10.2 remote-as 900

R2:

R2(config)#router bgp 900
R2(config-router)#neighbor 150.10.10.1 remote-as 100

Remarque : En BGP contrairement à OSPF et EIGRP on est obligés de déclarer le voisin dans sa configuration.

On peut afficher la table de voisinage BGP :

R1#show ip bgp summary 

3 ème étape : Annonces réseaux

Comme vous pouvez le voir sur la photo au début de la photo au niveau de R1 je vais annoncer les 3 préfixes commençant par 204 et sur R2 les 3 préfixes commençant par 93.


R1(config)#router bgp 100
R1(config-router)#network 204.10.0.0 mask 255.255.0.0
R1(config-router)#network 204.20.0.0 mask 255.255.0.0
R1(config-router)#network 204.30.0.0 mask 255.255.0.0

R2(config)#router bgp 900
R2(config-router)#network 93.50.0.0 mask 255.255.0.0
R2(config-router)#network 93.60.0.0 mask 255.255.0.0
R2(config-router)#network 93.70.0.0 mask 255.255.0.0

Il faut ensuite que fasse une route Null pour chaque préfixes pour que le réseau soit annoncés en BGP car si un réseau n’est pas routé il ne sera pas annoncé en BGP.

Exemple :

ip route 204.10.0.0 255.255.0.0 Null0

Je fais la même chose pour le reste des préfixes.

4ème étape: Vérifier ce que l’on annonce et ce que l’on reçoit.

Pour vérifier ce que l’on annonce :

R1#show ip bgp neighbors 150.10.10.2 advertised-routes

Pour vérifier ce que je reçois il faut au préalable activer le « soft-reconfiguration inbound » sur le voisin BGP

R1(config)#router bgp 100
R1(config-router)#neighbor 150.10.10.2 soft-reconfiguration inbound

Ensuite je peux taper la commande qui me permet de voir les routes reçues :

R1#show ip bgp neighbors 150.10.10.2 received-routes 

Je fait la même chose sur R2.

Tuto terminé 😀 !

J’espère que cela vous a plu nous irons plus loin sur BGP dans de prochains tutos.A la prochaine !

Les ACLs sur CISCO (ACCESS LIST). Partie 2 : Les ACLs ETENDUES

Voici la seconde partie sur les ACLs où nous allons voir comment configurer les ACLs étendues sur un routeur CISCO.

Pour ceux qui n’ont pas vu la première partie voici le lien 🙂 :

https://savoiritetlab.com/index.php/2021/04/11/les-acls-sur-cisco-access-list-partie-1-acls-standard/

LE LAB : Nous allons avoir un réseau très simple pour ce lab. Un réseau admin(192.168.10.0/24), un réseau employés(192.168.40.0/24) et le réseau du serveur(172.16.50.0/24).

But du LAB : Il faut que seul le réseau admin puisse accèder en SSH au routeur. Il faut que le réseau admin puissent accèder à tous les services du serveur WEB (DNS et HTTP). Le réseau EMPLOYES ne pourra que pinguer et accèder au service HTTP du serveur WEB.

1 ère étape : Configuration de l’ACL étendue SSH_ROUTEUR

R1ACL2(config)#ip access-list extended SSH_ROUTEUR
R1ACL2(config-ext-nacl)#permit tcp 192.168.10.0 0.0.0.255 host 192.168.10.1 eq 22

J’aurorise le réseau admin (j’aurais pu aussi mettre que l’ip du PC admin) à accèder en SSH à mon routeur.

Etant donné que c’est une ACL étendu j’applique la règle au plus près de la source en « IN »(en entrée de l’interface):

R1ACL2(config)#interface gigabitEthernet 0/0
R1ACL2(config-if)#ip access-group SSH_ROUTEUR in 

Nous avons terminé pour la partie SSH on va s’occuper de la partie accès au serveur.

2 ème étape : Accès au serveur

Nous allons configurés 2 ACLsétendues car nous avons 2 interfaces.

Au niveau du réseau ADMIN (je vais réutiliser mon ACL SSH_ROUTEUR )

R1ACL2(config)#ip access-list extended SSH_ROUTEUR
R1ACL2(config-ext-nacl)#permit tcp 192.168.10.0 0.0.0.255 host 172.16.50.250 range www domain

J’autorise le réseau admin à interroger le port 53 et le port 80 de mon serveur.

Ensuite sur le réseau EMPLOYES :

R1ACL2(config)#ip access-list extended EMPLOYEStoSERVER
R1ACL2(config-ext-nacl)#permit tcp 192.168.40.0 0.0.0.255  host 172.16.50.250 eq 80

J’autorise le réseau EMPLOYES a interrogé mon serveur uniquement sur le port 80 (HTTP)

J’applique la règle ensuite sur mon interface :

R1ACL2(config)#interface gigabitEthernet 0/1
R1ACL2(config-if)#ip access-group EMPLOYEStoSERVER in

J’affiche la conf de mes ACLs pour vérifier que tout est ok :

R1ACL2#sh ip access-lists 
Extended IP access list SSH_ROUTEUR
    10 permit tcp 192.168.10.0 0.0.0.255 host 192.168.10.1 eq 22
    20 permit tcp 192.168.10.0 0.0.0.255 host 172.16.50.250 range domain www
Extended IP access list EMPLOYEStoSERVER
    10 permit tcp 192.168.40.0 0.0.0.255 host 172.16.50.250 eq www

Je fait aussi un show run pour voir si les règles sont bien appliqués sur les interfaces :

interface GigabitEthernet0/0
 ip address 192.168.10.1 255.255.255.0
 ip access-group ADMINtoSERVER in
 duplex auto
 speed auto
!
interface GigabitEthernet0/1
 ip address 192.168.40.1 255.255.255.0
 ip access-group EMPLOYEStoSERVER in
 duplex auto
 speed auto

Une fois terminé je peux tester mes règles sur mes différents réseaux :

Depuis le réseau ADMIN le DNS est OK :

Et je parviens à accèder en HTTP à mon serveur :

En revanche sur mon réseau EMPLOYES je ne parviens pas à interoogé mon serveur DNS car je ne l’ai pas autorisé :

L’accès WEB lui en revanche est OK car je l’ai explicitement autorisé.

Fin de ce tuto n’hésitez à laisser un commentaire et me dire ce que vous en pensez à bientôt 😀 .