목차

소개

사전 요구 사항

요구 사항

사용되는 구성 요소

구성

네트워크 다이어그램

구성

Syslog BFD 중단 이유

라우팅 프로토콜에서 BFD 구성

OSPF에서 BFD 구성

OSPF의 BFD 컨피그레이션 예

EIGRP에서 BFD 구성

EIGRP의 BFD에 대한 컨피그레이션 예

BGP에서 BFD 구성

BGP의 BFD에 대한 컨피그레이션 예

다음을 확인합니다.

세션 세부 정보를 사용하여 확인

Access-list 사용 확인

Ethanalyzer를 사용하여 확인

소개

이 문서에서는 Cisco Nexus NXOS® 기반 스위치에서 BFD(Bidirectional Forwarding Detection) 세션을 구성하고 확인하는 방법에 대해 설명합니다.

사전 요구 사항

요구 사항

다음 주제에 대한 지식을 보유하고 있으면 유용합니다.

- BFD(Bidirectional Forwarding Detection)

- Nexus NX-OS 소프트웨어.

- 라우팅 프로토콜: OSPF(Open Shortest Path First), BGP(Border Gateway Protocol), EIGRP(Enhanced Interior Gateway Routing Protocol)

사용되는 구성 요소

이 문서의 정보는 NXOS 버전 10.3(4a).M이 포함된 Cisco Nexus 9000을 기반으로 합니다.

이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 미리 숙지하시기 바랍니다.

구성

네트워크 다이어그램

구성

BFD를 구성하는 목적은 다양한 라우팅 프로토콜의 구성 간 차이를 감지하고 이해하는 것이다.

1단계: 인터페이스 및 프로토콜에서 BFD를 구성하려면 먼저 BFD 기능을 활성화해야 합니다.

스위치 1

스위치 2

SW1(config)# feature bfd

SW2(config)# feature bfd

2단계: 전역 BFD 구성

스위치 1

스위치 2

SW1(config)# bfd interval 500 min_rx 500 multiplier 3

SW2(config)# bfd interval 500 min_rx 500 multiplier 3

참고: min_tx 및 msec 범위는 50~999밀리초이며 기본값은 50입니다. 승수 범위는 1~50입니다. 승수 기본값은 3입니다.

3단계: 인터페이스에서 BFD 구성

참고: 인터페이스의 모든 BFD 세션에 대해 BFD 세션 매개변수를 구성할 수 있습니다.

경고: BFD가 활성화된 인터페이스에서 ICMP(Internet Control Message Protocol) 리디렉션 메시지가 비활성화되었는지 확인합니다. 인터페이스에서 no ip redirects 명령 또는 no ipv6 redirects 명령을 사용합니다.

스위치 1

스위치 2

SW1(config)# interface vlan 20

SW1(config-if)# bfd interval 500 min_rx 500 multiplier 3

SW1(config-if)# no ip redirects

SW1(config-if)# no ipv6 redirects

SW2(config)# interface vlan 20

SW2(config-if)# bfd interval 500 min_rx 500 multiplier 3

SW2(config-if)# no ip redirects

SW2(config-if)# no ipv6 redirects

BFD 비동기 모드는 연결을 강력하게 유지하기 위한 두 디바이스 간의 핸드셰이크와 같습니다. 두 디바이스 모두에 설정을 하면, 설정 된 시간에 서로 특별 한 메시지를 전송 하기 시작 합니다. 이러한 메시지는 얼마나 자주 전송되는지, 한 디바이스가 다른 디바이스에 얼마나 빨리 응답할 수 있는지 등의 몇 가지 중요한 설정을 가지고 있습니다. 연결에 문제가 있을 수 있다는 것을 한 장치에서 깨닫는데 몇 개의 메시지를 놓쳤는지를 결정하는 설정도 있습니다.

