🌐 네트워킹 — Cisco IOS & 라우팅/스위칭

Notes / 네트워킹 / Cisco 실습 완료

🌐 개요

학습 목표: Cisco IOS CLI 모드 계층을 이해하고, 스위치·라우터 기본 설정, VLAN, 동적 라우팅 프로토콜을 구성할 수 있다.
  • L2 스위치: MAC 주소 기반으로 프레임을 포워딩 (충돌 도메인 분리)
  • L3 라우터: IP 주소 기반으로 패킷을 포워딩 (브로드캐스트 도메인 분리)
  • Cisco IOS: Cisco 장비의 네트워크 운영체제, 계층적 CLI 제공

⚙️ Cisco IOS CLI 모드 계층

IOS는 권한과 목적에 따라 4단계 모드로 나뉜다. 프롬프트 기호로 현재 모드를 구분한다.

stateDiagram-v2 [*] --> User: 접속 직후 User: User EXEC
Router> Priv: Privileged EXEC
Router# Global: Global Config
Router(config)# IF: Interface Config
Router(config-if)# Line: Line Config
Router(config-line)# Router: Router Config
Router(config-router)# User --> Priv: enable Priv --> User: disable Priv --> Global: configure terminal Global --> Priv: exit / end Global --> IF: interface Gi0/0 Global --> Line: line vty 0 4 Global --> Router: router ospf 1 IF --> Global: exit Line --> Global: exit Router --> Global: exit
모드프롬프트진입 명령탈출주요 용도
UserRouter>콘솔 접속 시 기본exit / logout조회·ping
PrivRouter#enabledisable관리·저장·debug
GlobalRouter(config)#configure terminalend / Ctrl+Z장비 전역 설정
IfaceRouter(config-if)#interface fa0/1exit인터페이스별 설정

🛠️ 기본 설정 8가지 실습

새로 받은 Cisco 장비에 적용하는 표준 초기 설정 시퀀스다.

① 호스트명 변경

Router> enable
Router# configure terminal
Router(config)# hostname R1
R1(config)#

② 특권 모드 암호 (enable secret)

R1(config)# enable secret cisco123
# enable password는 평문 저장 → enable secret(MD5) 권장

③ 콘솔 접속 암호

R1(config)# line console 0
R1(config-line)# password cisco
R1(config-line)# login
R1(config-line)# exit

④ 접속 배너 (Message of the Day)

R1(config)# banner motd #
Authorized Access Only!
#

⑤ 인터페이스 IP 할당 & 활성화

R1(config)# interface fastEthernet 0/0
R1(config-if)# ip address 192.168.1.1 255.255.255.0
R1(config-if)# no shutdown
R1(config-if)# exit

⑥ 상태 확인 (show 명령)

R1# show running-config           # 현재 설정 (휘발성)
R1# show startup-config           # NVRAM에 저장된 설정
R1# show ip interface brief       # 인터페이스 요약 상태
R1# show version                  # IOS 버전/모델/업타임
R1# show mac address-table        # (스위치) MAC 학습 테이블

⑦ 설정 저장

R1# copy running-config startup-config
# 또는 축약: R1# write memory

⑧ 초기화 & 재부팅

R1# erase startup-config
R1# reload
# 저장 없이 실습 초기화할 때 사용

🔀 스위칭 동작

스위치는 MAC 주소 테이블을 학습해 프레임을 해당 포트로만 포워딩한다.

장비충돌 도메인브로드캐스트 도메인비고
허브 (L1)전체 1개전체 1개반이중·CSMA/CD 필요
스위치 (L2)포트마다 분리VLAN마다 1개전이중 가능
라우터 (L3)포트마다 분리인터페이스마다 분리브로드캐스트 차단
스위치 학습 3단계:Learning — 들어온 프레임의 출발지 MAC을 포트와 매핑해 테이블에 저장 · ② Forwarding — 목적지 MAC이 테이블에 있으면 해당 포트로만 전송 · ③ Flooding — 목적지가 없으면(unknown unicast) 들어온 포트를 제외한 모든 포트로 전송

Transparent Bridging 4 기능

