Intro
OSPF와 같은 IGP 프로토콜은 하나의 라우팅 정보만 변경이 되면 전체 네트워크 장비에게 광고(예를들어 LSA Flooding)가 가기에 네트워크에는 큰 부담이 된다.
그러므로 거대한 네트워크를 가진 AS끼리는 로컬 정보를 공유하지 않는 BGP를 보통 사용한다.
- BGP는 Network Prefix 정보만 AS 간에 전송한다.
EBGP vs IBGP
- EBGP는 서로 다른 AS간의 연결을 위해 사용한다
- AS 간에 Redundancy를 위해 복수의 BR(Bridge?)들을 연결한다
- IBGP는 동일한 AS내에 있는 Border Route 간의 Routing Table의 동기를 맞추기 위해 사용한다
- 만약 IBGP설정이 없다면 다른 AS 에서의 패킷이 OSPF와 같은 IGP를 통하게 된다면 목적지를 잃어버릴수 있다(Black Holed).
- Black Hole Solution 1 = BGP 경로를 IGP로 Redistribution한다 (Synchronization 기능)
- 다음 라우터에 패킷을 전송하기 전에 IGP 테이블을 검사한다
- 만약 IGP 테이블에 목적지 정보가 없다면 전파하지 않음 (Black Hole 예방은 되지만 Packet 전달 불가능)
- Black Hole Solution 2 = NON-BGP Router에도 BGP를 구동한다 (이때는 Synchronization 기능을 Disable하자)
- Black Hole Solution 1 = BGP 경로를 IGP로 Redistribution한다 (Synchronization 기능)
- 만약 IBGP설정이 없다면 다른 AS 에서의 패킷이 OSPF와 같은 IGP를 통하게 된다면 목적지를 잃어버릴수 있다(Black Holed).
EBGP 연결
Pysical Interface 주소사용을 권장한다. 이는 IBGP와 다르게 EBGP는 보통 사업자간의 연결이므로 (Peer to Peer 연결) 우회 경로가 없는경우가 대부분이기 때문이다.
IBGP 연결
Physical Interface 주소와 Logical (Loop-back) Interface 주소를 사용할수 있으며 Loop-back Interface를 권장한다.
(Loop-back Interface 주소를 사용한다면 Link가 끊겨도 우회경로를 통해 연결이 유지된다)
BGP 상태변화
Idle -> Connect(or Active if BGP Session Failed) -> Open_Sent -> Open Confirm -> Established
- Idle - BGP Session 연결시도
- Active - BGP Session 실패
- Connect - Open Message 전송
- Open_Sent - Open Message 수신(분석)
- Open Confirm - Hold Timer 초기화
- Established(연결 완료) - BGP 테이블 버전 검사
BGP Attributes
Route-Reflector
- RR의 역할: Client에게 자신이 알고 있는 BGP경로 정보 전달
- Client의 역할: RR로부터 BGP 경로 정보 수신
- Cluster : RR별로 RR과 그의 Client 그룹을 말한다
만약 5개이 Router를 서로 전부 IBGP로 연결하려고 한다면 총 10개의 IBGP세션이 필요하다.
하지만 Route-Reflector를 설정한다면 필요 IBGP개수가 현저히 줄어들게 된다 (나머지는 Client로 설정)
Route-Reflector를 이용한 Looping 방지기법
- 둘다 자신의 ID(Router ID 또는 Cluster ID)를 속성에 추가하여 추후에 자신의 ID정보를 가진 Route정보를 가지면 폐기한다.
- ORIGINATOR_ID - 클러스터 내부의 Loop 방지용
- CLUSTER_LIST - AS 내부의 Cluster 간의 Loop 방지용
Route Flap Dampening
- Route Flapping - 라우터 간의 링크, 경로 등이 죽었다 살았다를 반복하는 현상
- Route Flap Dampening - 만약 Flapping 현상이 계속 발생된다면 Route Advertisement를 억제 한다
'Infra > 네트워크' 카테고리의 다른 글
[Packet Tracer] 1. 기본 셋업 명령어 (0) | 2020.07.18 |
---|---|
01. 기초 - 장비 특징 및 서브네팅 (0) | 2020.07.18 |
2. [라우팅] BGP - 알고리즘 (0) | 2020.06.29 |
1. [라우팅] 프로토콜의 분류: Distance Vector Routing vs. Link State Routing (0) | 2020.06.29 |
NBP 인터뷰 대비 네트워크 용어 정리 (0) | 2020.06.18 |