BFD 에코 기능은 테스트 패킷을 네이버에 전송하고, 패킷 전달에 네이버를 개입시키지 않고 문제를 확인하기 위해 패킷을 다시 전송합니다. 더 느린 타이머를 사용하여 제어 패킷 트래픽을 줄이고 네이버를 방해하지 않고 네이버 시스템의 포워딩 경로를 테스트하여 탐지 속도를 높일 수 있습니다. 두 이웃이 모두 반향 함수를 사용하면 비대칭성이 없다.

Syslog BFD 중단 이유

- Path Down(경로 다운): 두 BFD 인접 디바이스 간의 포워딩 경로가 네트워크 혼잡, 하드웨어 장애 또는 기타 문제로 인해 더 이상 작동하지 않음을 나타냅니다.

2024 Apr 11 22:07:07 SW2 %BFD-5-SESSION_STATE_DOWN: BFD session 1090519062 to neighbor 172.16.1.1 on interface Vlan20 has gone down. Reason: Path Down.

- Echo Function Failed: Failure of the echo function - BFD의 기능으로, 연결을 확인하기 위해 에코 패킷이 전송되고 수신됩니다. 이러한 패킷을 성공적으로 전송하거나 수신하지 못하면 문제가 있음을 나타냅니다.

2024 Apr 11 22:17:45 SW2 %BFD-5-SESSION_STATE_DOWN: BFD session 1090519174 to neighbor 10.10.10.1 on interface Vlan10 has gone down. Reason: Echo Function Failed.

- Neighbor Signaled Session Down(인접 디바이스 신호 세션 중단): 인접 디바이스는 BFD 세션이 중단되었음을 알립니다(일반적으로 연결 종료 문제 감지).

2024 Apr 11 22:03:48 SW2 %BFD-5-SESSION_STATE_DOWN: BFD session 1090519058 to neighbor 172.16.1.1 on interface Vlan20 has gone down. Reason: Neighbor Signaled Session Down.

- Control Detection Time Expired(제어 탐지 시간 만료됨): 네이버에서 예상되는 응답을 받기 전에 제어 탐지 타이머가 만료되어 연결에 잠재적인 문제가 발생할 경우 발생합니다.

2024 Apr 11 22:19:31 SW2 %BFD-5-SESSION_STATE_DOWN: BFD session 1090519061 to neighbor 192.168.2.1 on interface Lo30 has gone down. Reason: Control Detection Time Expired.

- 관리상 중단: 유지 관리 목적이나 컨피그레이션 변경 때문에 관리자가 BFD 세션을 의도적으로 중단합니다.

2024 Apr 11 22:13:15 SW2 %BFD-5-SESSION_STATE_DOWN: BFD session 1090519064 to neighbor 10.10.10.1 on interface Vlan10 has gone down. Reason: Administratively Down.

라우팅 프로토콜에서 BFD 구성

OSPF에서 BFD 구성

팁: OSPF에서 BFD가 활성화되면 OSPF를 사용하는 모든 인터페이스에 대해 BFD가 활성화됩니다. 인터페이스는 전역으로 구성된 값을 채택합니다. 이러한 값을 조정해야 하는 경우 3단계 '인터페이스의 BFD 컨피그레이션'을 참조하십시오.

스위치 1

스위치 2

SW1(config)# router ospf 1

SW1(config-router)# bfd

SW2(config)# router ospf 1

SW2(config-router)# bfd

또한 명령을 사용하여 OSPF 인터페이스에서 BFD를 활성화할 수 있습니다ip ospf bfd

스위치 1

스위치 2

SW1(config)# interface vlan 10

SW1(config-if)# ip ospf bfd

SW2(config)# interface vlan 10

SW2(config-if)# ip ospf bfd

OSPF의 BFD 컨피그레이션 예

SW1# show running-config ospf !Command: show running-config ospf !Running configuration last done at: Wed Apr 10 21:06:31 2024 !Time: Wed Apr 10 21:09:45 2024 version 10.3(4a) Bios:version 01.07 feature ospf router ospf 1 bfd interface Vlan10 ip router ospf 1 area 0.0.0.0 ip ospf bfd

