본문 바로가기
IT기술

BGP 구성 및 실습 예제: 시스코와 아리스타 라우터 설정 가이드

by romydady 2025. 7. 12.
반응형

BGP 개요

BGP(Border Gateway Protocol)는 인터넷의 핵심 라우팅 프로토콜로, 서로 다른 AS(Autonomous System) 간의 경로 정보를 교환하는 역할을 합니다. BGP는 경로 벡터 프로토콜로 분류되며, 루프 방지와 정책 기반 라우팅을 제공합니다.

BGP의 주요 특징

  • Path Vector Protocol: 경로 정보를 포함하여 루프 방지
  • Policy-based Routing: 다양한 정책 적용 가능
  • Scalability: 대규모 네트워크에서 안정적 동작
  • Incremental Updates: 변경사항만 전송하여 효율성 향상

BGP 메시지 타입과 상태 변화

BGP 메시지 타입

BGP는 4가지 메시지 타입을 사용합니다:

  1. OPEN 메시지: BGP 세션 초기화
  2. UPDATE 메시지: 경로 정보 교환
  3. KEEPALIVE 메시지: 세션 유지
  4. NOTIFICATION 메시지: 오류 통지 및 세션 종료

BGP 상태 변화 과정

BGP 피어 간 세션은 다음 6가지 상태를 거칩니다:

  1. Idle: 초기 상태, 연결 시도 대기
  2. Connect: TCP 연결 시도 중
  3. Active: TCP 연결 재시도 중
  4. OpenSent: OPEN 메시지 전송 후 대기
  5. OpenConfirm: OPEN 메시지 수신 후 KEEPALIVE 대기
  6. Established: 정상 세션 상태, 경로 정보 교환

기본 BGP 설정

시스코 라우터 기본 설정

! BGP 프로세스 시작 (AS 65001)
router bgp 65001

! 라우터 ID 설정
bgp router-id 192.168.1.1

! 네트워크 광고
network 10.1.0.0 mask 255.255.0.0
network 172.16.0.0 mask 255.255.0.0

! 최대 경로 수 설정
maximum-paths 4

! BGP 로그 활성화
bgp log-neighbor-changes

아리스타 라우터 기본 설정

! BGP 프로세스 시작
router bgp 65001

! 라우터 ID 설정
router-id 192.168.1.1

! 네트워크 광고
network 10.1.0.0/16
network 172.16.0.0/16

! 최대 경로 수 설정
maximum-paths 4

! BGP 로그 활성화
bgp log-neighbor-changes

iBGP 세션 구성

iBGP(Internal BGP)는 같은 AS 내의 라우터 간 BGP 세션입니다.

시스코 iBGP 설정

! 기본 BGP 설정
router bgp 65001
bgp router-id 192.168.1.1

! iBGP 피어 설정
neighbor 192.168.1.2 remote-as 65001
neighbor 192.168.1.2 description "iBGP-Peer-R2"
neighbor 192.168.1.2 update-source loopback0

! 다음 홉 자기 자신으로 설정
neighbor 192.168.1.2 next-hop-self

! 루프백 인터페이스 설정
interface loopback0
ip address 192.168.1.1 255.255.255.255

아리스타 iBGP 설정

! 기본 BGP 설정
router bgp 65001
router-id 192.168.1.1

! iBGP 피어 설정
neighbor 192.168.1.2 remote-as 65001
neighbor 192.168.1.2 description iBGP-Peer-R2
neighbor 192.168.1.2 update-source loopback0

! 다음 홉 자기 자신으로 설정
neighbor 192.168.1.2 next-hop-self

! 루프백 인터페이스 설정
interface loopback0
ip address 192.168.1.1/32

eBGP 세션 구성

eBGP(External BGP)는 서로 다른 AS 간의 BGP 세션입니다.

시스코 eBGP 설정

! 기본 BGP 설정
router bgp 65001
bgp router-id 192.168.1.1

! eBGP 피어 설정
neighbor 10.1.1.2 remote-as 65002
neighbor 10.1.1.2 description "eBGP-Peer-ISP"
neighbor 10.1.1.2 ebgp-multihop 2

! 인터페이스 설정
interface gigabitethernet0/0
ip address 10.1.1.1 255.255.255.252
no shutdown

! 기본 라우트 광고 (선택사항)
default-information originate

아리스타 eBGP 설정

! 기본 BGP 설정
router bgp 65001
router-id 192.168.1.1

! eBGP 피어 설정
neighbor 10.1.1.2 remote-as 65002
neighbor 10.1.1.2 description eBGP-Peer-ISP
neighbor 10.1.1.2 ebgp-multihop 2

! 인터페이스 설정
interface ethernet1
ip address 10.1.1.1/30
no shutdown

! 기본 라우트 광고 (선택사항)
default-information originate

BGP 피어링 실습

실습 시나리오

3개의 라우터로 구성된 네트워크:

  • R1 (AS 65001): 192.168.1.1
  • R2 (AS 65001): 192.168.1.2
  • R3 (AS 65002): 10.1.1.2

시스코 라우터 전체 설정 예제

R1 설정 (시스코)

! 호스트명 설정
hostname R1

! 인터페이스 설정
interface loopback0
ip address 192.168.1.1 255.255.255.255

