# Dynamic Routing
## **개요**
라우터가 **Dynamic Routing Protocol**을 통해서 직접 네트워크의 변화를 감지하고 다른 라우터들과 정보를 교환하여 자동으로 라우팅 테이블을 생성하고 유지하여 경로를 자체적으로 유지하는 것.
---
## **Dynamic Route**
라우터가 Dynamic Routing Protocol을 통해 자동으로 학습하고 추가한 경로 데이터를 의미한다. 그 경로들은 라우터에서 `show ip route` 명령어를 통해 라우팅 테이블에서 확인할 수 있다.
쉽게 말하자면 라우팅들이 Dynamic Routing Protocol을 통해 등록한 entry, 결과를 말한다. Dynamic Route 값은 Dynamic Routing Protocol에 의해 결정된다.
그래서 Dynamic Route와 Dynamic Routing Protocol은 연관 있지만 구별 가능한 개념이다.
---
## **Dynamic Routing Protocol**
### 대분류
다양한 Dynamic Routing Protocol은 [[AS (Autonomonus System)]]가 기준으로 대분류된다.
| 대분류 | 약어 | 설명 |
| ------- | ------------------------- | ----------------------------- |
| **IGP** | Interior Gateway Protocol | **자율 시스템 내부에서** 사용하는 라우팅 프로토콜 |
| **EGP** | Exterior Gateway Protocol | **자율 시스템 간(인터넷 간)** 라우팅에 사용 |
>[!question] **왜 IGP와 BGP를 나눠야 할까?**
> 내부망과 인터넷은 구조, 목적, 안정성 요구가 다르기 때문
### 소분류
#### 요약
**내부 라우팅 (IGP)**
| 범주 | 프로토콜 | 라우팅 방식 | 주요 특징 |
| --------------- | ---------------- | -------------- | -------------------- |
| Distance Vector | **RIP (v1/v2)** | 홉 수 기반 | 단순, 느림, 15홉 제한 |
| Link-State | **OSPF (v2/v3)** | SPF(Dijkstra) | 빠름, Area 기반 구조 |
| Link-State | **IS-IS** | SPF | 대형 ISP용, TLV 기반 |
| Hybrid | **EIGRP** | DUAL 알고리즘 | Cisco 전용(현재 표준화), 빠름 |
| Static Routing | (수동) | 직접 지정 | 관리자는 직접 경로 설정 |
| Default Routing | (기본 게이트웨이) | 0.0.0.0/0 → GW | 인터넷으로 단순 전파 시 사용 |
**외부 라우팅 (BGP)**
| 범주 | 프로토콜 | 라우팅 방식 | 주요 특징 |
| ----------- | -------- | ------------------------- | ------------------------- |
| Path Vector | **BGP** | 정책 기반 (AS Path, Weight 등) | 인터넷 라우팅 표준, 완전한 정책 기반 |
| | **eBGP** | AS 간 외부 피어 연결 | TTL 1, loop 방지, 경로 광고 절제적 |
| | **iBGP** | AS 내부 BGP 피어 연결 | full-mesh 필요, loop 방지 필수 |
**내부 라우팅 (IGP) vs 외부 라우팅 (BGP)**
| 항목 | IGP | EGP |
| ------ | ----------------------- | ----------------------------------- |
| 용도 | 자율 시스템 내부 라우팅 | 자율 시스템 간 라우팅 |
| 사용 대상 | 기업망, 캠퍼스망, ISP 내부 | ISP 간, 국가 간 백본 네트워크 |
| 속도 | 빠름 (ms 단위 수렴) | 느림 (정책 중심, 수초\~수분) |
| 프로토콜 | RIP, OSPF, EIGRP, IS-IS | BGP (eBGP, iBGP) |
| 라우팅 기준 | 메트릭(Cost, Delay, 홉 등) | 정책(AS\_PATH, LOCAL\_PREF, WEIGHT 등) |
---
#### 상세
##### ▷ IGP (Interior Gateway Protocol)
> [!note] 💡 **IGP란?**
> * **자율 시스템 내부에서** 사용하는 라우팅 프로토콜
> * 라우팅의 기준: **Metric **
> 1. Link-State
> 2. Distance Vector
**1. Link-State**
> [!note] 💡 **링크 상태란?**
> * 라우터가 자신의 인터페이스에 대해 갖고 있는 정보로,
> * "나는 어떤 네트워크에 연결되어 있고, 그 속성은 이러하다"
* **특징**
* 전체 네트워크 맵(토폴로지)을 학습해서 최적 경로를 계산
* 네트워크가 크더라도 더 빠르고 최적화된 경로를 제공
* 각 라우터가 독립적으로 경로를 계산함
* 루프 위험은 **낮음** - SPF가 강제되지 않는다
* **종류**
* [[OSPF (Open Shortest Path First)]]
* [[IS-IS (Intermediate System to Intermediate System)]]
**2. Distance Vector**
> [!note] 💡 **거리 벡터란?**
> * 각 라우터가 "내가 알고 있는 목적지까지의 거리(메트릭)와 다음 홉(방향)"만 이웃에게 전달하는 방식
* **특징**
* 경로를 벡터(방향 + 거리)로 계산
* 루프 위험도 있음 - SPF 강제성이 있음
* 주기적으로 전체 라우팅 테이블을 이웃 라우터와 공유
* 라우팅 업데이트 속도가 상대적으로 느림
* 네트워크 과부하 발생 가능
* **종류**
* [[EIGRP (Enhanced Interior Gateway Routing Protocol)]]
* [[RIP (Routing Information Protocol)]]
##### ▷ EGP (Exterior Gateway Protocol)
> [!note] 💡 **EGP란?**
> * **자율 시스템 간(인터넷 간)** 라우팅에 사용
1. **BGP (Border Gateway Protocol)**
* **운용 모드**
* iBGP (Internal BGP)
* 내부 BGP (AS 내부 피어 간)
* EBGP (External BGP)
* 외부 BGP (AS 외부 피어 간)
---
## AD 값
| 프로토콜 | 유형 | AD |
| ------- | ----- | --- |
| IBGP | 패스 벡터 | 200 |
| RIP | 거리 벡터 | 120 |
| IS - IS | 링크 상태 | 115 |
| OSPF | 링크 상태 | 110 |
| EIGRP | 거리 벡터 | 90 |
| EBGP | 패스 벡터 | 20 |
---
## Metrix
* 라우팅 프로토콜이 경로의 비용을 평가하는 기준
* 즉, 라우터가 동일한 목적지로 가는 여러 개의 경로 중 최적의 경로를 선택하기 위해 사용하는 값
* **Metrix 계산 기준**
| 프로토콜 | 기준 |
| ----- | ---------------- |
| RIP | Hop |
| EIGRP | 대역폭, 지연, 신뢰도, 로드 |
| OSPF | 대역폭 |
| BGP | 경로 속성 |
---
## ⚙️ 프로토콜 선택 가이드 (상황별 판단 기준)
| 시나리오 | 추천 프로토콜 | 이유 |
| ---------------- | --------------- | ---------------------- |
| 소규모 내부망 (10대 이하) | RIP, Static | 단순 구조, 구성 편의성 |
| 기업 캠퍼스 / 브랜치 연결 | EIGRP, OSPF | 빠른 수렴, 확장성, 벤더 지원 다양 |
| 멀티 Area 통합망 | OSPF | Area 기반 계층적 구조 지원 |
| ISP 내부 백본 | IS-IS | 고확장성, TLV 기반 멀티 벤더 안정성 |
| 인터넷 백본/IXP/국가 간 | BGP (iBGP/eBGP) | 정책 기반 경로 제어, 안정성, 필터링 |
## 확장
* [[BFD (Bidirectional Forwarding Detection)]]