IT/ㄴ Cisco

[CISCO] BGP 구성 시 주의사항에 따른 솔루션 (Route Reflector 외)

TIENE 2025. 1. 13. 16:07
반응형

 

BGP 구성 시 주의해야 할 항목

  1. BGP 동기화:
    • 대부분의 환경에서 비활성화(no synchronization) 권장.
  2. BGP Split-Horizon Rule:
    • Route Reflector 또는 Confederation을 사용하여 우회.
  3. BGP Next-Hop:
    • Next Hop Self를 사용하거나 IGP를 통해 Next Hop 경로를 학습.

전달 유형 솔루션 설명
IBGP 세션 → IBGP 세션 Route Reflector iBGP의 Full-Mesh 요구 사항을 완화하기 위해 사용.
Route Reflector가 경로 정보를 클라이언트에 전달.
IBGP 세션 → EBGP 세션 No Synchronization BGP와 IGP가 동기화되지 않아도 경로를 광고 가능.
내부 라우팅 정보를 외부로 전달할 때 필요.
EBGP 세션 → EBGP 세션 문제 없음 기본적으로 경로 정보를 다른 EBGP 피어에게 전달 가능하므로 추가 설정 필요 없음.
EBGP 세션 → IBGP 세션 next-hop-self EBGP에서 받은 경로의 Next Hop 값을 IBGP 네트워크에서 접근 가능하도록 변경

 

  • Route Reflector: iBGP 경로 전파 문제를 해결.
  • No Synchronization: IGP와의 동기화 요구를 제거하여 경로 광고 단순화.
  • next-hop-self: Next Hop을 변경하여 내부 네트워크에서 경로 접근성을 확보.

1. IBGP 세션 → IBGP 세션: Route Reflector / Confederation

  • 문제:
    • iBGP는 Split-Horizon Rule에 따라 iBGP Peer 로부터 학습한 경로를 다른 iBGP Peer에게 광고하지 않음
    • 이에 따라, Ful-Mesh 구성이 필요함 
      • n개의 Router가 있을 때, iBGP 세션의 수는 n(n-1)/2로 증가
      • 대규모 네트워크에서 피어링 및 관리가 복잡해짐
    • Full-Mesh IBGP 연결을 통하여 Routing 정보의 Loop 현장을 막을 수 있으나, 그만큼의 TCP Session 요구
    • 과다하고 중복된 Routing Update 트래픽 발생
  • 솔루션:
    • Router Reflector :  
      • Route Reflector(RR)를 사용하여 Full-Mesh 요구 사항을 완화
      • RR은 클라이언트로부터 받은 경로 정보를 다른 클라이언트와 Non-Client에게 전달
    • Confedration :
      • 하나의 AS를 사설 AS (Sub-AS)로 분할하는 구성
  • Route-Reflector 구성 방법:
    1. 다수의 클러스터로 AS를 분할
    2. 한 클러스터에 적어도 하나의 Router Reflector를 지정, 나머지는 Router Reflector의 클라이언트로 지정
    3. 클러스터를 대표하는 Router Reflector 간의 이중화를 위해 IBGP Full-Mesh 연결
      1. Router Reflector에서 설정 (R.R)
router bgp 10
     neighbor 1.1.1.1 remote-as 10
     neighbor 1.1.1.1 route-reflector-client
     neighbor 2.1.1.1 remote-as 10
     neighbor 2.1.1.1 route-reflector-client

 

  • 주요 사항:
    • Cluster ID를 설정하여 루프를 방지합니다.
    • 잘못된 설정 시 경로 루프 또는 정보 손실 가능.

 

  • Confederation구성 방법 :
    1. 하나의 AS를 여러 개의 Sub-AS로 나누고, Sub-AS 간에는 eBGP처럼 동작하도록 구성
    2. Sub-AS 내부에서는 여전히 iBGP가 사용되지만, Sub-AS 간에는 eBGP 동작 규칙을 수행
    3. 이에 따라 Full Mesh 구성의 필요성 감소


2. IBGP 세션 → EBGP 세션: No Synchronization

  • BGP 동기화 : BGP는 기본적으로 내부 IGP와 동기화 필요
    • iBGP Router가 학습한 경로를 IGP(EIGRP, OSPF 등)가 학습하기 전까지 Routing 테이블에 추가하지 않는 규칙
    • 동기화가 활성화된 상태에서는 IGP에 경로가 존재하지 않으면 BGP가 경로를 외부로 광고하지 않음. 
      • 목적 : 
        • AS 내부에 BGP가 설정되지 않는 Router가 있을 경우, Data 패킷이 해당 Router에서 손실되는 것을 방지
        • 모든 AS 내부 Router가 IGP를 통해 경로를 학습하도록 강제 
  • 문제:
    • 동일 AS 내에 BGP가 설정되어 있지 않는 Router 존재
      • BGP가 설정되지 않은 Router는 iBGP 경로를 학습할 수 없으므로, 패킷 전달 불가능
      • 예 : AS 100에 Router1, Router2, Router3이 있고, Router3에 BGP 설정이 없으면, Router3은 iBGP 경로 학습 불가
    • BGP 동기화가 활성화된 경우
      • iBGP Router는 IGP를 통해 경로를 학습하지 못하면, BGP 경로를 Routing 테이블에 설치 X
      • 결과적으로, BGP Router는 해당 경로를 다른 Router로 전달 X
  • 솔루션:
    • no synchronization 명령어를 통해 BGP와 IGP 동기화를 비활성화
    • 이를 통해 BGP 경로가 IGP에 의존하지 않고 Routing 테이블에 설치되어 외부로 경로 광고 가능
  • 구성 방법:
router bgp <AS>
   no synchronization

 

  • 주요 사항:
    • IGP와의 동기화를 비활성화할 경우 IGP 의존도가 낮아진다
    • IGP와 BGP가 불일치할 경우 트래픽 손실 위험 존재

 

언제 동기화를 비활성화해야 하나?

  • 동기화 규칙을 비활성화하는 것이 권장되는 경우:
    1. AS 내부의 모든 라우터가 BGP를 실행하는 경우.
    2. AS 내부에 Route Reflector를 사용하는 경우.
    3. IGP를 통한 경로 전파가 필요하지 않은 경우.
  • 동기화를 활성화하는 것이 필요한 경우:
    1. AS 내부에 BGP를 실행하지 않는 라우터가 다수 존재하는 경우.
    2. IGP를 통해 경로를 확산해야 하는 요구사항이 있는 경우.

3. EBGP 세션 → IBGP 세션: next-hop-self

  • 문제:
    • EBGP에서 받은 경로의 Next Hop이 IBGP 네트워크에서 유효하지 않을 수 있다.
    • IBGP 피어가 EBGP 피어의 Next Hop에 접근할 수 없으면 경로를 사용할 수 없다.
  • 솔루션:
    • next-hop-self 명령어를 사용하여 IBGP 피어로 전달 시 Next Hop을 변경
    • Next Hop을 자신(IBGP 라우터의 인터페이스 IP)으로 설정하여 접근 가능
  • 구성 방법:
 
router bgp <AS>
    neighbor <IBGP Peer IP> next-hop-self
 
 
  • 주요 사항:
    • Next Hop 변경으로 내부 네트워크에서 경로 접근 가능
    • 잘못 설정할 경우 트래픽이 예상하지 못한 경로로 전달 가능성 존재

 

반응형