Cisco 스위치의 표준 L2 동작은 IEEE 802.1D Transparent Bridging을 따른다.

기능설명
LearningSource MAC ↔ 입력 포트를 CAM 테이블에 기록 (에이징 기본 300초)
ForwardingDestination MAC이 테이블에 있고 입력 포트와 다르면 해당 포트로 전달
FilteringDestination MAC이 입력 포트와 동일하면 드롭 (같은 세그먼트로 되돌리지 않음)
Loop PreventionSTP로 물리 루프 발생 시 일부 포트를 Blocking 상태로 차단

🌲 Spanning Tree Protocol (STP)

스위치 이중화 구성은 물리 루프를 만들어 브로드캐스트 스톰·MAC 테이블 플랩·프레임 중복 3대 문제를 일으킨다. STP(IEEE 802.1D)가 논리적 트리를 만들어 여분 경로를 차단해 해결한다.

STP 동작 순서

  1. Root Bridge 선출 — Bridge ID(Priority 32768 기본 + MAC)가 가장 낮은 스위치가 Root
  2. Root Port 선택 — 각 비-Root 스위치에서 Root까지 Cost가 가장 낮은 포트
  3. Designated Port 선택 — 각 세그먼트에서 Root 쪽으로 가장 가까운 1개 포트
  4. Blocking — 나머지 포트는 차단 상태로 대기

포트 상태 5단계 (802.1D)

상태BPDU 수신MAC 학습포워딩전이 시간
Blocking
Listening15초
Learning15초
Forwarding
Disabled관리자 shut
RSTP(802.1w) · PVST+ · Rapid-PVST+: 기본 802.1D의 30~50초 수렴을 수 초로 단축. Cisco는 VLAN별 별도 인스턴스를 돌리는 Rapid-PVST+를 기본 활성화.
PortFast: 엣지 포트(PC 접속)에 한해 Listening/Learning을 건너뛰고 즉시 Forwarding.

🏷️ VLAN (Virtual LAN)

물리 스위치를 논리적으로 나눠 브로드캐스트 도메인을 분리한다.

포트 유형태그용도명령어
Access❌ 태그 없음단말(PC) 연결 — 하나의 VLAN만switchport mode access
switchport access vlan 10
Trunk✅ 802.1Q 태그스위치↔스위치 — 여러 VLAN 전달switchport mode trunk
switchport trunk allowed vlan 10,20

VLAN 생성 & 할당 예시

SW1(config)# vlan 10
SW1(config-vlan)# name SALES
SW1(config-vlan)# exit
SW1(config)# vlan 20
SW1(config-vlan)# name DEV
SW1(config-vlan)# exit

SW1(config)# interface fa0/1
SW1(config-if)# switchport mode access
SW1(config-if)# switchport access vlan 10

SW1(config)# interface fa0/24
SW1(config-if)# switchport mode trunk
SW1(config-if)# switchport trunk allowed vlan 10,20
802.1Q: 이더넷 프레임에 4바이트 VLAN 태그(VID 12bit)를 삽입하는 표준. PVST (Per-VLAN Spanning Tree): VLAN별로 별도 STP 인스턴스를 돌려 루프 방지 + 부하 분산.

🧭 라우팅 프로토콜

라우터는 라우팅 테이블을 기반으로 최적 경로를 선택한다. 테이블을 채우는 방식에 따라 정적·동적으로 나뉜다.

분류프로토콜알고리즘범위특징
거리 벡터 RIP (v1/v2) Bellman-Ford IGP (소규모) 홉 수만 고려, 최대 15홉, 30초 주기 브로드캐스트
링크 상태 OSPF Dijkstra (SPF) IGP (중~대) 비용(대역폭) 기반, 변화 시에만 LSA 전송, Area 분할
하이브리드 EIGRP DUAL IGP (Cisco) Bandwidth + Delay 복합 메트릭, 빠른 수렴
경로 벡터 BGP Path-Vector EGP (AS 간) 인터넷 백본, AS_PATH 기반 정책 라우팅

정적 라우팅 예시

