콘텐츠로 이동

BGP

이 배포의 CE 한 대에서 2026-07-28에 캡처했습니다. sitecli/capture-manifest.json에 어떤 노드였는지 기록되어 있으며, scripts/capture-sitecli.sh --check는 실제 CE를 대상으로 명령 표면을 다시 검증합니다.

CE는 BGP를 위해 FRR을 실행합니다. 이 토폴로지에서는 두 개의 Azure Route Server 인스턴스와 피어링하고, VIP를 광고하며, VNet 프리픽스를 학습합니다.

여기서 시작하십시오. 화면 하나로 피어링이 정상인지, 그리고 얼마나 오래 안정적으로 유지되었는지 알 수 있습니다.

Terminal window
{"command":["show-ip-bgp-summary"]}
Instance 4094:
IPv4 Unicast Summary:
BGP router identifier 10.0.1.4, local AS number 64512 vrf-id 3
BGP table version 3
RIB entries 3, using 480 bytes of memory
Peers 2, using 41 KiB of memory
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
10.0.4.4 4 65515 1063 932 0 0 0 01:17:22 1
10.0.4.5 4 65515 1063 932 0 0 0 01:17:23 1
Total number of neighbors 2

먼저 State/PfxRcd를 확인하십시오. 숫자는 수신한 프리픽스의 개수이며 세션이 확립되었음을 의미합니다. 그 외의 값 — Active, Connect, Idle — 은 세션이 정상이 아니라는 뜻입니다. Up/Down은 현재 상태가 얼마나 지속되었는지를 보여주므로, 계속 리셋되는 세션은 의심스러울 정도로 작은 값을 나타냅니다.

베스트 패스 선택이 보이는 전체 테이블입니다.

Terminal window
{"command":["show-ip-bgp"]}
Instance 4094:
BGP table version is 3, local router ID is 10.0.1.4, vrf id 3
Status codes: s suppressed, d damped, h history, * valid, > best, = multipath,
i internal, r RIB-failure, S Stale, R Removed
Nexthop codes: @NNN nexthop's vrf id, < announce-nh-self
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*= 10.0.0.0/16 10.0.4.4 0 65515 i
*> 10.0.4.5 0 65515 i
*> 10.250.0.10/32 10.0.1.4 255 32768 ?
Displayed 2 routes and 3 total paths

*는 유효한 경로, >는 선택된 베스트 패스, =는 멀티패스 구성원입니다. 위 캡처에서 학습된 VNet 프리픽스 10.0.0.0/16은 두 개의 경로 — 각 Route Server 인스턴스를 경유하는 경로 — 를 가지며 *=*>로 표시됩니다. 즉 베스트 패스 하나와 멀티패스 구성원 하나이므로, 노드는 두 인스턴스에 걸쳐 반환 트래픽을 부하 분산합니다. VIP 10.250.0.10/32는 이 노드가 직접 생성하기 때문에 단일 *> 경로를 가집니다.

네이버별 상세 정보: 협상된 기능, 타이머, 메시지 카운터, 그리고 마지막 리셋의 원인입니다.

Terminal window
{"command":["show-ip-bgp-neighbors"]}

요약에서 세션이 플래핑하는 것으로 나타나고 그 이유를 알아야 할 때 사용하십시오. Last reset과 그 원인이 유용한 라인입니다.

이 노드가 알고 있는 것이 아니라, 피어에게 알리고 있는 내용입니다.

Terminal window
{"command":["show-ip-bgp-neighbors-advertised-route"]}
bgp neighbor:
BGP table version is 3, local router ID is 10.0.1.4, vrf id 3
Status codes: s suppressed, d damped, h history, * valid, > best, = multipath,
i internal, r RIB-failure, S Stale, R Removed
Nexthop codes: @NNN nexthop's vrf id, < announce-nh-self
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*> 10.0.0.0/16 0.0.0.0 0 65515 i
*> 10.250.0.10/32 0.0.0.0 255 32768 ?
Total number of prefixes 2
bgp neighbor:
BGP table version is 3, local router ID is 10.0.1.4, vrf id 3
Status codes: s suppressed, d damped, h history, * valid, > best, = multipath,
i internal, r RIB-failure, S Stale, R Removed
Nexthop codes: @NNN nexthop's vrf id, < announce-nh-self
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*> 10.0.0.0/16 0.0.0.0 0 65515 i
*> 10.250.0.10/32 0.0.0.0 255 32768 ?
Total number of prefixes 2

“VNet에서 VIP에 도달할 수 없다”는 상황을 위한 명령입니다. 여기에 VIP가 없다면 문제는 이 노드에 있으며, 피어를 아무리 살펴봐도 도움이 되지 않습니다.

출력은 피어별로 bgp neighbor: 블록을 반복하므로, 이 토폴로지에서는 동일한 두 개의 프리픽스가 두 번 — 각 Route Server 인스턴스마다 한 번씩 — 나타납니다. 이는 렌더링이 중복된 것이 아니라, 노드가 양쪽 모두에 광고하고 있음을 확인해 주는 것입니다. 한 피어에는 블록이 있는데 다른 피어에는 없거나 짧은 경우가 주목할 만한 사례입니다.