EIGRP에서 BFD 구성

SW1(config)# interface vlan 20 SW1(config-if)# ip eigrp 2 bfd

팁: EIGRP에서 BFD가 활성화되면 EIGRP를 사용하는 모든 인터페이스에 대해 BFD가 활성화됩니다. 인터페이스는 전역으로 구성된 값을 채택합니다. 이러한 값을 조정해야 하는 경우 3단계 '인터페이스의 BFD 컨피그레이션'을 참조하십시오.

스위치 1

스위치 2

SW1(config)# router eigrp 2

SW1(config-router)# bfd

SW2(config)# router eigrp 2

SW2(config-router)# bfd

또한 명령을 사용하여 EIGRP 인터페이스에서 BFD를 활성화할 수 있습니다ip eigrp instance-tag bfd

스위치 1

스위치 2

SW1(config)# interface vlan 20

SW1(config-if)# ip eigrp 2 bfd

SW2(config)# interface vlan 20

SW2(config-if)# ip eigrp 2 bfd

EIGRP의 BFD에 대한 컨피그레이션 예

SW1# show running-config eigrp !Command: show running-config eigrp !Running configuration last done at: Wed Apr 10 21:24:29 2024 !Time: Wed Apr 10 21:53:08 2024 version 10.3(4a) Bios:version 01.07 feature eigrp router eigrp 2 address-family ipv4 unicast bfd interface Vlan20 ip router eigrp 2 ip eigrp 2 bfd

BGP에서 BFD 구성

참고: 업데이트 소스 기능은 인접 디바이스와의 BGP 세션을 설정하는 동안 지정된 인터페이스의 기본 IP 주소를 로컬 주소로 사용하도록 BGP 세션을 촉진합니다. 또한 BGP가 BFD에 클라이언트로 등록할 수 있습니다.

참고: 디바이스에서 BFD 세션을 구성할 때 'multihop' 또는 'singlehop'을 지정하면 세션 유형이 결정됩니다. 키워드를 제공하지 않으면 피어가 직접 연결될 때 세션 유형은 기본적으로 'singlehop'으로 설정됩니다. 피어가 연결되지 않은 경우 세션 유형은 기본적으로 'multihop'으로 설정됩니다.

스위치 1

스위치 2

SW1(config)#  router bgp 65001

SW1(config-router)# address-family ipv4 unicast

SW1(config-router)# neighbor  192.168.3.1

SW1(config-router-neighbor)# bfd multihop

SW1(config-router-neighbor)# update-source loopback30

SW2(config)# router bgp 65002

SW2(config-router)# address-family ipv4 unicast

SW2(config-router)#  neighbor 192.168.2.1

SW2(config-router-neighbor)#  bfd multihop

SW2(config-router-neighbor)# update-source loopback30

BGP의 BFD에 대한 컨피그레이션 예

SW1# show running-config bgp !Command: show running-config bgp !Running configuration last done at: Thu Apr 11 04:47:53 2024 !Time: Thu Apr 11 06:48:43 2024 version 10.3(4a) Bios:version 01.07 feature bgp router bgp 65001 address-family ipv4 unicast neighbor 192.168.3.1 bfd multihop remote-as 65002 update-source loopback30 ebgp-multihop 5 address-family ipv4 unicast

다음을 확인합니다.

BFD를 구성하고 이를 OSPF, EIGRP 또는 BGP와 같은 프로토콜과 연결한 후에는 BFD 인접 디바이스를 자동으로 식별해야 합니다. 이를 확인하려면 다음 명령을 사용합니다.

show bfd neighbors

스위치 1

