Authentification TCP au niveau de l’interface
Comprendre l’authentification basée sur l’interface pour les homologues non numérotés BGP
Lorsque vous déployez l’appairage non numéroté BGP, les routeurs détectent automatiquement les voisins à l’aide du protocole NDP (Neighbor Discovery Protocol) IPv6 et établissent des sessions sur des adresses IPv6 de liaison locale. Vous pouvez activer l’authentification TCP au niveau de l’interface (MD5, TCP-AO, authentification par trousseau) pour ces homologues découverts dynamiquement en associant des clés d’authentification directement aux interfaces logiques, quelle que soit l’adresse IP de l’homologue.
Les routeurs établissent des sessions BGP à l’aide d’adresses IPv6 de liaison locale par le biais de l’appairage non numéroté BGP, ce qui élimine la nécessité d’attribuer des adresses IP uniques à chaque interface point à point. Cette approche simplifie la configuration du réseau, mais pose des problèmes avec les mécanismes d’authentification TCP traditionnels qui reposent sur la connaissance préalable de l’adresse IP ou du préfixe IP des pairs. L’approche de l’authentification par interface associe la clé d’authentification directement à une interface logique. Cette configuration garantit que la session BGP initiée sur une interface configurée utilise la clé d’authentification attribuée à cette interface, quelle que soit l’adresse IP de l’homologue.
Vous pouvez configurer l’authentification pour les pairs non numérotés BGP sous la [edit protocols bgp group group-name dynamic-neighbor dyn-name] hiérarchie,
- authentication-algorithm : spécifie l’algorithme d’authentification à utiliser. Les algorithmes pris en charge sont
aes-128-cmac-96, ,aohmac-sha-1-96etmd5. - authentication-key : définit la clé d’authentification TCP-MD5.
- authentication-key-chain : spécifie le trousseau de clés d’authentification utilisé pour l’authentification TCP-AO ou trousseau TCP. Remarque : Lorsqu’un algorithme d’authentification est spécifié, il doit être configuré avec un trousseau et ne peut pas être utilisé avec une clé.
Nous prenons également en charge le routage actif ininterrompu (NSR), qui implémente des sessions homologues non numérotées BGP à l’aide de l’authentification par interface. NSR garantit que les sessions BGP restent ininterrompues pendant les basculements du plan de contrôle en préservant l’état du protocole lors du basculement du moteur de routage. Combiné à l’authentification par interface, le NSR permet aux sessions BGP d’établir des sessions sur des interfaces non numérotées afin de conserver leur état d’authentification même pendant les transitions système. Cette capacité est particulièrement utile dans les environnements à haute disponibilité où il est essentiel de maintenir des sessions de routage sécurisées et persistantes.
Avantages de l’appairage non numéroté BGP
-
Établit un appairage BGP sécurisé lors de l’activation de l’authentification pour une session BGP non numérotée.
Limites
-
La modification de la clé TCP MD5 d’une session BGP établie peut provoquer des interruptions ou redémarrer la session.
-
Cette fonctionnalité est limitée à la connectivité à saut unique dans les scénarios de routage symétrique.
Configuration de l’authentification TCP basée sur l’interface pour les homologues non numérotés BGP
Pour activer les sessions non numérotées BGP avec une authentification TCP délimitée à l’interface, configurez les options suivantes sous la [edit protocols bgp group name dynamic-neighbor name] hiérarchie.
[edit protocols bgp group name dynamic-neighbor name] user@host# set authentication-algorithm Authentication algorithm name user@host# set authentication-key MD5 authentication key (secret) user@host# set authentication-key-chain Key chain name
Mesures à prendre
Considérez les scénarios de configuration suivants pour l’authentification BGP.
- Cas d’usage 1 : Session non numérotée BGP authentifiée avec TCP-MD5 délimité par l’interface sous l’instance de routage par défaut
- Cas d’usage 2 : Session non numérotée BGP avec authentification TCP-MD5 au niveau de l’interface et configuration de plage d’interfaces sous l’instance de routage par défaut (Junos EVO uniquement)
- Cas d’usage 3 : Sessions non numérotées BGP authentifiées avec TCP-MD5 avec une interface sous une instance de routage autre que celle par défaut
- Cas d’usage 4 : Sessions non numérotées BGP authentifiées avec authentification TCP-AO au niveau de l’interface
- Cas d’usage 5 : Sessions non numérotées BGP authentifiées avec une authentification par trousseau de portée d’interface sous l’instance de routage par défaut
Cas d’usage 1 : Session non numérotée BGP authentifiée avec TCP-MD5 délimité par l’interface sous l’instance de routage par défaut
Utilisez l’extrait de configuration suivant pour configurer l’authentification MD5 délimitée à l’interface pour une session non numérotée BGP à l’aide de l’adresse link-local IPv6 pour l’interface et-0/0/1.0 sous l’instance de routage par défaut.
set interfaces et-0/0/1 unit 0 family inet6 set interfaces lo0 unit 0 family inet6 address 2001:db8::1/128 set routing-options router-id 1.1.1.1 set routing-options autonomous-system 65001 set routing-options nonstop-routing set protocols router-advertisement interface et-0/0/1.0 set protocols bgp group test peer-as 65002 set protocols bgp group test dynamic-neighbor ndp peer-auto-discovery family inet6 ipv6-nd set protocols bgp group test dynamic-neighbor ndp peer-auto-discovery interface et-0/0/1.0 set protocols bgp group test dynamic-neighbor ndp authentication-key "$9$mPF/tpB1Eyk.tORcvMX7-dwg"
Cas d’usage 2 : session non numérotée BGP avec authentification TCP-MD5 au niveau de l’interface et configuration de plage d’interfaces sous l’instance de routage par défaut (Junos EVO uniquement)
Utilisez l’extrait de configuration suivant pour configurer l’authentification MD5 délimitée à l’interface pour une session non numérotée BGP à l’aide d’une configuration par plage d’interfaces sous l’instance de routage par défaut.
set routing-options router-id 1.1.1.1 set routing-options autonomous-system 65001 set routing-options nonstop-routing set interfaces interface-range to-range member "et-0/0/[1-3]" set interfaces interface-range to-range unit 0 family inet6 set interfaces lo0 unit 0 family inet6 address 2001:db8::1/128 set protocols router-advertisement interface to-range set protocols bgp group test type external set protocols bgp group test peer-as 65002 set protocols bgp group test dynamic-neighbor ndp peer-auto-discovery family inet6 ipv6-nd set protocols bgp group test dynamic-neighbor ndp peer-auto-discovery interface to-range set protocols bgp group test dynamic-neighbor ndp authentication-key "$9$mPF/tpB1Eyk.tORcvMX7-dwg"
Cas d’usage 3 : Sessions non numérotées BGP authentifiées avec TCP-MD5 avec une interface sous une instance de routage autre que celle par défaut
Utilisez l’extrait de configuration suivant pour configurer l’authentification MD5 délimitée à l’interface avec une session non numérotée BGP sous une instance de routage autre que celle par défaut.
set routing-options router-id 1.1.1.1 set routing-options autonomous-system 65001 set routing-options nonstop-routing set interfaces et-0/0/5 unit 0 family inet6 set interfaces lo0 unit 0 family inet6 address 2001:db8::1/128 set interfaces lo0 unit 1 family inet6 address 2001:da18::1/128 set protocols router-advertisement interface et-0/0/5.0 set routing-instances vrf1 instance-type vrf set routing-instances vrf1 routing-options autonomous-system 6501 set routing-instances vrf1 routing-options router-id 11.11.11.1 set routing-instances vrf1 protocols bgp group test-v6 type external set routing-instances vrf1 protocols bgp group test-v6 peer-as 6502 set routing-instances vrf1 protocols bgp group test-v6 dynamic-neighbor ndp peer-auto-discovery family inet6 ipv6-nd set routing-instances vrf1 protocols bgp group test-v6 dynamic-neighbor ndp peer-auto-discovery interface et-0/0/5.0 set routing-instances vrf1 protocols bgp group test-v6 dynamic-neighbor ndp authentication-key "$9$mPF/tpB1Eyk.tORcvMX7-dwg" set routing-instances vrf1 interface et-0/0/5.0 set routing-instances vrf1 interface lo0.1 set routing-instances vrf1 route-distinguisher 65500:2 set routing-instances vrf1 vrf-target target:65520:200
Cas d’usage 4 : Sessions non numérotées BGP authentifiées par authentification TCP-AO avec l’interface
Utilisez l’extrait de configuration suivant pour configurer l’authentification TCP-AO au niveau de l’interface pour une session non numérotée BGP sous l’instance de routage par défaut.
set security authentication-key-chains key-chain tcpao key 1 secret "$9$OMjY1IcrlMXxdtuRSlKx7Ygo" set security authentication-key-chains key-chain tcpao key 1 start-time "2021-2-2.21:53:00 -0800" set security authentication-key-chains key-chain tcpao key 1 algorithm ao set security authentication-key-chains key-chain tcpao key 1 ao-attribute send-id 1 set security authentication-key-chains key-chain tcpao key 1 ao-attribute recv-id 1 set security authentication-key-chains key-chain tcpao key 1 ao-attribute cryptographic-algorithm hmac-sha-1-96 set routing-options router-id 1.1.1.1 set routing-options autonomous-system 65001 set routing-options nonstop-routing set interfaces et-0/0/1 unit 0 family inet6 set interfaces lo0 unit 0 family inet6 address 2001:db8::1/128 set protocols router-advertisement interface et-0/0/1.0 set protocols bgp group test type external set protocols bgp group test peer-as 65002 set protocols bgp group test dynamic-neighbor ndp authentication-algorithm ao set protocols bgp group test dynamic-neighbor ndp authentication-key-chain tcpao set protocols bgp group test dynamic-neighbor ndp peer-auto-discovery family inet6 ipv6-nd set protocols bgp group test dynamic-neighbor ndp peer-auto-discovery interface et-0/0/1.0
Cas d’usage 5 : Sessions non numérotées BGP authentifiées avec une authentification par trousseau de portée de l’interface sous l’instance de routage par défaut
Utilisez l’extrait de configuration suivant pour configurer l’authentification trousseau TCP délimitée à l’interface pour une session non numérotée BGP sous l’instance de routage par défaut.
set security authentication-key-chains key-chain chain1 key 1 secret "$9$Ueji.f5F/9paZ" set security authentication-key-chains key-chain chain1 key 1 start-time "2025-12-2.09:56:19 +0530" set interfaces et-0/0/3 unit 0 family inet6 set interfaces lo0 unit 0 family inet6 address 2001:db8::1/128 set protocols router-advertisement interface et-0/0/3.0 set protocols bgp group test type external set protocols bgp group test peer-as 65002 set protocols bgp group test local-as 65001 set protocols bgp group test dynamic-neighbor test authentication-algorithm aes-128-cmac-96 set protocols bgp group test dynamic-neighbor test authentication-key-chain chain1 set protocols bgp group test dynamic-neighbor test peer-auto-discovery family inet6 ipv6-nd set protocols bgp group test dynamic-neighbor test peer-auto-discovery interface et-0/0/3.0
Valider
Utilisez la commande pour vérifier l’authentification show bgp neighbor par interface pour les homologues non numérotés BGP.
Sortie
Dans cet exemple de sortie, vous voyez le trousseau de clés et l’algorithme d’authentification vérifiés en fonction de l’interface pour les deux homologues BGP.
user@host> show bgp neighbor
Peer: fe80::5604:17ff:fe00:5701%ge-0/0/0.0+179 AS 65002 Local: fe80::5604:17ff:fe00:4eba%ge-0/0/0.0+59438 AS 65001
Group: test Routing-Instance: master
Forwarding routing-instance: master
Type: External State: Established Flags: <Sync AutoDiscoveredNdp>
Last State: OpenConfirm Last Event: RecvKeepAlive
Last Error: None
Options: <PeerAS LocalAS Refresh>
Options: <AutheKeyChain>
Options: <GracefulShutdownRcv>
Authentication key chain: ao-chain1
Authentication algorithm: ao
Holdtime: 90 Preference: 170
Graceful Shutdown Receiver local-preference: 0
Local AS: 65001 Local System AS: 65001
Number of flaps: 0
Up/Down Time : 16
Receive eBGP Origin Validation community: Reject
Malformed attributes log interval: 300 route limit: 1000
Peer ID: 128.51.153.18 Local ID: 128.51.150.11 Active Holdtime: 90
Keepalive Interval: 30 Group index: 0 Peer index: 0 SNMP index: 1
I/O Session Thread: bgpio-0 State: Enabled
BFD: disabled, down
Local Interface: ge-0/0/0.0
NLRI for restart configured on peer: inet6-unicast
NLRI advertised by peer: inet6-unicast
NLRI for this session: inet6-unicast
AS loop check: Domain Scoped
Peer supports Refresh capability (2)
Peer supports 4 byte AS extension (peer-as 65002)
Peer does not support Addpath
Table inet6.0 Bit: 20000
RIB State: BGP restart is complete
Send state: in sync
Active prefixes: 0
Received prefixes: 0
Accepted prefixes: 0
Suppressed due to damping: 0
Advertised prefixes: 0
Stale routes from peer are kept for: 300
Peer does not support Restarter functionality
Restart flag received from the peer: Notification
NLRI that restart is negotiated for: inet6-unicast
NLRI of received end-of-rib markers: inet6-unicast
NLRI of all end-of-rib markers sent: inet6-unicast
Peer does not support LLGR Restarter functionality
Inbound convergence status: Complete
Time taken: 0
Reason: Received end-of-rib for all NLRI
Family inet6-unicast
Initial send time: 0
Initial recv time: 0
Last traffic (seconds): Received 16 Sent 16 Checked 17
Input messages: Total 3 Updates 1 Refreshes 0 Octets 112
Output messages: Total 2 Updates 0 Refreshes 0 Octets 49
Output Queue[1]: 0 (inet6.0, inet6-unicast)