BFD für BGP-Sitzungen
Grundlegendes zu BFD für BGP
Das BFD-Protokoll (Bidirectional Forwarding Detection) ist ein einfacher Hello-Mechanismus, der Fehler in einem Netzwerk erkennt. Hello-Pakete werden in einem festgelegten, regelmäßigen Intervall gesendet. Ein Nachbarfehler wird erkannt, wenn das Routinggerät nach einem bestimmten Intervall keine Antwort mehr empfängt. BFD funktioniert mit einer Vielzahl von Netzwerkumgebungen und Topologien. Die Fehlererkennungs-Timer für BFD haben kürzere Zeitlimits als die standardmäßigen Fehlererkennungsmechanismen für BGP und bieten daher eine schnellere Erkennung.
Es ist kontraproduktiv, sowohl BFD als auch einen ordnungsgemäßen Neustart für BGP auf demselben Gerät zu konfigurieren. Wenn eine Schnittstelle ausfällt, erkennt BFD dies sofort, stoppt die Weiterleitung des Datenverkehrs und die BGP-Sitzung fällt aus, während ein ordnungsgemäßer Neustart den Datenverkehr trotz des Schnittstellenfehlers weiterleitet, dieses Verhalten kann zu Netzwerkproblemen führen. Daher empfehlen wir nicht, sowohl BFD als auch einen ordnungsgemäßen Neustart auf demselben Gerät zu konfigurieren.
EX4600-Switches unterstützen keine Mindestintervallwerte von weniger als 1 Sekunde.
QFX5110-, QFX5120-, QFX5200- und QFX5210-Switches unterstützen Multihop Bidirectional Forwarding Detection (BFD) Inline-Keep-Alive-Unterstützung, wodurch Sitzungen in weniger als 1 Sekunde konfiguriert werden können. Die Leistung kann je nach Systemauslastung variieren. Es werden 10 Inline-BFD-Sitzungen unterstützt, die mit einem Timer von 150 x 3 Millisekunden konfiguriert werden können. Single-Hop-Sitzungen werden ebenfalls unterstützt.
Die Timer für die BFD-Fehlererkennung können so eingestellt werden, dass sie schneller oder langsamer sind. Je niedriger der Timer-Wert für die BFD-Fehlererkennung ist, desto schneller ist die Fehlererkennung und umgekehrt. Die Timer können sich z. B. an einen höheren Wert anpassen, wenn die Nachbarschaft fehlschlägt (d. h., der Timer erkennt Fehler langsamer). Oder ein Nachbar kann einen höheren Wert für einen Timer aushandeln als den konfigurierten Wert. Die Timer passen sich an einen höheren Wert an, wenn eine BFD-Sitzungsklappe mehr als dreimal in einem Zeitraum von 15 Sekunden (15000 Millisekunden) auftritt. Ein Backoff-Algorithmus erhöht das Empfangsintervall (Rx) um zwei, wenn die lokale BFD-Instanz der Grund für die Sitzungsklappe ist. Das Übertragungsintervall (Tx) wird um zwei erhöht, wenn die Remote-BFD-Instanz der Grund für die Sitzungsklappe ist. Sie können den Befehl verwenden, um BFD-Intervall-Timer auf ihre konfigurierten Werte zurückzusetzen.clear bfd adaptation
Der Befehl ist trefferlos, d. h., der Befehl wirkt sich nicht auf den Datenverkehrsfluss auf dem Routinggerät aus.clear bfd adaptation
Bei allen Firewalls der SRX-Serie führt eine hohe CPU-Auslastung, die aus Gründen wie CPU-intensiven Befehlen und SNMP-Walks ausgelöst wird, dazu, dass das BFD-Protokoll bei der Verarbeitung großer BGP-Updates flattert. (Die Plattformunterstützung hängt von der Junos OS-Version in Ihrer Installation ab.)
Ab Junos OS Version 15.1X49-D100 unterstützen SRX340-, SRX345- und SRX1500 Geräte dedizierte BFD.
Ab Junos OS Version 15.1X49-D100 unterstützen SRX300- und SRX320-Geräte Echtzeit-BFD.
Ab Junos OS Version 15.1X49-D110 unterstützen SRX550M Geräte dediziertes BFD.
In Junos OS Version 8.3 und höher wird BFD für interne BGP- (IBGP) und externe Multihop-BGP-Sitzungen (EBGP) sowie für Single-Hop-EBGP-Sitzungen unterstützt. In Junos OS Version 9.1 bis Junos OS Version 11.1 unterstützt BFD IPv6-Schnittstellen nur in statischen Routen. In Junos OS Version 11.2 und höher unterstützt BFD IPv6-Schnittstellen mit BGP.
Siehe auch
Beispiel: Konfigurieren von BFD für interne BGP-Peer-Sitzungen
In diesem Beispiel wird gezeigt, wie interne BGP-Peersitzungen (IBGP) mit dem BFD-Protokoll (Bidirectional Forwarding Detection) konfiguriert werden, um Fehler in einem Netzwerk zu erkennen.
Anforderungen
Über die Geräteinitialisierung hinaus ist keine spezielle Konfiguration erforderlich, bevor Sie dieses Beispiel konfigurieren.
Überblick
Die Mindestkonfiguration zum Aktivieren von BFD in IBGP-Sitzungen besteht darin, die Anweisung in die BGP-Konfiguration aller Nachbarn aufzunehmen, die an der BFD-Sitzung teilnehmen.bfd-liveness-detection minimum-interval
Die Anweisung gibt die minimalen Sende- und Empfangsintervalle für die Fehlererkennung an.minimum-interval
Insbesondere stellt dieser Wert das minimale Intervall dar, nach dem das lokale Routinggerät Hello-Pakete überträgt, sowie das minimale Intervall, in dem das Routinggerät erwartet, eine Antwort von einem Nachbarn zu erhalten, mit dem es eine BFD-Sitzung eingerichtet hat. Sie können einen Wert zwischen 1 und 255.000 Millisekunden konfigurieren.
Optional können Sie die minimalen Sende- und Empfangsintervalle separat mit der und-Anweisung angeben.transmit-interval minimum-interval
minimum-receive-interval
Weitere Informationen zu diesen und anderen optionalen BFD-Konfigurationsanweisungen finden Sie unter .bfd-liveness-detection
BFD ist ein intensives Protokoll, das Systemressourcen verbraucht. Die Angabe eines Mindestintervalls für BFD von weniger als 100 Millisekunden für Routing-Engine-basierte Sitzungen und weniger als 10 Millisekunden für verteilte BFD-Sitzungen kann zu unerwünschtem BFD-Flattern führen.
Abhängig von Ihrer Netzwerkumgebung können die folgenden zusätzlichen Empfehlungen zutreffen:
Um zu verhindern, dass BFD während des allgemeinen Routing-Engine-Switchover-Ereignisses flattert, geben Sie ein Mindestintervall von 5000 Millisekunden für Routing-Engine-basierte Sitzungen an. Dieser Mindestwert ist erforderlich, da während des allgemeinen Routing-Engine-Switchover-Ereignisses Prozesse wie RPD, MIBD und SNMPD CPU-Ressourcen für mehr als den angegebenen Schwellenwert beanspruchen. Daher wird die BFD-Verarbeitung und -Planung aufgrund dieses Mangels an CPU-Ressourcen beeinträchtigt.
Damit BFD-Sitzungen während des Dual-Chassis-Cluster-Control-Link-Szenarios aktiv bleiben, wenn die erste Control-Verbindung ausfällt, geben Sie das Mindestintervall von 6000 Millisekunden an, um zu verhindern, dass der LACP bei Routing-Engine-basierten Sitzungen auf dem sekundären Knoten flattert.
Geben Sie für umfangreiche Netzwerkbereitstellungen mit einer großen Anzahl von BFD-Sitzungen ein Mindestintervall von 300 Millisekunden für Routing-Engine-basierte Sitzungen und 100 Millisekunden für verteilte BFD-Sitzungen an.
Bei sehr großen Netzwerkbereitstellungen mit einer großen Anzahl von BFD-Sitzungen wenden Sie sich an den Kundendienst von Juniper Networks, um weitere Informationen zu erhalten.
Damit BFD-Sitzungen während eines Routing-Engine-Switchover-Ereignisses aktiv bleiben, wenn Nonstop Active Routing (NSR) konfiguriert ist, geben Sie ein Mindestintervall von 2500 Millisekunden für Routing-Engine-basierte Sitzungen an. Für verteilte BFD-Sitzungen mit konfigurierter NSR bleiben die Empfehlungen für das Mindestintervall unverändert und hängen nur von Ihrer Netzwerkbereitstellung ab.
BFD wird auf der Standard-Routinginstanz (dem Hauptrouter), Routing-Instanzen und logischen Systemen unterstützt. Dieses Beispiel zeigt BFD auf logischen Systemen.
Abbildung 1 Zeigt ein typisches Netzwerk mit internen Peersitzungen.
Konfiguration
CLI-Schnellkonfiguration
Um dieses Beispiel schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen Sie sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche, ändern Sie alle Details, die für Ihre Netzwerkkonfiguration erforderlich sind, und kopieren Sie dann die Befehle und fügen Sie sie in die CLI auf Hierarchieebene ein.[edit]
Gerät A
set logical-systems A interfaces lt-1/2/0 unit 1 description to-B set logical-systems A interfaces lt-1/2/0 unit 1 encapsulation ethernet set logical-systems A interfaces lt-1/2/0 unit 1 peer-unit 2 set logical-systems A interfaces lt-1/2/0 unit 1 family inet address 10.10.10.1/30 set logical-systems A interfaces lo0 unit 1 family inet address 192.168.6.5/32 set logical-systems A protocols bgp group internal-peers type internal set logical-systems A protocols bgp group internal-peers traceoptions file bgp-bfd set logical-systems A protocols bgp group internal-peers traceoptions flag bfd detail set logical-systems A protocols bgp group internal-peers local-address 192.168.6.5 set logical-systems A protocols bgp group internal-peers export send-direct set logical-systems A protocols bgp group internal-peers bfd-liveness-detection minimum-interval 1000 set logical-systems A protocols bgp group internal-peers neighbor 192.163.6.4 set logical-systems A protocols bgp group internal-peers neighbor 192.168.40.4 set logical-systems A protocols ospf area 0.0.0.0 interface lo0.1 passive set logical-systems A protocols ospf area 0.0.0.0 interface lt-1/2/0.1 set logical-systems A policy-options policy-statement send-direct term 2 from protocol direct set logical-systems A policy-options policy-statement send-direct term 2 then accept set logical-systems A routing-options router-id 192.168.6.5 set logical-systems A routing-options autonomous-system 17
Gerät B
set logical-systems B interfaces lt-1/2/0 unit 2 description to-A set logical-systems B interfaces lt-1/2/0 unit 2 encapsulation ethernet set logical-systems B interfaces lt-1/2/0 unit 2 peer-unit 1 set logical-systems B interfaces lt-1/2/0 unit 2 family inet address 10.10.10.2/30 set logical-systems B interfaces lt-1/2/0 unit 5 description to-C set logical-systems B interfaces lt-1/2/0 unit 5 encapsulation ethernet set logical-systems B interfaces lt-1/2/0 unit 5 peer-unit 6 set logical-systems B interfaces lt-1/2/0 unit 5 family inet address 10.10.10.5/30 set logical-systems B interfaces lo0 unit 2 family inet address 192.163.6.4/32 set logical-systems B protocols bgp group internal-peers type internal set logical-systems B protocols bgp group internal-peers local-address 192.163.6.4 set logical-systems B protocols bgp group internal-peers export send-direct set logical-systems B protocols bgp group internal-peers bfd-liveness-detection minimum-interval 1000 set logical-systems B protocols bgp group internal-peers neighbor 192.168.40.4 set logical-systems B protocols bgp group internal-peers neighbor 192.168.6.5 set logical-systems B protocols ospf area 0.0.0.0 interface lo0.2 passive set logical-systems B protocols ospf area 0.0.0.0 interface lt-1/2/0.2 set logical-systems B protocols ospf area 0.0.0.0 interface lt-1/2/0.5 set logical-systems B policy-options policy-statement send-direct term 2 from protocol direct set logical-systems B policy-options policy-statement send-direct term 2 then accept set logical-systems B routing-options router-id 192.163.6.4 set logical-systems B routing-options autonomous-system 17
Gerät C
set logical-systems C interfaces lt-1/2/0 unit 6 description to-B set logical-systems C interfaces lt-1/2/0 unit 6 encapsulation ethernet set logical-systems C interfaces lt-1/2/0 unit 6 peer-unit 5 set logical-systems C interfaces lt-1/2/0 unit 6 family inet address 10.10.10.6/30 set logical-systems C interfaces lo0 unit 3 family inet address 192.168.40.4/32 set logical-systems C protocols bgp group internal-peers type internal set logical-systems C protocols bgp group internal-peers local-address 192.168.40.4 set logical-systems C protocols bgp group internal-peers export send-direct set logical-systems C protocols bgp group internal-peers bfd-liveness-detection minimum-interval 1000 set logical-systems C protocols bgp group internal-peers neighbor 192.163.6.4 set logical-systems C protocols bgp group internal-peers neighbor 192.168.6.5 set logical-systems C protocols ospf area 0.0.0.0 interface lo0.3 passive set logical-systems C protocols ospf area 0.0.0.0 interface lt-1/2/0.6 set logical-systems C policy-options policy-statement send-direct term 2 from protocol direct set logical-systems C policy-options policy-statement send-direct term 2 then accept set logical-systems C routing-options router-id 192.168.40.4 set logical-systems C routing-options autonomous-system 17
Konfigurieren von Gerät A
Schritt-für-Schritt-Anleitung
Im folgenden Beispiel müssen Sie durch verschiedene Ebenen in der Konfigurationshierarchie navigieren. Weitere Informationen zum Navigieren in der CLI finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus im CLI-Benutzerhandbuch.Verwenden des CLI-Editors im Konfigurationsmodushttps://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/junos-cli/junos-cli.html
So konfigurieren Sie Gerät A:
Legen Sie die CLI auf Logisches System A fest.
user@host> set cli logical-system A
Konfigurieren Sie die Schnittstellen.
[edit interfaces lt-1/2/0 unit 1] user@host:A# set description to-B user@host:A# set encapsulation ethernet user@host:A# set peer-unit 2 user@host:A# set family inet address 10.10.10.1/30 [edit interfaces lo0 unit 1] user@host:A# set family inet address 192.168.6.5/32
Konfigurieren Sie BGP.
Die Anweisungen sind sowohl für Gerät B als auch für Gerät C enthalten, obwohl Gerät A nicht direkt mit Gerät C verbunden ist.
neighbor
[edit protocols bgp group internal-peers] user@host:A# set type internal user@host:A# set local-address 192.168.6.5 user@host:A# set export send-direct user@host:A# set neighbor 192.163.6.4 user@host:A# set neighbor 192.168.40.4
Konfigurieren Sie BFD.
[edit protocols bgp group internal-peers] user@host:A# set bfd-liveness-detection minimum-interval 1000
Sie müssen das gleiche Mindestintervall für den Peer konfigurieren, der eine Verbindung herstellt.
(Optional) Konfigurieren Sie die BFD-Ablaufverfolgung.
[edit protocols bgp group internal-peers] user@host:A# set traceoptions file bgp-bfd user@host:A# set traceoptions flag bfd detail
Konfigurieren Sie OSPF.
[edit protocols ospf area 0.0.0.0] user@host:A# set interface lo0.1 passive user@host:A# set interface lt-1/2/0.1
Konfigurieren Sie eine Richtlinie, die direkte Routen akzeptiert.
Andere nützliche Optionen für dieses Szenario könnten darin bestehen, Routen zu akzeptieren, die über OSPF oder lokale Routen gelernt wurden.
[edit policy-options policy-statement send-direct term 2] user@host:A# set from protocol direct user@host:A# set then accept
Konfigurieren Sie die Router-ID und die AS-Nummer (Autonomous System).
[edit routing-options] user@host:A# set router-id 192.168.6.5 user@host:A# set autonomous-system 17
Wenn Sie mit der Konfiguration des Geräts fertig sind, rufen Sie den Konfigurationsmodus auf .
commit
Wiederholen Sie diese Schritte, um Gerät B und Gerät C zu konfigurieren.
Ergebnisse
Bestätigen Sie im Konfigurationsmodus Ihre Konfiguration, indem Sie die Befehle , , und eingeben.show interfaces
show policy-options
show protocols
show routing-options
Wenn die Ausgabe nicht die gewünschte Konfiguration anzeigt, wiederholen Sie die Anweisungen in diesem Beispiel, um die Konfiguration zu korrigieren.
user@host:A# show interfaces lt-1/2/0 { unit 1 { description to-B; encapsulation ethernet; peer-unit 2; family inet { address 10.10.10.1/30; } } } lo0 { unit 1 { family inet { address 192.168.6.5/32; } } }
user@host:A# show policy-options policy-statement send-direct { term 2 { from protocol direct; then accept; } }
user@host:A# show protocols bgp { group internal-peers { type internal; traceoptions { file bgp-bfd; flag bfd detail; } local-address 192.168.6.5; export send-direct; bfd-liveness-detection { minimum-interval 1000; } neighbor 192.163.6.4; neighbor 192.168.40.4; } } ospf { area 0.0.0.0 { interface lo0.1 { passive; } interface lt-1/2/0.1; } }
user@host:A# show routing-options router-id 192.168.6.5; autonomous-system 17;
Überprüfung
Vergewissern Sie sich, dass die Konfiguration ordnungsgemäß funktioniert.
- Überprüfen, ob BFD aktiviert ist
- Überprüfen, ob BFD-Sitzungen verfügbar sind
- Anzeigen detaillierter BFD-Ereignisse
- Anzeigen detaillierter BFD-Ereignisse nach dem Deaktivieren und Reaktivieren einer Loopback-Schnittstelle
Überprüfen, ob BFD aktiviert ist
Zweck
Stellen Sie sicher, dass BFD zwischen den IBGP-Peers aktiviert ist.
Was
Geben Sie im Betriebsmodus den Befehl ein.show bgp neighbor
Sie können den Filter verwenden, um die Ausgabe einzugrenzen.| match bfd
user@host:A> show bgp neighbor | match bfd Options: <BfdEnabled> BFD: enabled, up Trace file: /var/log/A/bgp-bfd size 131072 files 10 Options: <BfdEnabled> BFD: enabled, up Trace file: /var/log/A/bgp-bfd size 131072 files 10
Bedeutung
Die Ausgabe zeigt, dass logisches System A zwei Nachbarn mit aktiviertem BFD hat. Wenn BFD nicht aktiviert ist, wird die Ausgabe angezeigt , und die Option ist nicht vorhanden.BFD: disabled, down
<BfdEnabled>
Wenn BFD aktiviert ist und die Sitzung ausgefallen ist, wird in der Ausgabe angezeigt .BFD: enabled, down
Die Ausgabe zeigt auch, dass BFD-bezogene Ereignisse in eine Protokolldatei geschrieben werden, da Ablaufverfolgungsvorgänge konfiguriert sind.
Überprüfen, ob BFD-Sitzungen verfügbar sind
Zweck
Vergewissern Sie sich, dass die BFD-Sitzungen aktiv sind, und zeigen Sie Details zu den BFD-Sitzungen an.
Was
Geben Sie im Betriebsmodus den Befehl ein.show bfd session extensive
user@host:A> show bfd session extensive Detect Transmit Address State Interface Time Interval Multiplier 192.163.6.4 Up 3.000 1.000 3 Client BGP, TX interval 1.000, RX interval 1.000 Session up time 00:54:40 Local diagnostic None, remote diagnostic None Remote state Up, version 1 Logical system 12, routing table index 25 Min async interval 1.000, min slow interval 1.000 Adaptive async TX interval 1.000, RX interval 1.000 Local min TX interval 1.000, minimum RX interval 1.000, multiplier 3 Remote min TX interval 1.000, min RX interval 1.000, multiplier 3 Local discriminator 10, remote discriminator 9 Echo mode disabled/inactive Multi-hop route table 25, local-address 192.168.6.5 Detect Transmit Address State Interface Time Interval Multiplier 192.168.40.4 Up 3.000 1.000 3 Client BGP, TX interval 1.000, RX interval 1.000 Session up time 00:48:03 Local diagnostic None, remote diagnostic None Remote state Up, version 1 Logical system 12, routing table index 25 Min async interval 1.000, min slow interval 1.000 Adaptive async TX interval 1.000, RX interval 1.000 Local min TX interval 1.000, minimum RX interval 1.000, multiplier 3 Remote min TX interval 1.000, min RX interval 1.000, multiplier 3 Local discriminator 14, remote discriminator 13 Echo mode disabled/inactive Multi-hop route table 25, local-address 192.168.6.5 2 sessions, 2 clients Cumulative transmit rate 2.0 pps, cumulative receive rate 2.0 pps
Bedeutung
Die Ausgabe stellt die Einstellung dar, die mit der Anweisung konfiguriert wurde.TX interval 1.000, RX interval 1.000
minimum-interval
Alle anderen Ausgaben stellen die Standardeinstellungen für BFD dar. Um die Standardeinstellungen zu ändern, fügen Sie die optionalen Anweisungen unter die Anweisung ein.bfd-liveness-detection
Anzeigen detaillierter BFD-Ereignisse
Zweck
Zeigen Sie den Inhalt der BFD-Ablaufverfolgungsdatei an, um bei Bedarf bei der Fehlerbehebung zu helfen.
Was
Geben Sie im Betriebsmodus den Befehl ein.file show /var/log/A/bgp-bfd
user@host:A> file show /var/log/A/bgp-bfd Aug 15 17:07:25 trace_on: Tracing to "/var/log/A/bgp-bfd" started Aug 15 17:07:26.492190 bgp_peer_init: BGP peer 192.163.6.4 (Internal AS 17) local address 192.168.6.5 not found. Leaving peer idled Aug 15 17:07:26.493176 bgp_peer_init: BGP peer 192.168.40.4 (Internal AS 17) local address 192.168.6.5 not found. Leaving peer idled Aug 15 17:07:32.597979 task_connect: task BGP_17.192.163.6.4+179 addr 192.163.6.4+179: No route to host Aug 15 17:07:32.599623 bgp_connect_start: connect 192.163.6.4 (Internal AS 17): No route to host Aug 15 17:07:36.869394 task_connect: task BGP_17.192.168.40.4+179 addr 192.168.40.4+179: No route to host Aug 15 17:07:36.870624 bgp_connect_start: connect 192.168.40.4 (Internal AS 17): No route to host Aug 15 17:08:04.599220 task_connect: task BGP_17.192.163.6.4+179 addr 192.163.6.4+179: No route to host Aug 15 17:08:04.601135 bgp_connect_start: connect 192.163.6.4 (Internal AS 17): No route to host Aug 15 17:08:08.869717 task_connect: task BGP_17.192.168.40.4+179 addr 192.168.40.4+179: No route to host Aug 15 17:08:08.869934 bgp_connect_start: connect 192.168.40.4 (Internal AS 17): No route to host Aug 15 17:08:36.603544 advertising receiving-speaker only capabilty to neighbor 192.163.6.4 (Internal AS 17) Aug 15 17:08:36.606726 bgp_read_message: 192.163.6.4 (Internal AS 17): 0 bytes buffered Aug 15 17:08:36.609119 Initiated BFD session to peer 192.163.6.4 (Internal AS 17): address=192.163.6.4 ifindex=0 ifname=(none) txivl=1000 rxivl=1000 mult=3 ver=255 Aug 15 17:08:36.734033 advertising receiving-speaker only capabilty to neighbor 192.168.40.4 (Internal AS 17) Aug 15 17:08:36.738436 Initiated BFD session to peer 192.168.40.4 (Internal AS 17): address=192.168.40.4 ifindex=0 ifname=(none) txivl=1000 rxivl=1000 mult=3 ver=255 Aug 15 17:08:40.537552 BFD session to peer 192.163.6.4 (Internal AS 17) up Aug 15 17:08:40.694410 BFD session to peer 192.168.40.4 (Internal AS 17) up
Bedeutung
Bevor die Routen eingerichtet werden, wird die Meldung in der Ausgabe angezeigt.No route to host
Nachdem die Routen festgelegt wurden, zeigen die letzten beiden Zeilen, dass beide BFD-Sitzungen angezeigt werden.
Anzeigen detaillierter BFD-Ereignisse nach dem Deaktivieren und Reaktivieren einer Loopback-Schnittstelle
Zweck
Überprüfen Sie, was passiert, nachdem Sie einen Router oder Switch heruntergefahren und dann wieder hochgefahren haben. Um den Ausfall eines Routers oder Switches zu simulieren, deaktivieren Sie die Loopback-Schnittstelle auf dem logischen System B.
Was
Geben Sie im Konfigurationsmodus den Befehl ein.
deactivate logical-systems B interfaces lo0 unit 2 family inet
user@host:A# deactivate logical-systems B interfaces lo0 unit 2 family inet user@host:A# commit
Geben Sie im Betriebsmodus den Befehl ein.
file show /var/log/A/bgp-bfd
user@host:A> file show /var/log/A/bgp-bfd ... Aug 15 17:20:55.995648 bgp_read_v4_message:9747: NOTIFICATION received from 192.163.6.4 (Internal AS 17): code 6 (Cease) subcode 6 (Other Configuration Change) Aug 15 17:20:56.004508 Terminated BFD session to peer 192.163.6.4 (Internal AS 17) Aug 15 17:21:28.007755 task_connect: task BGP_17.192.163.6.4+179 addr 192.163.6.4+179: No route to host Aug 15 17:21:28.008597 bgp_connect_start: connect 192.163.6.4 (Internal AS 17): No route to host
Geben Sie im Konfigurationsmodus den Befehl ein.
activate logical-systems B interfaces lo0 unit 2 family inet
user@host:A# activate logical-systems B interfaces lo0 unit 2 family inet user@host:A# commit
Geben Sie im Betriebsmodus den Befehl ein.
file show /var/log/A/bgp-bfd
user@host:A> file show /var/log/A/bgp-bfd ... Aug 15 17:25:53.623743 advertising receiving-speaker only capabilty to neighbor 192.163.6.4 (Internal AS 17) Aug 15 17:25:53.631314 Initiated BFD session to peer 192.163.6.4 (Internal AS 17): address=192.163.6.4 ifindex=0 ifname=(none) txivl=1000 rxivl=1000 mult=3 ver=255 Aug 15 17:25:57.570932 BFD session to peer 192.163.6.4 (Internal AS 17) up
Grundlegendes zur BFD-Authentifizierung für BGP
Das Bidirectional Forwarding Detection Protocol (BFD) ermöglicht die schnelle Erkennung von Kommunikationsfehlern zwischen benachbarten Systemen. Standardmäßig ist die Authentifizierung für BFD-Sitzungen deaktiviert. Wenn Sie BFD jedoch über Protokolle der Netzwerkschicht ausführen, kann das Risiko von Dienstangriffen erheblich sein. Es wird dringend empfohlen, die Authentifizierung zu verwenden, wenn Sie BFD über mehrere Hops oder durch unsichere Tunnel ausführen. Ab Junos OS Version 9.6 unterstützt Junos OS die Authentifizierung für BFD-Sitzungen, die über BGP ausgeführt werden. Die BFD-Authentifizierung wird in MPLS-OAM-Sitzungen nicht unterstützt. Die BFD-Authentifizierung wird nur in der kanadischen und US-Version des Junos OS-Images unterstützt und ist in der Exportversion nicht verfügbar.
Sie authentifizieren BFD-Sitzungen, indem Sie einen Authentifizierungsalgorithmus und einen Schlüsselbund angeben und diese Konfigurationsinformationen dann mithilfe des Schlüsselbundnamens einem Schlüsselbund für die Sicherheitsauthentifizierung zuordnen.
In den folgenden Abschnitten werden die unterstützten Authentifizierungsalgorithmen, Sicherheitsschlüsselbunde und Authentifizierungsebenen beschrieben, die konfiguriert werden können:
- BFD-Authentifizierungsalgorithmen
- Schlüsselanhänger für die Sicherheitsauthentifizierung
- Strikte versus lose Authentifizierung
BFD-Authentifizierungsalgorithmen
Junos OS unterstützt die folgenden Algorithmen für die BFD-Authentifizierung:
simple-password– Passwort im Klartext. Ein bis 16 Byte Klartext werden verwendet, um die BFD-Sitzung zu authentifizieren. Es können ein oder mehrere Passwörter konfiguriert werden. Diese Methode ist die am wenigsten sichere und sollte nur verwendet werden, wenn BFD-Sitzungen nicht vom Abfangen von Paketen betroffen sind.
keyed-md5– Keyed Message Digest 5-Hash-Algorithmus für Sitzungen mit Sende- und Empfangsintervallen von mehr als 100 ms. Zur Authentifizierung der BFD-Sitzung verwendet MD5 mit Schlüssel einen oder mehrere geheime Schlüssel (die vom Algorithmus generiert werden) und eine Sequenznummer, die regelmäßig aktualisiert wird. Bei dieser Methode werden Pakete am empfangenden Ende der Sitzung akzeptiert, wenn einer der Schlüssel übereinstimmt und die Sequenznummer größer oder gleich der zuletzt empfangenen Sequenznummer ist. Obwohl diese Methode sicherer ist als ein einfaches Passwort, ist sie anfällig für Replay-Angriffe. Durch Erhöhen der Aktualisierungsrate der Sequenznummer kann dieses Risiko verringert werden.
meticulous-keyed-md5– Sorgfältiger Hash-Algorithmus für Message Digest 5. Diese Methode funktioniert auf die gleiche Weise wie MD5, aber die Sequenznummer wird mit jedem Paket aktualisiert. Obwohl diese Methode sicherer ist als MD5-Schlüssel und einfache Kennwörter, kann die Authentifizierung der Sitzung zusätzliche Zeit in Anspruch nehmen.
keyed-sha-1– Keyed Secure Hash Algorithm I für Sitzungen mit Sende- und Empfangsintervallen von mehr als 100 ms. Um die BFD-Sitzung zu authentifizieren, verwendet SHA mit Schlüssel einen oder mehrere geheime Schlüssel (die vom Algorithmus generiert werden) und eine Sequenznummer, die regelmäßig aktualisiert wird. Der Schlüssel wird nicht in den Paketen mitgeführt. Bei dieser Methode werden Pakete am empfangenden Ende der Sitzung akzeptiert, wenn einer der Schlüssel übereinstimmt und die Sequenznummer größer als die zuletzt empfangene Sequenznummer ist.
meticulous-keyed-sha-1– Akribisch verschlüsselter Secure-Hash-Algorithmus I. Diese Methode funktioniert auf die gleiche Weise wie verschlüsselte SHA, aber die Sequenznummer wird mit jedem Paket aktualisiert. Obwohl diese Methode sicherer ist als verschlüsselter SHA und einfache Kennwörter, kann die Authentifizierung der Sitzung zusätzliche Zeit in Anspruch nehmen.
Nonstop Active Routing (NSR) wird mit den Authentifizierungsalgorithmen aticulous-keyed-md5 und akticulous-keyed-sha-1 nicht unterstützt. BFD-Sitzungen, die diese Algorithmen verwenden, können nach einer Umstellung ausfallen.
Switches der QFX5000-Serie und EX4600-Switches unterstützen keine Mindestintervallwerte von weniger als 1 Sekunde.
Schlüsselanhänger für die Sicherheitsauthentifizierung
Der Schlüsselbund für die Sicherheitsauthentifizierung definiert die Authentifizierungsattribute, die für die Aktualisierung des Authentifizierungsschlüssels verwendet werden. Wenn der Schlüsselbund für die Sicherheitsauthentifizierung konfiguriert und über den Schlüsselbundnamen einem Protokoll zugeordnet ist, können Aktualisierungen des Authentifizierungsschlüssels erfolgen, ohne die Routing- und Signalisierungsprotokolle zu unterbrechen.
Der Authentifizierungsschlüsselbund enthält einen oder mehrere Schlüsselbunde. Jeder Schlüsselbund enthält einen oder mehrere Schlüssel. Jeder Schlüssel enthält die geheimen Daten und den Zeitpunkt, zu dem der Schlüssel gültig wird. Der Algorithmus und der Schlüsselbund müssen an beiden Enden der BFD-Sitzung konfiguriert sein, und sie müssen übereinstimmen. Jede Diskrepanz in der Konfiguration verhindert, dass die BFD-Sitzung erstellt wird.
BFD lässt mehrere Clients pro Sitzung zu, und für jeden Client kann ein eigener Schlüsselbund und Algorithmus definiert werden. Um Verwechslungen zu vermeiden, empfehlen wir, nur einen Schlüsselbund für die Sicherheitsauthentifizierung anzugeben.
Strikte versus lose Authentifizierung
Standardmäßig ist die strikte Authentifizierung aktiviert, und die Authentifizierung wird an beiden Enden jeder BFD-Sitzung überprüft. Um die Migration von nicht authentifizierten Sitzungen zu authentifizierten Sitzungen zu erleichtern, können Sie optional eine lose Überprüfung konfigurieren. Wenn eine lockere Überprüfung konfiguriert ist, werden Pakete akzeptiert, ohne dass die Authentifizierung an beiden Enden der Sitzung überprüft wird. Diese Funktion ist nur für Übergangszeiten vorgesehen.
Siehe auch
Beispiel: Konfigurieren der BFD-Authentifizierung für BGP
Ab Junos OS Version 9.6 können Sie die Authentifizierung für BFD-Sitzungen konfigurieren, die über BGP ausgeführt werden. Es sind nur drei Schritte erforderlich, um die Authentifizierung für eine BFD-Sitzung zu konfigurieren:
Geben Sie den BFD-Authentifizierungsalgorithmus für das BGP-Protokoll an.
Verknüpfen Sie den Authentifizierungsschlüsselbund mit dem BGP-Protokoll.
Konfigurieren Sie den zugehörigen Schlüsselbund für die Sicherheitsauthentifizierung.
In den folgenden Abschnitten finden Sie Anweisungen zum Konfigurieren und Anzeigen der BFD-Authentifizierung auf BGP:
- BFD-Authentifizierungsparameter konfigurieren
- Anzeigen von Authentifizierungsinformationen für BFD-Sitzungen
BFD-Authentifizierungsparameter konfigurieren
Die BFD-Authentifizierung kann für das gesamte BGP-Protokoll oder eine bestimmte BGP-Gruppe, einen Nachbarn oder eine Routing-Instanz konfiguriert werden.
Im folgenden Beispiel müssen Sie durch verschiedene Ebenen in der Konfigurationshierarchie navigieren. Weitere Informationen zum Navigieren in der CLI finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus im Junos OS CLI-Benutzerhandbuch.Verwenden des CLI-Editors im Konfigurationsmodushttps://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/junos-cli/junos-cli.html
So konfigurieren Sie die BFD-Authentifizierung:
Die BFD-Authentifizierung wird nur in der kanadischen und US-Version des Junos OS-Images unterstützt und ist in der Exportversion nicht verfügbar.
Anzeigen von Authentifizierungsinformationen für BFD-Sitzungen
Sie können die vorhandene BFD-Authentifizierungskonfiguration mit den Befehlen and anzeigen.show bfd session detail
show bfd session extensive
Das folgende Beispiel zeigt die BFD-Authentifizierung, die für die BGP-Gruppe konfiguriert ist.bgp-gr1
Er gibt den SHA-1-Authentifizierungsalgorithmus mit Schlüssel und den Schlüsselbundnamen an .bfd-bgp
Der Authentifizierungs-Schlüsselbund ist mit zwei Schlüsseln konfiguriert. Der Schlüssel enthält die geheimen Daten "" und eine Startzeit vom 1. Juni 2009 um 9:46:02 Uhr PST.1$ABC123$ABC123 Der Schlüssel enthält die geheimen Daten "" und eine Startzeit vom 1. Juni 2009 um 15:29:20 Uhr PST.2$ABC123$ABC123
[edit protocols bgp] group bgp-gr1 { bfd-liveness-detection { authentication { algorithm keyed-sha-1; key-chain bfd-bgp; } } } [edit security] authentication key-chains { key-chain bfd-bgp { key 1 { secret “$ABC123$ABC123”; start-time “2009-6-1.09:46:02 -0700”; } key 2 { secret “$ABC123$ABC123”; start-time “2009-6-1.15:29:20 -0700”; } } }
Wenn Sie diese Aktualisierungen an Ihre Konfiguration übergeben, wird eine Ausgabe ähnlich der folgenden angezeigt. In der Ausgabe für den Befehl wird angezeigt, um anzuzeigen, dass die BFD-Authentifizierung konfiguriert ist.show bfd session detail
Authenticate Weitere Informationen zur Konfiguration erhalten Sie mit dem Befehl.show bfd session extensive
Die Ausgabe für diesen Befehl enthält den Namen des Schlüsselbunds, den Authentifizierungsalgorithmus und -modus für jeden Client in der Sitzung sowie den allgemeinen Konfigurationsstatus der BFD-Authentifizierung, den Schlüsselbundnamen sowie den Authentifizierungsalgorithmus und -modus.
BFD-Sitzungsdetails anzeigen
user@host# show bfd session detail Detect Transmit Address State Interface Time Interval Multiplier 192.0.2.2 Up ge-0/1/5.0 0.900 0.300 3 Client BGP, TX interval 0.300, RX interval 0.300, Authenticate Session up time 3d 00:34 Local diagnostic None, remote diagnostic NbrSignal Remote state Up, version 1 Replicated
BFD-Session ausführlich anzeigen
user@host# show bfd session extensive Detect Transmit Address State Interface Time Interval Multiplier 192.0.2.2 Up ge-0/1/5.0 0.900 0.300 3 Client BGP, TX interval 0.300, RX interval 0.300, Authenticate keychain bfd-bgp, algo keyed-sha-1, mode strict Session up time 00:04:42 Local diagnostic None, remote diagnostic NbrSignal Remote state Up, version 1 Replicated Min async interval 0.300, min slow interval 1.000 Adaptive async TX interval 0.300, RX interval 0.300 Local min TX interval 0.300, minimum RX interval 0.300, multiplier 3 Remote min TX interval 0.300, min RX interval 0.300, multiplier 3 Local discriminator 2, remote discriminator 2 Echo mode disabled/inactive Authentication enabled/active, keychain bfd-bgp, algo keyed-sha-1, mode strict
Tabellarischer Änderungsverlauf
Die Unterstützung der Funktion hängt von der Plattform und der Version ab, die Sie benutzen. Verwenden Sie Feature Explorer, um festzustellen, ob eine Funktion auf Ihrer Plattform unterstützt wird.