SW1# show bfd neighbors OurAddr NeighAddr LD/RD RH/RS Holdown(mult) State Int Vrf Type BSID 172.16.1.1 172.16.1.2 1090519059/1090519058 Up 5219(3) Up Vlan20 default SH N/A 10.10.10.1 10.10.10.2 1090519060/1090519059 Up 5219(3) Up Vlan10 default SH N/A 192.168.2.1 192.168.3.1 1090519062/1090519061 Up 728(3) Up Lo30 default MH N/A SW1#

스위치 2

SW2# show bfd neighbors OurAddr NeighAddr LD/RD RH/RS Holdown(mult) State Int Vrf Type BSID 172.16.1.2 172.16.1.1 1090519058/1090519059 Up 5053(3) Up Vlan20 default SH N/A 10.10.10.2 10.10.10.1 1090519059/1090519060 Up 5053(3) Up Vlan10 default SH N/A 192.168.3.1 192.168.2.1 1090519061/1090519062 Up 745(3) Up Lo30 default MH N/A

이를 확인하고 자세한 출력을 얻으려면 다음 명령을 사용합니다.

SW1# show bfd neighbors interface lo30 details OurAddr NeighAddr LD/RD RH/RS Holdown(mult) State Int Vrf Type BSID 192.168.2.1 192.168.3.1 1090519062/1090519061 Up 676(3) Up Lo30 default MH N/A Session state is Up and not using echo function Session type: Multihop Local Diag: 0, Demand mode: 0, Poll bit: 0, Authentication: None MinTxInt: 250000 us, MinRxInt: 250000 us, Multiplier: 3 Received MinRxInt: 250000 us, Received Multiplier: 3 Holdown (hits): 750 ms (0), Hello (hits): 250 ms (82590) Rx Count: 82588, Rx Interval (ms) min/max/avg: 207/1764/219 last: 73 ms ago Tx Count: 82590, Tx Interval (ms) min/max/avg: 219/219/219 last: 67 ms ago Registered protocols: bgp Uptime: 0 days 5 hrs 2 mins 2 secs, Upcount: 1 Last packet: Version: 1 - Diagnostic: 0 State bit: Up - Demand bit: 0 Poll bit: 0 - Final bit: 0 Multiplier: 3 - Length: 24 My Discr.: 1090519061 - Your Discr.: 1090519062 Min tx interval: 250000 - Min rx interval: 250000 Min Echo interval: 0 - Authentication bit: 0 Hosting LC: 1, Down reason: None, Reason not-hosted: None

SW2# show bfd neighbors interface vlan 20 details OurAddr NeighAddr LD/RD RH/RS Holdown(mult) State Int Vrf Type BSID 172.16.1.2 172.16.1.1 1090519058/1090519059 Up 4979(3) Up Vlan20 default SH N/A Session state is Up and using echo function with 500 ms interval Session type: Singlehop Local Diag: 0, Demand mode: 0, Poll bit: 0, Authentication: None MinTxInt: 500000 us, MinRxInt: 2000000 us, Multiplier: 3 Received MinRxInt: 2000000 us, Received Multiplier: 3 Holdown (hits): 6000 ms (0), Hello (hits): 2000 ms (12454) Rx Count: 12444, Rx Interval (ms) min/max/avg: 109/1919/1908 last: 1020 ms ago Tx Count: 12454, Tx Interval (ms) min/max/avg: 1906/1906/1906 last: 856 ms ago Registered protocols: eigrp Uptime: 0 days 6 hrs 35 mins 10 secs, Upcount: 2 Last packet: Version: 1 - Diagnostic: 0 State bit: Up - Demand bit: 0 Poll bit: 0 - Final bit: 0 Multiplier: 3 - Length: 24 My Discr.: 1090519059 - Your Discr.: 1090519058 Min tx interval: 500000 - Min rx interval: 2000000 Min Echo interval: 500000 - Authentication bit: 0 Hosting LC: 1, Down reason: None, Reason not-hosted: None

세션 세부 정보를 사용하여 확인