R1(config)# ip route 192.168.2.0 255.255.255.0 10.0.0.2
# 목적지 네트워크 / 서브넷 마스크 / 다음 홉 IP

RIPv2 설정

R1(config)# router rip
R1(config-router)# version 2
R1(config-router)# no auto-summary
R1(config-router)# network 192.168.1.0
R1(config-router)# network 10.0.0.0

OSPF 설정 (단일 영역)

R1(config)# router ospf 1
R1(config-router)# router-id 1.1.1.1
R1(config-router)# network 192.168.1.0 0.0.0.255 area 0
R1(config-router)# network 10.0.0.0 0.0.0.3 area 0
# ⚠ OSPF는 와일드카드 마스크 사용 (서브넷 마스크의 비트 반전)

Administrative Distance (AD) — 신뢰도 순위

한 목적지에 대해 여러 프로토콜이 경로를 제시하면 AD가 낮은 쪽이 라우팅 테이블에 등록된다.

출처AD
Connected0
Static1
EIGRP (internal)90
OSPF110
RIP120
EIGRP (external)170
iBGP / eBGP200 / 20

🔁 RIP 루프 방지 기법

거리 벡터 프로토콜은 네트워크 변화가 느리게 전파되기 때문에 Count to Infinity 문제가 발생한다. RIP은 4가지 방어 장치를 동시에 사용한다.

기법동작
Maximum Hop 홉 카운트 15까지만 유효, 16이면 unreachable로 간주 — 무한 증가 차단
Split Horizon 어떤 인터페이스로 배운 경로는 그 인터페이스로 다시 광고하지 않는다
Route Poisoning 링크 다운 시 해당 경로를 홉 16으로 즉시 광고해 "사용 불가" 확정
Hold-Down Timer 나쁜 정보 수신 직후 일정 시간(기본 180초) 더 나은 광고도 무시, 전파 안정화
Triggered Update: 변화를 30초 주기 기다리지 않고 즉시 업데이트 전송 → Poisoning과 결합해 수렴 속도 개선.

🗺️ OSPF — Area & Cost

Area 구조 (2-Layer 계층)

OSPF는 네트워크를 Area로 나눠 LSA 홍수 범위를 제한한다. 모든 비-백본 Area는 Area 0(백본)과 반드시 연결되어야 한다.

  • Area 0 (Backbone) — 모든 Inter-Area 트래픽이 경유
  • ABR (Area Border Router) — 2개 이상 Area에 속하는 라우터, Area간 요약
  • ASBR (Autonomous System Boundary Router) — OSPF↔다른 AS(RIP/BGP) 경로 교환
  • Stub / Totally Stubby / NSSA — 외부 LSA를 차단해 라우팅 테이블 축소

Cost 계산식

# Cost = Reference Bandwidth (10^8) / Interface Bandwidth (bps)
# FastEthernet 100Mbps → 100,000,000 / 100,000,000 = 1
# Serial 1.544Mbps      → 100,000,000 / 1,544,000   ≈ 64

R1(config-router)# auto-cost reference-bandwidth 10000
# 10Gbps 이상 링크가 있으면 기준 대역폭을 올려 구분력 확보

LSA 주요 타입

Type이름생성 주체범위
1Router LSA모든 라우터Area 내부
2Network LSADRMulti-Access 세그먼트
3Summary LSAABR다른 Area로 전파
5External LSAASBROSPF 도메인 전체
DR/BDR 선출: Broadcast/NBMA 네트워크에서 인접성 폭증 방지. Priority가 가장 높고 동률이면 Router-ID가 가장 높은 라우터가 DR. (Priority 0은 선출 대상 제외)

🛰️ BGP — 경로 벡터 & AS_PATH

BGP는 인터넷 전체(수만 AS) 단위 라우팅 프로토콜이다. 최적 경로가 아닌 정책 기반 경로를 고른다.

BGP 세션 2종

유형상대ADAS_PATH 변화
eBGP다른 AS20자기 AS를 prepend
iBGP같은 AS 내부200변경 없음 (Full-Mesh 필요)

