Introduction
Ce document décrit comment utiliser des expressions régulières avec le protocole BGP (Border Gateway Protocol).
Conditions préalables
Exigences
Cisco recommande que vous ayez une connaissance de ce sujet :
Composants utilisés
Les informations de ce document sont basées sur la version 12.0 du logiciel Cisco IOS®.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Si votre réseau est en ligne, assurez-vous de bien comprendre l’incidence possible des commandes.
Conventions
Pour plus d'informations sur les conventions utilisées dans ce document, consultez Conventions relatives aux conseils techniques Cisco.
Informations générales
Vous pouvez utiliser des expressions régulières dans la ip as-path access-list commande avec le protocole BGP (Border Gateway Protocol). Pour plus d'informations générales sur des expressions normales, consultez la documentation Cisco sur les Expressions normales. Pour plus d'informations sur la configuration BGP de base, consultez les Études de cas BGP et Configurer un réseau BGP de base.
Scénarios de réseau
Il s’agit du schéma de réseau mentionné dans ce document.
Autoriser uniquement les réseaux provenant du système autonome 4 à accéder au routeur 1
Si vous souhaitez que le routeur 1 reçoive uniquement les routes provenant du système autonome 4 (et aucune route Internet), vous pouvez appliquer une liste d'accès entrante sur le routeur 1 :
ip as-path access-list 1 permit ^4$
router bgp 1
neighbor 10.4.4.4 remote-as 4
neighbor 10.4.4.4 route-map foo in
route-map foo permit 10
match as-path 1
Ceci garantit que seuls les réseaux provenant de l'AS 4 sont autorisés dans le routeur 1.
Autoriser seulement les réseaux qui ont traversé l'AS 4 pour accéder à l'AS 3
Si vous voulez que seuls les réseaux qui ont traversé l'AS 4 entrent dans l'AS 3 à partir du Routeur 3, vous pouvez appliquer un filtre entrant sur le Routeur 3 :
ip as-path access-list 1 permit _4_
router bgp 3
neighbor 10.2.2.2 remote-as 1
neighbor 10.2.2.2 route-map foo in
route-map foo permit 10
match as-path 1
Vous pouvez utiliser un trait bas (_) comme chaîne d'entrée et chaîne de sortie dans la commande ip as-path access-list .
Note : Dans cet exemple, l'ancrage (par exemple, il n'y a pas de ^) n'est pas utilisé, donc peu importe quels systèmes autonomes viennent avant et après AS 4.
Refuser l'accès à l'AS 3 aux réseaux provenant d'AS 4 et autoriser tous autres réseaux
Si vous voulez refuser tous les réseaux qui ont pris naissance dans l'AS 4 et autoriser toutes les autres routes à entrer dans l'AS 3 à partir du Routeur 3, vous pouvez appliquer un filtre entrant au niveau du Routeur 3 :
ip as-path access-list 1 deny _4$
ip as-path access-list 1 permit .*
router bgp 3
neighbor 10.2.2.2 remote-as 1
neighbor 10.2.2.2 route-map foo in
route-map foo permit 10
match as-path 1
Autoriser seulement les réseaux provenant de l'A4 et les AS directement attachés à l'AS 4 à accéder au routeur 1
Si vous voulez que l’AS 1 obtienne des réseaux provenant de l’AS 4 et de tous les AS directement connectés de l’AS 4, appliquez le filtre entrant suivant sur le routeur 1.
ip as-path access-list 1 permit ^4_[0-9]*$
router bgp 1
neighbor 10.4.4.4 remote-as 4
neighbor 10.4.4.4 route-map foo in
route-map foo permit 10
match as-path 1
Dans la ip as-path access-list commande, le carat (^) démarre la chaîne d'entrée et désigne AS" Le trait de soulignement (_) signifie qu'il y a une chaîne nulle dans la chaîne qui vient après AS 4" Le [0-9]* spécifie que tout AS connecté avec un numéro AS valide peut passer le filtre. L'avantage de la syntaxe [0-9]* est qu'elle vous donne la possibilité d'ajouter n'importe quel nombre d'AS sans modifier cette chaîne de commande. Pour des informations supplémentaires, voir la section Expression AS régulière.
Informations connexes