interface gigabitethernet0/0
ip address 10.1.1.1 255.255.255.252
no shutdown

interface gigabitethernet0/1
ip address 172.16.1.1 255.255.255.252
no shutdown

! BGP 설정
router bgp 65001
bgp router-id 192.168.1.1
bgp log-neighbor-changes

! 네트워크 광고
network 192.168.1.0 mask 255.255.255.0
network 172.16.0.0 mask 255.255.0.0

! iBGP 피어 (R2)
neighbor 192.168.1.2 remote-as 65001
neighbor 192.168.1.2 description "iBGP-Peer-R2"
neighbor 192.168.1.2 update-source loopback0
neighbor 192.168.1.2 next-hop-self

! eBGP 피어 (R3)
neighbor 10.1.1.2 remote-as 65002
neighbor 10.1.1.2 description "eBGP-Peer-R3"

R2 설정 (아리스타)

! 호스트명 설정
hostname R2

! 인터페이스 설정
interface loopback0
ip address 192.168.1.2/32

interface ethernet1
ip address 172.16.1.2/30
no shutdown

! BGP 설정
router bgp 65001
router-id 192.168.1.2
bgp log-neighbor-changes

! 네트워크 광고
network 10.2.0.0/16

! iBGP 피어 (R1)
neighbor 192.168.1.1 remote-as 65001
neighbor 192.168.1.1 description iBGP-Peer-R1
neighbor 192.168.1.1 update-source loopback0
neighbor 192.168.1.1 next-hop-self

BGP 상태 모니터링

시스코 모니터링 명령어

! BGP 요약 정보 확인
show ip bgp summary

! BGP 테이블 확인
show ip bgp

! 특정 네트워크 경로 확인
show ip bgp 10.1.0.0/16

! BGP 피어 상세 정보
show ip bgp neighbors

! BGP 프로세스 정보
show ip protocols

아리스타 모니터링 명령어

! BGP 요약 정보 확인
show ip bgp summary

! BGP 테이블 확인
show ip bgp

! 특정 네트워크 경로 확인
show ip bgp 10.1.0.0/16

! BGP 피어 상세 정보
show ip bgp neighbors

! BGP 설정 확인
show running-config section bgp

일반적인 BGP 상태 출력 예제

BGP router identifier 192.168.1.1, local AS number 65001
BGP table version is 15, main routing table version 15
8 network entries using 1152 bytes of memory
16 path entries using 2080 bytes of memory

Neighbor        V    AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd
192.168.1.2     4 65001      45      44       15    0    0 00:35:20        4
10.1.1.2        4 65002      38      41       15    0    0 00:32:15        3

트러블슈팅 가이드

일반적인 BGP 문제와 해결방법

1. BGP 피어 상태가 Active에서 멈춤

! 원인: TCP 연결 실패
! 해결: 연결성 확인
ping 10.1.1.2

! 라우팅 확인
show ip route 10.1.1.2

2. BGP 피어 상태가 OpenSent에서 멈춤

! 원인: OPEN 메시지 불일치
! 해결: AS 번호 확인
show ip bgp neighbors | include remote AS

3. BGP 경로가 전파되지 않음

! 원인: 네트워크 광고 누락
! 해결: network 명령 확인
show running-config | section router bgp

BGP 디버깅 명령어

시스코 디버깅

! BGP 이벤트 디버깅
debug ip bgp events

! BGP 업데이트 디버깅
debug ip bgp updates

! TCP 연결 디버깅
debug ip tcp transactions

아리스타 디버깅

! BGP 로그 확인
show logging | grep bgp

! BGP 이벤트 모니터링
show ip bgp neighbors detail

성능 최적화 팁

BGP 타이머 조정

! 시스코
neighbor 10.1.1.2 timers 30 90

! 아리스타
neighbor 10.1.1.2 timers 30 90

BGP 속성 최적화

! 경로 선택 최적화
bgp bestpath as-path multipath-relax
bgp bestpath med missing-as-worst

메모리 사용량 모니터링

show processes memory | include bgp
show ip bgp summary | include memory

결론

BGP는 인터넷 라우팅의 핵심 프로토콜로, 올바른 설정과 모니터링이 매우 중요합니다. 이 글에서 다룬 시스코와 아리스타 라우터의 BGP 설정 방법을 통해 안정적인 BGP 네트워크를 구축할 수 있습니다.

특히 iBGP와 eBGP의 차이점을 이해하고, 적절한 피어링 설정과 지속적인 모니터링을 통해 네트워크의 안정성과 성능을 확보할 수 있습니다. BGP 상태 변화 과정과 메시지 타입을 숙지하여 트러블슈팅 시 빠른 문제 해결이 가능합니다.

 

2025.07.12 - [IT기술] - BGP란 무엇인가? 인터넷의 핵심 라우팅 프로토콜 기본개념 알아보기

2024.05.25 - [IT뉴스] - FCC의 BGP 보안 강화를 위한 제안

2025.06.20 - [IT기술] - RPKI로 BGP 하이재킹을 완벽하게 막는 방법: 정의부터 설정까지

2025.07.10 - [IT기술] - 싱크홀 라우팅이란? 유해 트래픽을 블랙홀로 빨아들이는 네트워크 보안 기술 가이드

반응형

댓글