Path Attributes 결정 우선순위(요약)

  1. Weight (Cisco 전용, 높을수록 선호, 라우터 로컬)
  2. Local Preference (AS 내부 공통, 높을수록 선호)
  3. Locally Originated (network 명령으로 광고한 경로)
  4. AS_PATH (짧을수록 선호 — 기본 루프 방지 수단)
  5. Origin (IGP < EGP < Incomplete)
  6. MED (외부 이웃에게 진입 경로 힌트, 낮을수록 선호)
  7. eBGP over iBGP → IGP Metric → Router-ID 낮은 쪽
AS_PATH 루프 방지: 자기 AS 번호가 이미 포함된 경로를 수신하면 즉시 폐기. 거리벡터의 "count to infinity"를 AS 레벨에서 원천 차단.

🔀 Redistribution — 프로토콜 간 경로 교환

서로 다른 라우팅 프로토콜(예 OSPF ↔ RIP, EIGRP ↔ OSPF)은 메트릭 체계가 달라 직접 통합되지 않는다. Redistribution은 ASBR에서 경로를 꺼내 반대편 프로토콜의 메트릭으로 번역해 광고한다.

기본 Seed Metric

유입 → 유출기본 메트릭필요 작업
→ RIP무한대default-metric 5 필수 지정
→ OSPF20 (BGP는 1)redistribute rip subnets
→ EIGRP무한대Bandwidth/Delay/Load/Reliability/MTU 5요소 지정
→ BGPIGP 메트릭 상속redistribute ospf 1

OSPF ↔ RIP 상호 재분배 예

R1(config)# router ospf 1
R1(config-router)# redistribute rip subnets metric 100 metric-type 2
# subnets: Classful 요약 방지 / metric-type 2: E2(외부 메트릭만 반영, 기본)

R1(config)# router rip
R1(config-router)# redistribute ospf 1 metric 5
# RIP 쪽은 홉 단위로 표현 가능한 값(1~15) 필수
주의 — 2-way Redistribution 루프: 두 지점에서 양방향 재분배하면 경로가 다시 돌아와 최적 경로 판단이 꼬인다. route-map + tag로 되돌아오는 경로를 차단하는 것이 표준 해법.

🔢 Classful vs Classless

구분ClassfulClassless (CIDR)
마스크고정 (/8, /16, /24)가변 — /8 ~ /30 임의
프로토콜RIPv1, IGRPRIPv2, OSPF, EIGRP, BGP
VLSM❌ 불가✅ 가능 (네트워크별 다른 마스크)
서브넷 요약자동 (auto-summary)수동 (summary-address)
주소 효율낭비 심함고효율

VLSM 예시 — 200명/100명/50명 세 서브넷

# 시작 네트워크: 192.168.10.0/24 (256개)
# 필요: 200호스트, 100호스트, 50호스트

# 200호스트 → /24 (254개, 단독 사용)   192.168.10.0/24
# 100호스트 → /25 (126개)               192.168.11.0/25
# 50호스트  → /26 (62개)                192.168.11.128/26

# ⚠ 크기 큰 서브넷부터 할당해야 낭비가 없다.

🧪 Packet Tracer vs GNS3

항목Packet TracerGNS3
제작Cisco Networking Academy오픈소스
엔진시뮬레이션(가상 IOS 흉내)에뮬레이션(실제 IOS 이미지 구동)
성능가볍고 빠름CPU/RAM 많이 씀
지원 장비Cisco 일부 모델Cisco, Juniper, VMware VM 혼합
용도CCNA 학습·실습실전 구축·고급 연습
IOS 이미지불필요별도 확보 필요 (라이선스 주의)
학습 전략: 기초 개념 + CCNA 시나리오는 Packet Tracer로 빠르게 반복 → 실무에 가까운 Multi-Vendor 환경·VM 연동은 GNS3 / EVE-NG 로 확장.

🕹️ 실습 터미널

브라우저에서 돌아가는 시뮬레이터는 별도의 실습 페이지로 분리했습니다. Docker · Linux · Cisco IOS · Kubernetes 를 탭으로 전환하며 연습하세요.

→ Cisco IOS 실습 열기