SUR CETTE PAGE
Exemple : Désactiver l’héritage d’un groupe de configuration
Exemple : Utiliser le
junos-defaults
groupe de configurationExemple : Utiliser des caractères génériques avec des groupes de configuration
Comment améliorer le temps de validation lors de l’utilisation de groupes de configuration
Exemple : Configurer des ensembles d’instructions avec des groupes de configuration
Exemple : Utiliser des groupes de configuration pour configurer des entités homologues
Exemple : Configurer les noms de groupe de configuration génériques
Exemple : référencer l’instruction prédéfinie du groupe Defaults
Exemple : Afficher les instructions par défaut qui ont été appliquées à la configuration
Configurer des groupes de configuration du moteur de routage
Comment utiliser des conditions pour appliquer des groupes de configuration
Utiliser des groupes de configuration pour configurer rapidement les équipements
Utilisez des groupes de configuration pour configurer et appliquer des éléments communs qui sont réutilisés dans la même configuration.
Vue d’ensemble des groupes de configuration
Cette rubrique fournit une vue d’ensemble des groupes de configuration et du modèle héritage dans l’interface de ligne de commande Junos OS Evolved .
Fonctionnement des groupes de configuration
Les groupes de configuration vous permettent de créer un groupe contenant des instructions de configuration et de diriger l’héritage des instructions de ce groupe dans le reste de la configuration. Un même groupe peut être appliqué à différentes sections de la configuration. Différentes sections des instructions de configuration d’un groupe peuvent être héritées à différents endroits de la configuration.
Les groupes de configuration vous permettent de créer des fichiers de configuration plus petits et plus logiques, ce qui facilite la configuration et la maintenance des équipements Juniper Networks. Par exemple, vous pouvez regrouper des instructions qui sont répétées à de nombreux endroits dans la configuration, par exemple lors de la configuration d’interfaces. En regroupant les instructions, vous pouvez limiter les mises à jour de configuration au seul groupe.
Vous pouvez également utiliser des caractères génériques dans un groupe de configuration. Tout objet qui correspond à l’expression générique hérite des données de configuration du groupe.
Le mécanisme de groupe de configuration est distinct des mécanismes de regroupement utilisés ailleurs dans la configuration, tels que les groupes BGP. Les groupes de configuration fournissent un mécanisme générique que vous pouvez utiliser tout au long de la configuration, mais qui n’est connu que de l’interface de ligne de commande. Les processus logiciels individuels qui exécutent les actions dirigées par la configuration reçoivent la forme étendue de la configuration ; Ils n’ont aucune connaissance des groupes de configuration.
Modèle d’héritage
Les groupes de configuration utilisent l’héritage véritable, qui implique une relation dynamique et continue entre la source des données de configuration et la cible de ces données. La cible hérite automatiquement des valeurs de données que vous modifiez dans le groupe de configuration. La cible n’a pas besoin de contenir les informations héritées. Toutefois, les valeurs héritées peuvent être remplacées dans la cible sans affecter la source dont elles ont été héritées.
Ce modèle d’héritage vous permet de voir uniquement les informations spécifiques à l’instance sans voir les détails hérités. Un canal de commande en mode configuration permet d’afficher les données héritées.
Configurer les groupes de configuration
Pour que les zones de votre configuration héritent des instructions de configuration, vous devez d’abord placer les instructions dans un groupe de configuration. Vous appliquez ensuite ce groupe aux niveaux de la hiérarchie de configuration qui nécessitent les instructions.
Pour les zones de votre configuration qui doivent hériter des instructions de configuration :
-
Configurez les instructions dans un groupe de configuration. Pour configurer les groupes de configuration et l’héritage, vous pouvez inclure l’instruction groups au niveau de la hiérarchie [edit] :
[edit] groups {
group-name
{configuration-data
; } } -
Appliquez le groupe de configuration de l’étape 1 aux niveaux de la hiérarchie de configuration qui nécessitent les instructions.
Incluez l’instruction n’importe
apply-groups [ group-names ]
où dans la configuration où les instructions de configuration contenues dans un groupe de configuration sont nécessaires.
Créer un groupe de configuration
La CLI de Junos OS Evolved vous permet de créer des groupes réutilisables contenant des instructions de configuration. Vous pouvez appliquer ces groupes à différentes sections de la configuration où les mêmes instructions de configuration sont répétées plusieurs fois.
Lorsque vous appliquez le groupe à différentes sections de la configuration, cette partie de la configuration hérite des instructions configurées dans le groupe. Les groupes de configuration suivent la règle d’héritage selon laquelle une relation dynamique et continue est définie entre la source des données de configuration et la cible de ces données. Si vous modifiez les valeurs de données dans le groupe de configuration, la cible héritée reflète automatiquement les modifications.
Vous pouvez remplacer les valeurs de la configuration cible si nécessaire, ce qui n’affecte pas la source dans le groupe.
Ce modèle d’héritage vous permet de voir uniquement les informations spécifiques à l’instance sans voir les détails hérités. Un canal de commande en mode configuration permet d’afficher les données héritées. Par exemple, vous pouvez configurer toutes vos et-0/0/1
interfaces pour la valeur MTU de 1500.
Pour configurer toutes vos et-0/0/1
interfaces avec la valeur MTU de 1500 :
-
Créez un groupe avec une valeur MTU de 1500 :
[edit groups group-1] lab@vSRX3-05# show interfaces { et-0/0/1 { unit 0 { family inet { mtu 1500; } } } }
-
Ensuite, vous appliquez le groupe dans la configuration de l’interface.
[edit interfaces et-0/0/1] lab@vSRX3-05# set apply-groups group-1
-
Affichez la configuration héritée.
[edit] lab@vSRX3-05# show interfaces et-0/0/1 | display inheritance unit 0 { family inet { ## ## '1500' was inherited from group 'group-1' ## mtu 1500; address 5.0.0.254/24; } }
Si vous souhaitez configurer la valeur MTU pour l’interface et-0/0/1
dans différentes parties de la configuration, vous pouvez appliquer l’instruction group à l’aide de l’option apply-groups
. Si vous effectuez cette opération manuellement et que vous souhaitez augmenter la MTU par la suite, vous devrez peut-être modifier manuellement chaque interface. Si vous utilisez un groupe de configuration, vous pouvez modifier la configuration du groupe, ce qui met automatiquement à jour toutes les interfaces associées.
Vous pouvez également utiliser des caractères génériques dans un groupe de configuration pour permettre à tout objet générique d’hériter des données de configuration. Par exemple:
[edit groups group-1] lab@vSRX3-05# show interfaces { et-* { unit 0 { family inet { mtu 1500; } } } }
Application d’un groupe de configuration
Si vous souhaitez qu’une configuration d’équipement Juniper Networks hérite des instructions d’un groupe de configuration, incluez-les apply-groups
dans la configuration.
apply-groups [ group-names ];
Si vous spécifiez plusieurs noms de groupe, vous devez les répertorier par ordre de priorité d’héritage. Les données de configuration du premier groupe sont prioritaires sur les données des groupes suivants.
Pour les périphériques qui prennent en charge plusieurs moteurs de routage, vous pouvez spécifier et re1
regrouper re0
des noms. La configuration spécifiée dans le groupe re0
est appliquée uniquement si le moteur de routage actuel se trouve dans l’emplacement 0. De même, la configuration spécifiée dans group re1
est appliquée uniquement si le moteur de routage actuel se trouve dans l’emplacement 1. Par conséquent, les deux moteurs de routage peuvent utiliser le même fichier de configuration, chacun utilisant uniquement les instructions de configuration qui s’appliquent à lui. Chaque re0
ou re1
groupe contient au minimum la configuration du nom d’hôte et de l’interface de gestion (fxp0
). Si chaque moteur de routage utilise une interface de gestion différente, le groupe doit également contenir la configuration du routeur de secours et des routes statiques.
Vous ne pouvez inclure qu’une apply-groups
seule instruction à chaque niveau spécifique de la hiérarchie de configuration. L’instruction apply-groups
à un niveau hiérarchique spécifique répertorie les groupes de configuration à ajouter à la liste des groupes de configuration de l’instruction conteneure.
Les valeurs spécifiées au niveau hiérarchique spécifique remplacent les valeurs héritées du groupe de configuration.
Les groupes répertoriés dans les instructions imbriquées apply-groups
sont prioritaires sur les groupes dans les instructions externes. Dans l’exemple suivant, le voisin 10.0.0.1
BGP hérite d’abord des données de configuration du groupe one
. Il hérite ensuite des données de configuration de groupe two
et de groupe three
. Les données de configuration d’un groupe one
remplacent les données de tout autre groupe. Les données du groupe ten
ne sont utilisées que si une instruction n’est contenue dans aucun autre groupe.
apply-groups [ eight nine ten ]; protocols { apply-groups seven; bgp { apply-groups [ five six ]; group some-bgp-group { apply-groups four; neighbor 10.0.0.1 { apply-groups [ one two three ]; } } } }
Le niveau racine est le système logique par défaut. Lorsque vous configurez un groupe défini pour le niveau racine, vous ne pouvez pas appliquer ce groupe à un système logique autre que celui par défaut sous le niveau hiérarchique [edit logical-systems logical-system-name]
. Bien que l’appareil accepte la validation si vous appliquez le groupe, le groupe de configuration ne prend pas effet pour le système logique autre que celui par défaut. Au lieu de cela, vous pouvez créer un groupe de configuration supplémentaire au niveau racine et l’appliquer dans le système logique. Vous pouvez également modifier le groupe d’origine afin qu’il inclue la configuration des niveaux hiérarchiques du système logique par défaut et non par défaut.
Exemple : Créer et appliquer des groupes de configuration
Cet exemple illustre la création et l’application de groupes de configuration. Dans cet exemple, la configuration SNMP est divisée entre la hiérarchie de configuration de groupe basic
et la hiérarchie de configuration normale.
Vous bénéficiez de nombreux avantages en plaçant la configuration spécifique au système (contact SNMP) dans un groupe de configuration, la séparant ainsi de la hiérarchie de configuration normale :
-
Vous pouvez remplacer l’une ou l’autre section sans supprimer les données de l’autre, à l’aide de la
load replace
commande. -
Vous pouvez définir un contact pour une boîte spécifique, car les données du groupe sont masquées par les données spécifiques à l’appareil.
[edit] groups { basic { # User-defined group name snmp { # This group contains some SNMP data contact "My Engineering Group"; community BasicAccess { authorization read-only; } } } } apply-groups basic; # Enable inheritance from group "basic" snmp { # Some normal (non-group) configuration location "West of Nowhere"; }
Cette configuration est équivalente à ce qui suit :
[edit] snmp { location "West of Nowhere"; contact "My Engineering Group"; community BasicAccess { authorization read-only; } }
Exemple : Désactiver l’héritage d’un groupe de configuration
Vous pouvez désactiver l’héritage d’un groupe de configuration à n’importe quel niveau, à l’exception du niveau supérieur de la hiérarchie. Pour désactiver l’héritage, vous devez inclure l’instruction suivante apply-groups-except
dans la configuration :
apply-groups-except [ group-names ];
Cette instruction est utile lorsque vous l’utilisez apply-group
à un niveau hiérarchique spécifique, mais que vous souhaitez également remplacer les valeurs héritées du groupe de configuration pour un paramètre spécifique.
Exemple : Désactiver l’héritage sur l’interface et-1/1/0
Dans l’exemple suivant, l’instruction apply-groups
est appliquée globalement au niveau des interfaces. L’instruction apply-groups-except
est également appliquée à l’interface et-1/1/0
afin qu’elle utilise les valeurs par défaut des hold-time
instructions and link-mode
.
[edit] groups { # "groups" is a top-level statement global { # User-defined group name interfaces { <*> { hold-time down 640; link-mode full-duplex; } } } } apply-groups global; interfaces { et-1/1/0 { apply-groups-except global; # Disables inheritance from group "global" # et-1/1/0 uses default value for “hold-time” # and "link-mode" } }
Les groupes de configuration peuvent créer une certaine confusion quant aux valeurs réelles utilisées par l’appareil, car un appareil peut hériter des données de configuration des groupes de configuration. Pour afficher les valeurs réelles utilisées par l’appareil, utilisez la display inheritance
commande après le tube ( | ) dans une show
commande. Cette commande affiche les instructions héritées au niveau auquel elles sont héritées et du groupe dont elles ont été héritées :
[edit]
user@host# show | display inheritance
snmp {
location "West of Nowhere";
##
## 'My Engineering Group' was inherited from group 'basic'
##
contact "My Engineering Group";
##
## 'BasicAccess' was inherited from group 'basic'
##
community BasicAccess {
##
## 'read-only' was inherited from group 'basic'
##
authorization read-only;
}
}
Pour afficher la configuration développée (la configuration, y compris les instructions héritées) sans les lignes ##, vous utilisez la except
commande après le canal dans une show
commande :
[edit]
user@host# show | display inheritance | except ##
snmp {
location "West of Nowhere";
contact "My Engineering Group";
community BasicAccess {
authorization read-only;
}
}
L’utilisation de l’option display inheritance | except ##
supprime toutes les lignes avec ##
. Par conséquent, il se peut que vous ne puissiez pas afficher les informations sur les mots de passe ou d’autres données importantes lorsqu’elles ##
sont utilisées. Pour afficher les détails complets de la configuration avec toutes les informations (sans seulement les commentaires marqués d’un ##
), vous utilisez l’option no-comments
avec la display inheritance
commande :
[edit]
user@host# show | display inheritance no-comments
snmp {
location "West of Nowhere";
contact "My Engineering Group";
community BasicAccess {
authorization read-only;
}
}
Exemple : Utiliser le junos-defaults
groupe de configuration
Junos OS Evolved fournit un groupe de configuration caché et immuable appelé junos-defaults
qui est automatiquement appliqué à la configuration de votre équipement. Le junos-defaults
groupe contient des instructions préconfigurées qui contiennent des valeurs prédéfinies pour les applications courantes. Certaines de ces instructions doivent être référencées pour être prises en compte, telles que les définitions d’applications (par exemple, les paramètres FTP ou telnet). D’autres instructions sont appliquées automatiquement, telles que les paramètres du terminal.
De nombreux identificateurs inclus dans le groupe de junos-defaults
configuration commencent par le nom junos-
. Les identifiants commençant par le nom junos-
étant réservés à l’usage de Juniper Networks, vous ne pouvez pas définir d’objets de configuration utilisant ce nom.
Vous ne pouvez pas l’inclure junos-defaults
en tant que nom de groupe de configuration dans une apply-groups
instruction.
Pour afficher l’ensemble des instructions prédéfinies disponibles dans le junos-defaults
groupe, vous exécutez la show groups junos-defaults
commande configuration mode au niveau supérieur de la configuration. L’exemple suivant affiche une liste partielle des groupes par défaut de Junos :
user@host# show groups junos-defaults
# Make vt100 the default for the console port
system {
ports {
console type vt100;
}
}
applications {
# File Transfer Protocol
application junos-ftp {
application-protocol ftp;
protocol tcp;
destination-port 21;
}
# Trivial File Transfer Protocol
application junos-tftp {
application-protocol tftp;
protocol udp;
destination-port 69;
}
# RPC port mapper on TCP
application junos-rpc-portmap-tcp {
application-protocol rpc-portmap;
protocol tcp;
destination-port 111;
}
# RPC port mapper on UDP
}
Pour référencer les instructions disponibles à partir junos-defaults
du groupe, vous devez inclure l’instruction sélectionnée junos-
default-name
au niveau hiérarchique applicable.
Pour afficher la liste des applications du junos-defaults
groupe, vous émettez le show configuration groups junos-defaults applications
fichier . Les applications qui commencent par junos-
sont configurées par défaut par Juniper Networks. L’exemple suivant affiche une liste partielle des applications de groupes par défaut de Junos.
user@host>show configuration groups junos-defaults applications
## protect: groups junos-defaults
##
#
# File Transfer Protocol
#
application junos-ftp {
application-protocol ftp;
protocol tcp;
destination-port 21;
}
#
# Trivial File Transfer Protocol
#
application junos-ftp-data {
application-protocol ftp-data;
protocol tcp;
destination-port 20;
}
application junos-tftp {
application-protocol tftp;
protocol udp;
destination-port 69;
}
#
# Two-Way Active Measurement Protocol
#
application junos-twamp {
application-protocol twamp;
protocol tcp;
destination-port 862;
}
#
# Real Time Streaming Protocol
#
application junos-rtsp {
application-protocol rtsp;
protocol tcp;
destination-port 554;
}
#
# Network Basic Input Output System - networking protocol used on
# Windows networks session service port
#
application junos-netbios-session {
protocol tcp;
destination-port 139;
}
application junos-smb-session {
protocol tcp;
destination-port 445;
}
application junos-ssh {
protocol tcp;
destination-port 22;
}
application junos-telnet {
protocol tcp;
destination-port 23;
}
Exemple : Utiliser des caractères génériques avec des groupes de configuration
Vous pouvez utiliser des caractères génériques pour identifier des noms et permettre à une instruction de fournir des données pour une variété d’instructions.
L’utilisation de caractères génériques dans les données de configuration normale se fait dans un style cohérent avec celui utilisé avec les caractères génériques de shell UNIX traditionnels. Dans ce style, vous pouvez utiliser les métacaractères suivants :
-
Astérisque (
*
) : correspond à n’importe quelle chaîne de caractères. -
Point d’interrogation (
?
) : correspond à n’importe quel caractère. -
Crochet ouvert (
[
) : introduit une classe de caractères. -
Crochet fermant (
]
) : indique la fin d’une classe de caractères. Si la parenthèse fermante est manquante, la parenthèse ouverte correspond à une parenthèse[
ouverte plutôt que d’introduire une classe de caractères. -
Une classe de caractères correspond à l’un des caractères entre crochets. Au sein d’un groupe de configuration, vous devez mettre entre guillemets un nom d’interface qui inclut une classe de caractères.
-
Trait d’union (
-
) : spécifie une plage de caractères. -
Point d’exclamation (
!
) : vous pouvez compléter la classe de caractères en faisant d’un point d’exclamation le premier caractère de la classe de caractères. Pour inclure une parenthèse fermante (]
) dans une classe de caractères, faites-en le premier caractère répertorié (après le!
, le cas échéant). Pour inclure un signe moins, faites-en le premier ou le dernier caractère de la liste.
Si vous utilisez un identificateur à l’intérieur de la groups
hiérarchie, commencez le nom de l’identificateur par autre chose que <
. Toutefois, si vous définissez une instruction générique, vous pouvez utiliser <
car l’instruction générique doit avoir une fermeture >
.
L’utilisation de caractères génériques dans les groupes de configuration suit les mêmes règles que leur utilisation pour une configuration normale. Cependant, <
et >
ont une signification particulière lorsqu’ils sont utilisés sous la groups
hiérarchie. Dans la groups
hiérarchie, vous devez placer entre crochets tout terme utilisant un modèle de caractères génériques <pattern> pour le différencier des autres caractères génériques du fichier de configuration.
[edit] groups { sonet-default { interfaces { <et-*> { sonet-options { payload-scrambler; rfc-2615; } } } } }
Les expressions génériques correspondent (et fournissent des données de configuration) aux instructions existantes dans la configuration qui correspondent uniquement à leur expression. Dans l’exemple précédent, l’expression <et-*>
transmet son sonet-options
instruction à toute interface qui correspond à l’expression et-*
.
L’exemple suivant montre comment spécifier une plage d’interfaces :
[edit] groups { gigabit-ethernet-interfaces { interfaces { "<et-1/2/[5-8]>" { description "These interfaces reserved for Customer ABC"; } } } }
Les chevrons vous permettent de passer des caractères génériques normaux sans modification. Dans toute correspondance au sein de la configuration, qu’elle soit effectuée avec ou sans caractères génériques, le premier élément rencontré dans la configuration qui correspond est utilisé. Dans l’exemple suivant, les données des groupes BGP génériques sont héritées dans l’ordre dans lequel les groupes sont répertoriés.
- La valeur de préférence de
<*a*>
remplace la préférence dans<*b*>
. - La
p
valeur de<*c*>
remplace celle de<*d*>
Les valeurs de données de l’un de ces groupes remplacent les valeurs de données de abcd
:
[edit] user@host#show
groups { one { protocols { bgp { group <*a*> { preference 1; } group <*b*> { preference 2; } group <*c*> { out-delay 3; } group <*d*> { out-delay 4; } group abcd { preference 10; hold-time 10; out-delay 10; } } } } } protocols { bgp { group abcd { apply-groups one; } } } [edit] user@host#show | display inheritance
protocols { bgp { group abcd { ## ## ’1’ was inherited from group ’one’ ## preference 1; ## ## ’10’ was inherited from group ’one’ ## hold-time 10; ## ## ’3’ was inherited from group ’one’ ## out-delay 3; } } }
Comment améliorer le temps de validation lors de l’utilisation de groupes de configuration
Les groupes de configuration permettent d’appliquer des configurations à d’autres hiérarchies sans avoir à ressaisir les données de configuration. Vous pouvez spécifier tous les détails de configuration d’un groupe de configuration. Vous pouvez également utiliser des caractères génériques dans les groupes de configuration pour configurer des plages de données, sans détailler chaque ligne de configuration. Une autre façon d’utiliser les groupes de configuration consiste à créer un chemin d’héritage qui inclut une longue chaîne de configurations à appliquer.
Lorsqu’une configuration qui utilise des groupes de configuration est validée, le processus de validation se développe et lit toutes les données de configuration du groupe en mémoire pour appliquer les configurations comme prévu. Les performances de validation peuvent être affectées négativement si de nombreux groupes de configuration sont appliqués, en particulier si les groupes de configuration utilisent de manière intensive des caractères génériques.
Si votre système utilise de nombreux groupes de configuration qui utilisent des caractères génériques, vous pouvez configurer l’instruction au niveau de la hiérarchie pour améliorer les persist-groups-inheritance
[edit system commit]
performances au moment de la validation.
L’utilisation de cette option permet au système de construire le chemin d’héritage pour chaque groupe de configuration à l’intérieur de la base de données plutôt que dans la mémoire de processus. Cette modification peut améliorer les performances au moment de la validation. Cependant, cela peut également augmenter la taille de la base de données.
Exemple : Configurer des ensembles d’instructions avec des groupes de configuration
Lorsqu’il existe des ensembles d’instructions dans des groupes de configuration, toutes les valeurs sont héritées. Par exemple:
[edit] user@host#show
groups { basic { snmp { interface et-1/1/1.0; } } } apply-groups basic; snmp { interface et-0/0/0.0; } [edit] user@host#show | display inheritance
snmp { ## ## ’et-1/1/1.0’ was inherited from group ’basic’ ## interface [ et-0/0/0.0 et-1/1/1.0 ]; }
Pour les ensembles qui ne sont pas affichés entre parenthèses, toutes les valeurs sont également héritées. Par exemple:
[edit] user@host#show
groups { worldwide { system { name-server { 10.0.0.100; 10.0.0.200; } } } } apply-groups worldwide; system { name-server { 10.0.0.1; 10.0.0.2; } } [edit] user@host#show | display inheritance
system { name-server { ## ## ’10.0.0.100’ was inherited from group ’worldwide’ ## 10.0.0.100; ## ## ’10.0.0.200’ was inherited from group ’worldwide’ ## 10.0.0.200; 10.0.0.1; 10.0.0.2; } }
Exemple : Utiliser des groupes de configuration pour configurer une adresse IP cohérente pour l’interface de gestion
Sur les équipements dotés de plusieurs moteurs de routage, chaque moteur de routage est configuré avec une adresse IP distincte pour l’interface de gestion. Pour accéder au moteur de routage principal, vous devez savoir quel moteur de routage est actif et utiliser l’adresse IP appropriée.
Une autre option pour un accès cohérent au moteur de routage principal consiste à configurer une adresse IP supplémentaire. Vous utilisez ensuite cette adresse pour l’interface de gestion, quel que soit le moteur de routage actif. Cette adresse IP supplémentaire est active uniquement sur l’interface de gestion du moteur de routage principal. Lors du basculement, l’adresse est déplacée vers le nouveau moteur de routage principal.
Cet exemple configure l’adresse 10.17.40.131
pour les deux moteurs de routage et inclut une master-only
instruction. Avec cette configuration, l’adresse 10.17.40.131
est active uniquement sur le moteur de routage principal. L’adresse reste cohérente quel que soit le moteur de routage actif. L’adresse 10.17.40.132
est affectée à re0:mgmt-0
le re0
, et 10.17.40.133
est affectée à re1:mgmt-0
le re1
.
[edit groups re0 interfaces re0:mgmt-0] unit 0 { family inet { address 10.17.40.131/25 { master-only; } address 10.17.40.132/25; } } [edit groups re1 interfaces re1:mgmt-0] unit 0 { family inet { address 10.17.40.131/25 { master-only; } address 10.17.40.133/25; } }
Cette fonctionnalité est disponible sur tous les routeurs équipés de deux moteurs de routage.
-
Vous devez attribuer des adresses IP uniques à deux interfaces qui ont des adresses dupliquées sur les interfaces privées et publiques. Lorsque GRES (Graceful moteur de routage Switchover) est activé, l’interface de ligne de commande affiche un message d’erreur de validation approprié si elle trouve des adresses identiques. Cette erreur peut se produire si vous configurez la même adresse IP pour une interface de gestion ou une interface interne telle que et une interface physique externe telle que
re0:mgmt-0
et-0/0/1
.
Exemple : Utiliser des groupes de configuration pour configurer des entités homologues
Cet exemple crée un groupe some-isp
qui contient des données de configuration relatives à un autre FAI. Il insère ensuite des apply-group
instructions à différents points pour permettre à ces emplacements dans la hiérarchie de configuration d’hériter de ces données.
[edit] user@host#show
groups { some-isp { interfaces { <xe-*> { gigether-options { flow-control; } } } protocols { bgp { group <*> { neighbor <*> { remove-private; } } } pim { interface <*> { version 1; } } } } } interfaces { xe-0/0/0 { apply-groups some-isp; unit 0 { family inet { address 10.0.0.1/24; } } } } protocols { bgp { group main { neighbor 10.254.0.1 { apply-groups some-isp; } } } pim { interface xe-0/0/0.0 { apply-groups some-isp; } } } [edit] user@host#show | display inheritance
interfaces { xe-0/0/0 { ## ## "gigether-options" was inherited from group "some-isp" ## gigether-options { ## ## "flow-control" was inherited from group "some-isp" ## flow-control; } unit 0 { family inet { address 10.0.0.1/24; } } } } protocols { bgp { group main { neighbor 10.254.0.1 { ## ## "remove-private" was inherited from group "some-isp" ## remove-private; } } } pim { interface xe-0/0/0.0 { ## ## "1" was inherited from group "some-isp" ## version 1; } } }
Exemple : Configurer les noms de groupe de configuration génériques
Les caractères génériques sont des noms de groupe de configuration qui utilisent des caractères spéciaux pour créer un modèle que vous pouvez appliquer à plusieurs instructions. Les caractères génériques sont utiles pour copier un ensemble d’options de configuration dans plusieurs groupes de configuration différents. Vous devez configurer correctement votre nom générique pour vous assurer que les options de configuration génériques sont copiées dans les groupes de configuration appropriés.
Cet exemple configure différentes valeurs pour les groupes de caractères génériques <*-major>
et <*-minor>
sous l’instruction label-switched-path
. L’astérisque (*
) représente une section du nom générique qui peut correspondre à n’importe quelle chaîne de caractères. Par exemple, les options de configuration ci-dessous label-switched-path <*-major>
sont transmises à label-switched-path metro-major
tout autre label-switched-path
groupe de configuration contenant -major
dans son nom.
[edit] user@host#show
groups { mpls-conf { protocols { mpls { label-switched-path <*-major> { retry-timer 5; bandwidth 155m; optimize-timer 60; } label-switched-path <*-minor> { retry-timer 15; bandwidth 64k; optimize-timer 120; } } } } } apply-groups mpls-conf; protocols { mpls { label-switched-path metro-major { to 10.0.0.10; } label-switched-path remote-minor { to 10.0.0.20; } } } [edit] user@host#show | display inheritance
protocols { mpls { label-switched-path metro-major { to 10.0.0.10; ## ## "5" was inherited from group "mpls-conf" ## retry-timer 5; ## "155m" was inherited from group "mpls-conf" ## bandwidth 155m; ## ## "60" was inherited from group "mpls-conf" ## optimize-timer 60; } label-switched-path remote-minor { to 10.0.0.20; ## ## "15" was inherited from group "mpls-conf" ## retry-timer 15; ## ## "64k" was inherited from group "mpls-conf" ## bandwidth 64k; ## ## "120" was inherited from group "mpls-conf" ## optimize-timer 120; } } }
Exemple : référencer l’instruction prédéfinie du groupe Defaults
L’exemple suivant est une instruction prédéfinie du groupe defaults disponible pour FTP dans un pare-feu dynamique :
[edit] groups { junos-defaults { applications { application junos-ftp {# Use FTP default configuration application-protocol ftp; protocol tcp; destination-port 21; } } }
Pour référencer une instruction par défaut prédéfinie à partir du groupe defaults, incluez l’instruction junos-default-name
au niveau hiérarchique applicable. Par exemple, pour référencer l’instruction par défaut de FTP dans un pare-feu dynamique, incluez l’instruction junos-ftp
au niveau de la [edit services stateful-firewall rule my-rule term my-term from applications]
hiérarchie :
[edit] services { stateful-firewall { rule my-rule { term my-term { from { applications junos-ftp; #Reference predefined statement, junos-ftp } } } } }
Exemple : Afficher les instructions par défaut qui ont été appliquées à la configuration
Pour afficher les valeurs par défaut qui ont été appliquées à la configuration de l’appareil, vous exécutez la show | display inheritance defaults
commande. Cet exemple affiche les valeurs par défaut héritées au niveau de la [edit system ports]
hiérarchie :
user@host# show system ports | display inheritance defaults
## ## 'console' was inherited from group 'junos-defaults'
## 'vt100' was inherited from group 'junos-defaults'
## console type vt100;
Si vous choisissez de ne pas utiliser les instructions par défaut existantes, vous pouvez créer vos propres groupes de configuration manuellement.
Pour afficher les informations de configuration complètes en omettant les commentaires marqués d’un ##
, utilisez l’option no-comments
avec la display inheritance
commande.
Configurer des groupes de configuration du moteur de routage
Dans un appareil avec deux moteurs de routage, les deux moteurs de routage doivent partager la même configuration. Cette configuration garantit que les deux configurations du moteur de routage sont identiques. Dans cette configuration, créez deux groupes de moteurs de routage, un pour chaque moteur de routage. Dans ces groupes, vous spécifiez les paramètres spécifiques au moteur de routage.
Pour configurer un groupe de configuration du moteur de routage :
Comment utiliser des conditions pour appliquer des groupes de configuration
Vous pouvez utiliser l’instruction when
au niveau de la [edit groups group-name]
hiérarchie pour définir les conditions dans lesquelles appliquer un groupe de configuration.
Vous pouvez configurer un groupe à appliquer en fonction du type de châssis, du modèle ou du moteur de routage, du membre du châssis virtuel , du nœud de cluster et de l’heure de début et de fin facultative de la journée ou de la date.
Par exemple, vous pouvez utiliser l’instruction when
pour créer un groupe de configuration générique pour chaque type de nœud, puis appliquer la configuration en fonction de certaines propriétés de nœud, telles que le châssis ou le modèle.