This is an old revision of the document!
Table of Contents
BGP
Configuration minimale
le minimum pour que ça marche
On suppose que notre Forti est connecté sur son port1 à un routeur, avec qui il doit monter une session BGP. Pour les besoins de notre test on va créer une interface de loopback lo0
(IP=10.0.0.1/32) que l'on annoncera dans le BGP et qui nous servira de router-id.
Paramètres :
- AS local = 65000
- IP interco local = 192.168.0.1/24
- AS distant = 65001
- IP interco distante (peer) = 192.168.0.2/24
# création des interfaces config system interface edit "port1" set vdom "root" set ip 192.168.0.1 255.255.255.0 set allowaccess ping set type physical set alias "vers routeur BGP" next edit "lo0" set vdom "root" set ip 10.0.0.1 255.255.255.255 set allowaccess ping set type loopback end end
On suppose que le routeur d'en face est correctement configuré avec la bonne IP, qu'il est UP et qu'on le PING (execute ping 192.168.0.2
).
Configuration BGP à proprement parlé :
config router bgp set as 65000 config neighbor edit "192.168.0.2" set remote-as 65001 next end # on déclare ici les réseaux qu'on annonce dans le BGP config network edit 1 set prefix 10.0.0.1 255.255.255.255 next end set router-id 10.0.0.1 end
Le router-id est un identifiant qui prend la même forme d'une adresse IP sans en être une, qu'il est conseillé de configurer sur l'équipement afin d'être sûr de ne pas avoir de doublon. C'est pour cela qu'on utilise l'IP de notre loopback.
Mot de passe MD5
Sécurité minimalisme, ça ne mange pas de pain de l'utiliser (à configurer sur les 2 peers pour que le BGP monte) ; ici on mettra le mot de passe “secreT” :
config router bgp set as 2200 config neighbor edit "192.168.0.2" set password "secreT" end
Redistribution de routes
Actuellement on redistribue déjà notre loopback lo0 (10.0.0.1/32) dans le BGP, via la directive config network
dans la section BGP. On peut également redistribuer automatiquement les routes présentent dans notre table de routage, en fonction de leur origine : connected, statique, ospf, etc
config router bgp set as 2200 # redistribuer toutes nos routes connected config redistribute "connected" set status enable end # redistribuer également toutes nos routes statiques config redistribute "static" set status enable end
Route-map
Par sécurité on peut filtrer les annonces entrantes/sortantes du BGP avec des route-map. Par exemple pour être sûr que notre peer ne nous annonce que des préfixes dans la plage 192.168.0.0/16 :
# on créer une liste de préfixe (sorte d'ACL) config router prefix-list edit "pref_BGP-in" config rule edit 1 set prefix 192.168.0.0 255.255.0.0 unset ge unset le end # on inclut cette liste dans une route-map config router route-map edit "rmap_BGP-in" config rule edit 1 set match-ip-address "pref_BGP-in" end # on l'ajoute dans notre configuration BGP pour filtrer les annonces reçues par notre peer config router bgp set as 65000 config neighbor edit "192.168.0.2" set remote-as 65001 set route-map-in "rmap_BGP-in" end
Les route-map sont utilisables également pour filtrer les annonces sortantes (set route-map-out
) ou les redistributions de routes (dans le paragraphe config redistribute xxx
).
Vérifications
get router bgp
BGP sur un VR
Pour utiliser BGP sur un virtual router, il faut le créer, activer le BGP dessus, puis rentrer dans le contexte du VR pour passer les commandes (sauf pour le VR-Default qui est déjà activé et sur lequel les commandes BGP sont appliquées par défaut).
Exemple de configuration
# création du VR-BGP avec le vlan BGP et le port 17 (interco) create vr "VR-BGP" configure vlan Default delete ports 17 configure vr VR-Default delete ports 17 configure vr VR-BGP add ports 17 create vlan 600 vr VR-BGP configure vlan 600 name "BGP" configure vlan 600 add ports 17 # activation du BGP sur le VR-BGP configure vr VR-BGP add protocol bgp # on entre dans le context du VR pour la conf BGP vr VR-BGP (configuration BGP)
Vérifications :
show vr Virtual Number of Number of Flags Router VLANs Ports -------------------------------------------------------------------------------- VR-Default 4 32 bopri-ORS46 VR-BGP 3 3 b-------U46
Le BGP (flag “b”) est bien activé sur notre VR-BGP
Suppression de la configuration BGP
configure bgp delete network 144.204.255.3/32 delete bgp neighbor X.X.X.X # mais surtout : configure bgp router-id 0.0.0.0 configure bgp AS-number 0