1. BGP란?
Cisco에서 BGP (Border Gateway Protocol)는 인터넷과 대규모 기업 네트워크에서 가장 중요한 라우팅 프로토콜입니다. OSPF나 EIGRP가 내부망(IGP)에서 사용되는 반면, BGP는 AS(Autonomous System) 간의 경로를 교환하는 EGP(Exterior Gateway Protocol)입니다.
BGP(Border Gateway Protocol)는 서로 다른 AS 간에 라우팅 정보를 교환하는 프로토콜입니다.
예를 들어
회사 A (AS 65001)
|
|
ISP (AS 100)
|
|
회사 B (AS 65002)
이 경우
- 회사 A ↔ ISP
- ISP ↔ 회사 B
모두 BGP를 사용하여 경로를 교환합니다.
현재 인터넷은 전 세계적으로 BGP를 기반으로 동작합니다.
2. AS(Autonomous System)
AS는 하나의 관리 조직이 운영하는 네트워크입니다.
예)
Google AS15169
Cloudflare AS13335
KT AS4766
SKB AS9318
기업 내부에서는
AS65001
AS65002
같은 Private ASN을 많이 사용합니다.
ASN 종류
1~64511 Public ASN
64512~65534 Private ASN
4Byte ASN도 지원합니다.
예)
4200000001
3. BGP 특징
Path Vector Protocol
OSPF는 Cost
EIGRP는 Metric
RIP는 Hop Count
하지만 BGP는
Path(Vector)
기반입니다.
즉
AS100
↓
AS200
↓
AS300
처럼 어떤 AS를 거쳐왔는지를 기억합니다.
4. eBGP와 iBGP
eBGP
다른 AS와 연결
AS65001
|
eBGP
|
AS65002
TTL 기본값
1
iBGP
같은 AS 내부
AS65001
R1 ----- R2 ----- R3
모두
router bgp 65001
입니다.
TTL 기본
255
5. BGP Neighbor
BGP는 반드시 Neighbor를 지정해야 합니다.
예)
R1
10.1.1.1
R2
10.1.1.2
설정
router bgp 65001
neighbor 10.1.1.2 remote-as 65002
상대도
router bgp 65002
neighbor 10.1.1.1 remote-as 65001
6. BGP Session 상태
Cisco 시험에서도 매우 중요합니다.
순서
Idle
↓
Connect
↓
Active
↓
OpenSent
↓
OpenConfirm
↓
Established
Established가 되어야 정상입니다.
확인
show ip bgp summary
예
Neighbor State
10.1.1.2 Established
7. TCP Port
BGP는
TCP 179
를 사용합니다.
OSPF처럼 자체 프로토콜이 아닙니다.
8. BGP Route Advertisement
예)
192.168.1.0/24
광고
router bgp 65001
network 192.168.1.0 mask 255.255.255.0
주의
Routing Table에 존재해야 합니다.
9. show 명령어
Neighbor 확인
show ip bgp summary
전체 Route
show ip bgp
Neighbor 상세
show ip bgp neighbors
Routing Table
show ip route bgp
10. BGP Attributes
가장 중요한 부분입니다.
Cisco 면접에서도 자주 나옵니다.
① Weight
Cisco 전용
가장 먼저 비교
큰 값 선호
기본
32768 (Local)
0 (Received)
설정
neighbor 10.1.1.2 weight 500
② Local Preference
AS 내부에서 사용
큰 값 선호
기본
100
설정
route-map LP permit 10
set local-preference 200
③ AS Path
짧을수록 좋음
예)
65001 65002
보다
65001 65005 65009
가 불리합니다.
AS Path Prepend
set as-path prepend 65001 65001 65001
일부러 길게 만들어 우회시킵니다.
④ Origin
우선순위
IGP
↓
EGP
↓
Incomplete
⑤ MED
낮을수록 좋음
다른 AS에게
“이쪽으로 들어오세요”
라고 알려주는 값입니다.
⑥ Next Hop
패킷이 실제 가야 하는 다음 장비
확인
show ip bgp
11. Best Path 선정 순서 (Cisco)
일반적인 Cisco IOS의 기본 순서는 다음과 같습니다(세부 조건에 따라 일부 단계가 추가되거나 생략될 수 있습니다).
- Weight (높은 값)
- Local Preference (높은 값)
- 로컬에서 생성한 경로 선호
- AS_PATH (짧은 경로)
- Origin (IGP > EGP > Incomplete)
- MED (낮은 값)
- eBGP 경로 선호 (iBGP보다)
- IGP Metric to Next Hop (낮은 값)
- 더 오래 유지된 경로
- Router ID 등 추가 타이브레이커
12. Route Reflector
iBGP는
모든 Router가
Full Mesh여야 합니다.
R1
|\
| \
R2-R3
Router가 많으면
엄청 복잡합니다.
그래서
RR
/ | \
R1 R2 R3
Route Reflector를 사용합니다.
13. Confederation
큰 AS를
여러 작은 AS처럼 나누어 관리합니다.
AS65001
↓
65010
65011
65012
외부에는 하나의 AS로 보입니다.
14. Next-Hop Self
iBGP에서 매우 많이 사용하는 옵션입니다.
ISP
|
R1 ---- R2
R2는 ISP의 Next Hop에 도달하지 못할 수 있습니다.
설정
neighbor 10.1.1.2 next-hop-self
15. Soft Reset
기존에는
clear ip bgp *
를 수행하면 세션이 끊어졌습니다.
현재는
clear ip bgp * soft
또는
clear ip bgp x.x.x.x soft in
clear ip bgp x.x.x.x soft out
을 사용하여 정책을 재적용하면서 세션은 유지할 수 있습니다(상대방이 Route Refresh를 지원하는 경우).
16. Route Filtering
대표적으로
Prefix List
ip prefix-list TEST permit 10.1.0.0/16
Route Map
route-map TEST permit 10
match ip address prefix-list TEST
Neighbor 적용
neighbor 10.1.1.2 route-map TEST out
17. 간단한 Cisco BGP 구성 예제
eBGP
+------+ +------+
| R1 |-------| R2 |
|65001 | |65002 |
+------+ +------+
LAN1 LAN2
192.168.1.0 192.168.2.0
R1
router bgp 65001
neighbor 10.1.1.2 remote-as 65002
network 192.168.1.0 mask 255.255.255.0
R2
router bgp 65002
neighbor 10.1.1.1 remote-as 65001
network 192.168.2.0 mask 255.255.255.0
확인
show ip bgp summary
show ip bgp
show ip route
18. 실무에서 자주 사용하는 BGP 기능
- 멀티홈(Multihoming): 두 개 이상의 ISP에 연결하여 이중화 및 트래픽 분산을 구현합니다.
- Local Preference: 내부 사용자의 아웃바운드 트래픽이 어느 ISP로 나갈지 제어합니다.
- AS Path Prepending: 외부에서 들어오는 인바운드 트래픽을 특정 회선으로 유도합니다.
- MED: 동일한 외부 AS와 여러 연결이 있을 때 선호 경로를 제안합니다.
- Community: 여러 라우트에 정책을 일괄 적용하기 위한 태그 역할을 합니다.
- Route Filtering: Prefix List와 Route Map을 사용해 필요한 경로만 광고하거나 수신합니다.
- Route Reflector: 대규모 iBGP 환경에서 Full Mesh 구성을 단순화합니다.
- Next-Hop Self: iBGP 환경에서 Next Hop 도달성 문제를 해결합니다.
예시: 멀티홈 환경
ISP-A (AS100)
|
|
+-------------+
| R1 (65001) |
+-------------+
|
내부 네트워크
|
+-------------+
| R2 (65001) |
+-------------+
|
|
ISP-B (AS200)
- Local Preference를 높여 내부 사용자의 기본 출구를 ISP-A로 설정
- ISP-B는 백업 경로로 유지
- 특정 서비스는 AS Path Prepending을 적용하여 외부에서 ISP-B를 통해 유입되도록 조정
- 장애 발생 시 BGP가 자동으로 대체 경로를 선택
답글 남기기