Network Engineering Curriculum
OSPF & BGP
Zero to Hero
Cisco 네트워크 엔지니어 / 아키텍트 / 프리세일즈를 위한 정규 커리큘럼
📑 목차 (Table of Contents)
- Phase 0 — 기초 다지기
- Phase 1 — OSPF 기초
- 패킷 타입 5종 / Neighbor 상태 머신 / DR·BDR / Cost
- Phase 2 — OSPF 심화
- Multi-Area / LSA 타입 완전 정복 / 재분배 / 집약
- Phase 3 — OSPF 고급 설계
- Phase 4 — BGP 기초
- iBGP/eBGP / 상태 머신 / 메시지 4종 / 기본 설정
- Phase 5 — BGP 심화
- Best Path 12단계 / 속성 / Route Reflector / Community
- Phase 6 — BGP 고급 / SP 설계
- Phase 7 — 통합 실습
- 자격증 로드맵
- 트러블슈팅 Quick Reference
커리큘럼 로드맵
Phase 0
기초 다지기
IP 라우팅, VLSM, CEF, 서브네팅 완전 이해
⏱ 5H
Phase 1
OSPF 기초
Single-Area, 패킷 타입, DR/BDR, Cost 메트릭
⏱ 12H
Phase 2
OSPF 심화
Multi-Area, LSA 7종 완전 정복, 재분배·집약
⏱ 18H
Phase 3
OSPF 고급 설계
BFD, Fast Reroute, 보안 인증, 대규모 설계 원칙
⏱ 10H
Phase 4
BGP 기초
iBGP/eBGP 차이, FSM, 메시지 4종, 기본 설정
⏱ 14H
Phase 5
BGP 심화
Best Path 12단계, 속성, RR, Confederation, Community
⏱ 20H
Phase 6
BGP 고급 / SP 설계
MPLS L3VPN, 멀티홈 인터넷, RPKI 보안, 프리세일즈 시나리오
⏱ 16H
Phase 7
통합 실습
GNS3/EVE-NG 토폴로지 기반 설계·구현·트러블슈팅
⏱ 10H
Phase 0 — 기초 다지기 5H
0-1. IP 라우팅 기초
| 개념 | 핵심 내용 |
|---|---|
| Longest Prefix Match | 라우팅 테이블에서 목적지와 가장 길게 일치하는 경로 선택. CEF HW 가속으로 처리 |
| Administrative Distance | Connected=0, Static=1, OSPF=110, iBGP=200, eBGP=20. 낮을수록 우선 |
| Recursive Lookup | BGP Next-Hop이 직접 연결되지 않아 IGP로 재귀 조회하는 메커니즘 |
| CEF (Cisco Express Forwarding) | FIB + Adjacency Table로 하드웨어 수준 포워딩. 기본 활성화 |
Check Point
show ip route / show ip cef / show arp 를 막힘 없이 해석할 수 있어야 Phase 1으로 넘어가세요. Phase 1 — OSPF 기초 12H
OSPF는 Link-State 알고리즘 기반 IGP. RFC 2328(OSPFv2) / RFC 5340(OSPFv3). Dijkstra SPF 알고리즘으로 최단 경로 계산.
1-1. OSPF 동작 과정 (7단계)
| # | 단계 | 설명 |
|---|---|---|
| 1 | Hello 교환 | Multicast 224.0.0.5로 Hello 전송 → 이웃(Neighbor) 발견 |
| 2 | 2-Way | Hello에서 자신의 Router ID 확인 → DR/BDR 선출 (멀티액세스) |
| 3 | ExStart | Master/Slave 결정. Router ID 높은 쪽이 Master |
| 4 | Exchange | DBD(Database Description) 패킷으로 LSDB 목록 교환 |
| 5 | Loading | LSR로 부족한 LSA 요청 → LSU로 수신 |
| 6 | Full | LSDB 동기화 완료. SPF 계산 시작 |
| 7 | SPF 계산 | Dijkstra로 최단 경로 트리(SPT) 구성 → 라우팅 테이블 업데이트 |
1-2. OSPF 패킷 타입 5종
| Type | 이름 | 역할 | 주요 파라미터 |
|---|---|---|---|
| 1 | Hello | 이웃 발견 및 유지 | Hello 10s / Dead 40s (기본) |
| 2 | DBD | LSDB 요약 교환 | Master/Slave, Sequence Number |
| 3 | LSR | 특정 LSA 요청 | LSA Type, LSID, ADV Router |
| 4 | LSU | LSA 실제 전달 | 하나 이상의 LSA 포함 |
| 5 | LSAck | LSU 수신 확인 | 신뢰성 보장 |
1-3. DR/BDR 선출 메커니즘
| 순위 | 기준 | 비고 |
|---|---|---|
| 1순위 | OSPF Priority (높을수록 유리) | 기본값 1, 범위 0~255 |
| 2순위 | Router ID (높을수록 유리) | Priority 동일 시 적용 |
| 예외 | Priority = 0 | DR/BDR 선출에서 영구 제외 |
Design Tip
Core/Distribution 스위치에 ip ospf priority 255, Access 레이어는 ip ospf priority 0 설정이 베스트 프랙티스입니다.1-4. OSPF Cost — Reference Bandwidth 주의!
| 인터페이스 | 기본 Cost (ref=100M) | 권장 Cost (ref=10G) |
|---|---|---|
| FastEthernet 100M | 1 | 100 |
| GigabitEthernet 1G | 1 ⚠️ | 10 |
| 10GigabitEthernet | 1 ⚠️ | 1 |
| 100G | 1 ⚠️ | 0.1 → 수동 설정 필요 |
Critical Warning
GE 이상 환경에서 반드시 auto-cost reference-bandwidth 10000 (10G 기준)을 모든 OSPF 라우터에 동일하게 설정하세요. 미설정 시 GE와 10GE Cost가 동일하여 서브옵티멀 라우팅 발생!1-5. OSPF 기본 설정 (Cisco IOS)
Cisco IOS
! OSPF 프로세스 설정 (권장 방식) router ospf 1 router-id 1.1.1.1 auto-cost reference-bandwidth 10000 passive-interface default ! 기본 모든 인터페이스 passive no passive-interface GigabitEthernet0/0 ! 업링크만 active log-adjacency-changes detail ! 인터페이스 방식 (network 문 대신 권장) interface GigabitEthernet0/0 ip ospf 1 area 0 ip ospf cost 10 ip ospf priority 255 ip ospf hello-interval 3 ! 빠른 수렴 (Dead=12s) ip ospf dead-interval 12
Phase 2 — OSPF 심화 18H
2-1. Area 타입 완전 정복
| Area 타입 | 허용 LSA | 차단 LSA | 사용 목적 |
|---|---|---|---|
| Backbone (Area 0) | Type 1~7 전부 | 없음 | 모든 Area의 허브 |
| Regular Area | Type 1~5, 7 | 없음 | 일반 영역 |
| Stub | Type 1, 2, 3 | Type 4, 5 | 외부 경로 차단 → Default Route |
| Totally Stub | Type 1, 2 | Type 3, 4, 5 | Inter-Area도 차단 → Default만 |
| NSSA | Type 1, 2, 3, 7 | Type 5 | Area 내 ASBR 허용 (Type 7→5 변환) |
| Totally NSSA | Type 1, 2, 7 | Type 3, 4, 5 | NSSA + Totally Stub 결합 |
2-2. LSA 타입 7종 완전 정복
| Type | 이름 | 생성자 | 전파 범위 | 내용 |
|---|---|---|---|---|
| Type 1 | Router LSA | 모든 라우터 | Area 내부만 | 자신의 링크 상태 및 Cost |
| Type 2 | Network LSA | DR | Area 내부만 | 멀티액세스 네트워크 라우터 목록 |
| Type 3 | Summary LSA | ABR | Inter-Area | 다른 Area의 네트워크 요약 |
| Type 4 | ASBR Summary LSA | ABR | 전체 AS | ASBR 위치 정보 |
| Type 5 | AS External LSA | ASBR | 전체 AS (Stub 제외) | 외부(재분배) 경로 |
| Type 7 | NSSA External LSA | NSSA의 ASBR | NSSA 내부 → ABR에서 Type5 변환 | NSSA 내 외부 경로 |
| Type 9/10/11 | Opaque LSA | 확장 기능 | Type별 상이 | MPLS TE, Graceful Restart 등 |
Exam Tip
Type 3은 ABR이 생성. Type 5는 ASBR. Type 7은 NSSA 내 ASBR이 생성하고 ABR에서 Type 5로 변환. 이 구분은 CCNP/CCIE 단골 문제입니다!2-3. 경로 재분배 시 루프 방지 (Tag 활용)
Cisco IOS — Mutual Redistribution
! OSPF → BGP 재분배 시 Tag 부착 route-map OSPF_TO_BGP permit 10 match tag 100 set tag 200 ! BGP로 재분배 시 다른 태그 route-map OSPF_TO_BGP deny 20 ! Tag 200(BGP 출신) 역유입 차단 match tag 200 router bgp 65001 redistribute ospf 1 route-map OSPF_TO_BGP router ospf 1 redistribute bgp 65001 subnets metric-type 1 tag 100
Mutual Redistribution 주의
양방향 재분배 시 라우팅 루프 위험. 반드시 Tag를 활용한 역방향 유입 차단 필수! Phase 3 — OSPF 고급 설계 10H
3-1. 수렴 최적화 기법
| 기법 | 효과 | 설정 |
|---|---|---|
| BFD | ms 단위 장애 감지 (~300ms) | ip ospf bfd |
| Hello/Dead 튜닝 | Hello 1s / Dead 4s | 이웃 간 동일 설정 필수 |
| SPF Throttle | 연속 SPF 계산 억제 | timers throttle spf 50 200 5000 |
| LSA Throttle | LSA 생성 빈도 제한 | timers throttle lsa 50 200 5000 |
| LFA Fast-Reroute | 백업 경로 사전 계산 → 즉시 전환 | fast-reroute per-link enable |
| Incremental SPF | 변경 부분만 재계산 | IOS 기본 활성화 |
3-2. OSPF 인증
| 타입 | 방식 | 권장 |
|---|---|---|
| Type 0 | 인증 없음 | ❌ 프로덕션 금지 |
| Type 1 | 평문 패스워드 | ❌ 스니핑 취약 |
| Type 2 | MD5 인증 | ✅ 최소 요구 수준 |
| SHA (OSPFv3) | SHA-256 IPsec | ✅✅ 권장 |
Phase 4 — BGP 기초 14H
BGP (Border Gateway Protocol)는 인터넷의 라우팅 프로토콜. RFC 4271 기반 Path-Vector 방식. TCP Port 179 사용.
4-1. OSPF vs BGP 핵심 비교
| 항목 | OSPF | BGP |
|---|---|---|
| 목적 | AS 내부 경로 교환 (IGP) | AS 간 경로 교환 (EGP) |
| 알고리즘 | Link-State (Dijkstra) | Path-Vector (정책 기반 선택) |
| 메트릭 | Cost (단일 값) | 다양한 속성 조합 |
| 수렴 속도 | 빠름 (초 단위) | 느림 (분 단위) |
| 확장성 | 수백 라우터 | 인터넷 전체 (900K+ 프리픽스) |
| Transport | IP Protocol 89 (Multicast) | TCP Port 179 (Unicast) |
4-2. iBGP vs eBGP 핵심 차이
| 항목 | iBGP | eBGP |
|---|---|---|
| 피어 관계 | 같은 AS 내부 | 다른 AS 간 |
| TTL 기본값 | 255 (Loopback 피어링 가능) | 1 (직접 연결 필요) |
| Next-Hop 변경 | 변경 안 함 (기본) | 자신으로 변경 |
| AD 값 | 200 | 20 |
| Loop Prevention | Split Horizon (iBGP→iBGP 재광고 금지) | AS_PATH에 자신 AS 포함 시 무시 |
| 풀메시 필요 | 기본적으로 필요 (RR로 해소) | 불필요 |
iBGP Split Horizon
iBGP에서 배운 경로는 다른 iBGP 피어에게 재광고하지 않습니다. 따라서 AS 내 풀메시 구성이 필요하거나, Route Reflector 또는 Confederation을 반드시 사용해야 합니다.4-3. BGP 상태 머신 (FSM)
| 상태 | 설명 | 트러블슈팅 포인트 |
|---|---|---|
| Idle | BGP 시작 전 대기 | BGP 프로세스 시작 여부 확인 |
| Connect | TCP 세션 연결 시도 중 | - |
| Active | TCP 연결 실패 후 재시도 | ⚠️ ACL 차단, 라우팅 미설정, update-source 미설정 |
| OpenSent | OPEN 메시지 전송 완료 | AS번호 불일치 확인 |
| OpenConfirm | OPEN 수신, KEEPALIVE 교환 중 | - |
| Established ✅ | BGP 세션 완전 수립 | 정상 상태 |
4-4. BGP 기본 설정
Cisco IOS — eBGP + iBGP
! eBGP 설정 (AS 65001 ↔ AS 65002) router bgp 65001 bgp router-id 1.1.1.1 bgp log-neighbor-changes no bgp default ipv4-unicast ! AFI/SAFI 명시적 활성화 권장 ! neighbor 203.0.113.1 remote-as 65002 neighbor 203.0.113.1 description ISP-A-eBGP ! address-family ipv4 unicast neighbor 203.0.113.1 activate network 198.51.100.0 mask 255.255.255.0 neighbor 203.0.113.1 soft-reconfiguration inbound exit-address-family ! iBGP 설정 (Loopback 소스 필수) neighbor 10.255.0.2 remote-as 65001 neighbor 10.255.0.2 update-source Loopback0 ! 반드시 설정 neighbor 10.255.0.2 next-hop-self ! eBGP Next-Hop 전달 시
Phase 5 — BGP 심화 20H
5-1. BGP Best Path 선택 알고리즘 — 12단계 (암기 필수!)
1
Weight
Cisco 전용. 높을수록 유리. 기본값 0. 로컬 라우터에만 적용 (전파 안됨)
2
LOCAL_PREF
AS 내부 선호도. 높을수록 유리. 기본값 100. iBGP 내에서만 전파 → 아웃바운드 트래픽 경로 제어
3
Locally Originated
network / aggregate / redistribute 로 직접 생성한 경로 우선
4
AS_PATH Length
AS_PATH 홉 수가 짧을수록 유리. AS_PATH Prepend로 조작 가능
5
ORIGIN
IGP(i) > EGP(e) > Incomplete(?) 순으로 선호
6
MED
낮을수록 유리. 기본 0. eBGP 이웃에 전파 → 인바운드 트래픽 진입점 제어
7
eBGP > iBGP
eBGP에서 받은 경로를 iBGP보다 우선
8
IGP Metric to Next-Hop
BGP Next-Hop까지 IGP 비용이 낮은 쪽 우선
9
Oldest eBGP Path
가장 오래된 eBGP 경로 우선 (안정성)
10
BGP Router ID
Router ID가 낮은 이웃의 경로 우선
11
Cluster List Length
Route Reflector Cluster List가 짧을수록 우선
12
Neighbor IP
Neighbor IP 주소가 낮은 쪽 우선 (최후 수단)
암기법
We Love Oranges AS Oranges Mean Pure Refreshment — Weight / LOCAL_PREF / Originated / AS_PATH / Origin / MED / Peer(eBGP>iBGP) / Routing metric(IGP) ...5-2. BGP 정책 Route-Map 설정
이중 ISP 정책 — LOCAL_PREF + AS_PATH Prepend
! 인바운드: ISP A 우선 (LOCAL_PREF 높게) route-map ISP_A_IN permit 10 match ip address prefix-list ANY set local-preference 200 ! ISP A 선호 route-map ISP_B_IN permit 10 set local-preference 100 ! ISP B 백업 ! 아웃바운드: ISP B 방향으로 Prepend (인바운드 트래픽을 ISP A로 유도) route-map ISP_B_OUT permit 10 match ip address prefix-list OWN_PREFIX set as-path prepend 65001 65001 ! AS_PATH 2회 추가 → 덜 매력적으로 neighbor 203.0.113.1 route-map ISP_A_IN in neighbor 203.0.113.2 route-map ISP_B_IN in neighbor 203.0.113.2 route-map ISP_B_OUT out
5-3. Route Reflector (RR)
| 경로 수신 출처 | 광고 대상 |
|---|---|
| RR Client (iBGP) | 모든 iBGP 피어 (클라이언트 + 논클라이언트 + eBGP) |
| Non-Client (iBGP) | 클라이언트에게만 (Non-Client 간 풀메시 필요) |
| eBGP 피어 | 모든 iBGP 피어 |
Route Reflector 설정
router bgp 65001
bgp cluster-id 1.1.1.1
neighbor 10.255.0.2 remote-as 65001
neighbor 10.255.0.2 update-source Loopback0
neighbor 10.255.0.2 route-reflector-client ! 클라이언트 지정
neighbor 10.255.0.3 route-reflector-client Phase 6 — BGP 고급 / SP 설계 16H
6-1. 멀티홈 인터넷 연결 시나리오
| 타입 | 구성 | BGP 정책 | 권장 사항 |
|---|---|---|---|
| Single-Homed | 단일 ISP, 단일 링크 | BGP 불필요 | Static Default Route로 충분 |
| Dual-Homed | 단일 ISP, 이중 링크 | Load Sharing 또는 Active/Standby | MED로 진입점 제어 |
| Multi-Homed | 복수 ISP | LOCAL_PREF + AS_PATH Prepend | Full BGP 또는 Default+Partial |
6-2. RPKI — BGP 하이재킹 방어
| 기술 | 내용 |
|---|---|
| ROA (Route Origin Authorization) | 특정 AS가 특정 프리픽스를 광고할 권한을 암호학적으로 증명 |
| RPKI Validation | Valid / Invalid / NotFound 상태로 경로 검증 |
| Prefix Filtering | 아웃바운드에 명시적 prefix-list 적용 (최소 보안) |
| BGP Max-Prefix | 이웃으로부터 받을 최대 프리픽스 수 제한 |
6-3. 프리세일즈 실전 시나리오
Scenario 1 — 인터넷 이중화 제안
고객이 ISP A(주)/ISP B(백업) 이중화 요청. LOCAL_PREF로 아웃바운드를 ISP A 우선(LP=200), AS_PATH Prepend로 ISP B 방향 인바운드 억제. 장애 시 자동 전환 아키텍처 제안.Scenario 2 — MPLS VPN PE-CE 프로토콜 선정
소규모 지사: Static / 중규모 허브 사이트: eBGP 권장. BGP의 유연한 정책 및 확장성을 핵심 Benefit으로 제시. VRF + MP-BGP 구조 설명.Scenario 3 — SD-WAN Underlay 설계
DC에 SD-WAN 도입 시 Underlay는 eBGP로 ISP와 피어링. BGP 기반 Underlay 안정성이 SD-WAN 성능의 기반임을 강조. Overlay 정책은 SD-WAN Controller 위임. Phase 7 — 통합 실습 10H
실습 환경 추천
| 도구 | 특징 | 링크 |
|---|---|---|
| GNS3 | 무료, Cisco IOS 이미지 필요, 개인 학습 최적 | gns3.com |
| EVE-NG | 웹 기반 UI, 다양한 벤더, 협업 가능 | eve-ng.net |
| Cisco CML | 공식 에뮬레이터, DevNet 90일 무료 | Cisco DevNet |
| Cisco Packet Tracer | 입문용, 기능 제한 있음 | Netacad 무료 |
통합 실습 체크리스트 — OSPF
| # | 검증 항목 | 확인 명령어 |
|---|---|---|
| 1 | 모든 ABR 간 Full adjacency 확인 | show ip ospf neighbor |
| 2 | 각 Area LSA 타입 확인 | show ip ospf database |
| 3 | Stub Area에서 Type5 미존재, Default 존재 | show ip route ospf |
| 4 | 링크 다운 시 SPF 수렴 시간 측정 | debug ip ospf events |
| 5 | DR/BDR Priority 조작 후 재선출 | show ip ospf interface |
통합 실습 체크리스트 — BGP
| # | 검증 항목 | 확인 명령어 |
|---|---|---|
| 1 | eBGP/iBGP 세션 Established 확인 | show bgp summary |
| 2 | LOCAL_PREF 정책 적용 결과 | show bgp ipv4 unicast [prefix] |
| 3 | AS_PATH Prepend 결과 확인 | show bgp ipv4 unicast [prefix] |
| 4 | Route Reflector 구성 후 경로 전파 검증 | show bgp neighbors x advertised-routes |
| 5 | prefix-list 아웃바운드 필터 확인 | show bgp neighbors x received-routes |
자격증 연계 로드맵
| 자격증 | 준비 Phase | OSPF/BGP 출제 범위 | 예상 기간 |
|---|---|---|---|
| CCNA 200-301 | Phase 0~1 | OSPF Single-Area, BGP 개념 | 3~4개월 |
| CCNP ENCOR 350-401 | Phase 0~5 | OSPF Multi-Area, BGP 정책 전반 | 6~9개월 |
| CCNP ENARSI 300-410 | Phase 0~5 + 심화 | 고급 OSPF, BGP Route Policy | +3개월 |
| CCIE Enterprise Lab | Phase 0~7 완전 정복 | 설계+구현+트러블슈팅 8H 랩 | 1.5~2년+ |
트러블슈팅 Quick Reference
OSPF
| 증상 | 원인 | 해결 |
|---|---|---|
| 이웃 미형성 | Hello/Dead 타이머 불일치 | 타이머 통일 |
| 이웃 미형성 | Area ID 불일치 | show ip ospf interface |
| 이웃 미형성 | 인증 불일치 | Type/Key 확인 |
| ExStart 상태 지속 | MTU 불일치 | ip ospf mtu-ignore |
| 서브옵티멀 라우팅 | Reference Bandwidth 미통일 | auto-cost reference-bandwidth |
| SPF 폭풍 | LSA/SPF Throttle 미설정 | timers throttle 설정 |
BGP
| 증상 | 원인 | 해결 |
|---|---|---|
| Active 상태 지속 | TCP 연결 실패 (ACL/라우팅) | telnet [peer] 179 |
| Active 상태 지속 | update-source 미설정 | neighbor x update-source Loopback0 |
| 경로 미수신 | prefix-list/route-map 필터 | show bgp neighbor x received-routes |
| 경로 미광고 | network문 미설정 또는 Null0 없음 | show ip route [prefix] |
| iBGP 경로 미전파 | iBGP Split Horizon | Route Reflector 구성 |
| 예상과 다른 Best Path | Weight/LOCAL_PREF 미설정 | show bgp ipv4 unicast [prefix] |
OSPF & BGP Zero to Hero
Cisco Network Architecture Curriculum
CCNA
CCNP
CCIE
Cisco IOS
'CCIE EI > WAN' 카테고리의 다른 글
| MPLS/MPLS VPN zero to Hero (1) | 2026.03.20 |
|---|