SW1# sh bfd clients Client : Number of sessions bgp : 1 ospf : 1 eigrp : 1 SW1# show system internal bfd sess-store interface vlan 10 No of sessions: 1 >>>>> Check Number of sessions 0x4100001b - 0x41000019 Hosting LC: 1 10.10.10.1 -> 10.10.10.2 bsid 0 >>>>> Check IP addresses BFD_SESS_ST_SESSION_UP for 0 days 0:6:22 594 >>>>> Check uptime Vlan10 [2 0x901000a:0x43 0:10 0x1000c 0x1000c] SMAC: 4464.3c81.ddd7 DMAC: 4464.3c81.cdb7 Local TX/RX/ST(ms): 500/500/2000000 Mult: 3 EchoRx: 50000 Ver:1 Flags(0x0): Echo Auth Interop (Disabled) Auth(0 0 0) Group id 0x0 Active TX/RX/ST(ms): 2000/2000/2000000 Mult: 3 State: 3 Diag: 0x0 Flags: 0xc 0000 Auth(0 0 0) Spray DIs: 0 Port-Lcs: Module 1 has 2 links - ACL not programmed Applications: (1) ospf [0x1:0x41000119 flags 0x0] App Data : [c0a80301000] Description: 10.10.10.2 MTS Dest 0xfe000001:0x140 No-Host reason: 0x0(SUCCESS) Counters: >>>>>>>> Check the counters below Retries: LC remove(0), ACL Inst/Rem(0/0), Redisc(0) No. of ACLs Added(1) Flap counters: Ctrl Detect timer expired(0), Echo failed(0), Neigh Signaled down(0), Admin d own(0), Forwarding plane reset(0), Path down(0), Concat path down(0), Rev Concat path down(0) Last ACL added time: 58781 usecs after Thu Apr 11 22:18:19 2024 Last ACL response time: 81830 usecs after Thu Apr 11 22:18:19 2024 Last session install time: 58285 usecs after Thu Apr 11 22:18:19 2024 Last session install response time: 58717 usecs after Thu Apr 11 22:18:19 2024

Access-list 사용 확인

SW2# show system internal access-list vlan 10 input statistics slot 1 ======= INSTANCE 0x0 --------------- Tcam 12 resource usage: ---------------------- LBL M = 0x1 Bank 0 ------ IPv4 Class Policies: BFD() [Merged] Netflow profile: 0 Netflow deny profile: 0 Entries: [Index] Entry [Stats] --------------------- [0x0000:0x0003:0x0c0d] permit udp 0.0.0.0/0 0.0.0.0/0 range 3784 3785 encap 0x0 [205340] >>>>> This counter needs to increase SW2# show system internal access-list sup-redirect-stats | i i bfd 3085 BFD 12217 >>>>> This counter need to increase 3121 BFDC TCLASS PACKET 0 3146 BFDC v4 PACKET 15 3148 BFDC TCLASS V6 PACKET 0 3156 BFDC v6 PACKET 0 3158 BFDC v6 LL Ucast PACKET 0 3209 BFDC v4 multihop PACKET 383697 >>>>> This counter need to increase in multihop case 3121 BFDC TCLASS PACKET 0 3146 BFDC v4 PACKET 0 3148 BFDC TCLASS V6 PACKET 0 3156 BFDC v6 PACKET 0 3158 BFDC v6 LL Ucast PACKET 0 3209 BFDC v4 multihop PACKET 0

Ethanalyzer를 사용하여 확인

다른 접근 방식은 패킷 캡처를 실행하는 것으로, 특히 UDP 포트 3785에 대해 필터링합니다.

SW1# ethanalyzer local interface inband display-filter "udp.port==3785" limit-captured-frames 0 Capturing on 'ps-inb' 5 2024-04-11 05:26:37.294596186 10.10.10.1 → 10.10.10.1 BFD Echo 70 Originator specific content 6 2024-04-11 05:26:37.294623155 10.10.10.1 → 10.10.10.1 BFD Echo 70 Originator specific content 7 2024-04-11 05:26:37.294635837 172.16.1.1 → 172.16.1.1 BFD Echo 70 Originator specific content 8 2024-04-11 05:26:37.294653159 172.16.1.1 → 172.16.1.1 BFD Echo 70 Originator specific content 4 18 2024-04-11 05:26:37.780441619 10.10.10.1 → 10.10.10.1 BFD Echo 70 Originator specific content 19 2024-04-11 05:26:37.780461351 172.16.1.1 → 172.16.1.1 BFD Echo 70 Originator specific content 20 2024-04-11 05:26:37.780467533 10.10.10.1 → 10.10.10.1 BFD Echo 70 Originator specific content 21 2024-04-11 05:26:37.780481315 172.16.1.1 → 172.16.1.1 BFD Echo 70 Originator specific content 30 2024-04-11 05:26:38.266365493 10.10.10.1 → 10.10.10.1 BFD Echo 70 Originator specific content 31 2024-04-11 05:26:38.266392766 10.10.10.1 → 10.10.10.1 BFD Echo 70 Originator specific content

BFD Echo 프로토콜에서 캡처한 패킷에 동일한 소스 및 목적지 IP 주소가 있을 것으로 예상되는데, 이러한 Echo 패킷은 로컬 스위치 자체에서 시작되기 때문입니다.

참고: 인터페이스에 'no bfd echo' 명령문이 없을 경우 캡처는 BFD Control의 관찰과 함께 로컬에서 제공한 IP 주소와 인접 목적지 IP 주소를 모두 포함하는 패킷을 나타냅니다

SW2# ethanalyzer local interface inband display-filter "ip.addr==192.168.2.1" limit-captured-frames 0 Capturing on 'ps-inb' 1 2024-04-11 05:38:21.155483591 192.168.2.1 → 192.168.3.1 BFD Control 66 Diag: No Diagnostic, State: Up, Flags: 0x00 2 2024-04-11 05:38:21.182606602 192.168.3.1 → 192.168.2.1 BFD Control 66 Diag: No Diagnostic, State: Up, Flags: 0x00 11 2024-04-11 05:38:21.375187034 192.168.2.1 → 192.168.3.1 BFD Control 66 Diag: No Diagnostic, State: Up, Flags: 0x00 12 2024-04-11 05:38:21.402295701 192.168.3.1 → 192.168.2.1 BFD Control 66 Diag: No Diagnostic, State: Up, Flags: 0x00 4 14 2024-04-11 05:38:21.594612491 192.168.2.1 → 192.168.3.1 BFD Control 66 Diag: No Diagnostic, State: Up, Flags: 0x00 15 2024-04-11 05:38:21.621742431 192.168.3.1 → 192.168.2.1 BFD Control 66 Diag: No Diagnostic, State: Up, Flags: 0x00 20 2024-04-11 05:38:21.813971234 192.168.2.1 → 192.168.3.1 BFD Control 66 Diag: No Diagnostic, State: Up, Flags: 0x00 8 21 2024-04-11 05:38:21.841086554 192.168.3.1 → 192.168.2.1 BFD Control 66 Diag: No Diagnostic, State: Up, Flags: 0x00 22 2024-04-11 05:38:22.033395440 192.168.2.1 → 192.168.3.1 BFD Control 66 Diag: No Diagnostic, State: Up, Flags: 0x00 23 2024-04-11 05:38:22.060526055 192.168.3.1 → 192.168.2.1 BFD Control 66 Diag: No Diagnostic, State: Up, Flags: 0x00 28 2024-04-11 05:38:22.252709432 192.168.2.1 → 192.168.3.1 BFD Control 66 Diag: No Diagnostic, State: Up, Flags: 0x00 29 2024-04-11 05:38:22.279810427 192.168.3.1 → 192.168.2.1 BFD Control 66 Diag: No Diagnostic, State: Up, Flags: 0x00