본문 바로가기
카테고리 없음

[네트워크 기초] IP/서브넷의 본질, 스위치 5대 기능과 STP(Spanning Tree Protocol) 완벽 분석

by Lsung 2026. 8. 18.

1. 네트워크 주소와 게이트웨이의 본질

우리가 흔히 쓰는 IP 주소(예: 192.168.10.x)를 아주 직관적인 1.1.1.x 대역으로 축약하여 네트워크의 본질을 이해해 봅시다.

  • 서브넷 마스크의 유일한 목적: IP 주소 32비트 중 **"어디까지가 네트워크 주소(동네 지번)인가?"**를 식별하기 위해 존재합니다.
  • 통신의 한계: 내 컴퓨터의 IP가 1.1.1.3/24라면, 나는 오직 네트워크 주소가 같은 1.1.1.0 ~ 1.1.1.255 대역 안의 컴퓨터들과만 직접 통신할 수 있습니다.
  • 게이트웨이(Gateway)의 역할: 내가 가진 IP 대역을 벗어나 외부(다른 네트워크 주소)와 통신하고 싶을 때 거쳐 가야 하는 **'우리 동네 탈출 관문'**입니다. (이를 물리적으로 수행하는 장비가 바로 '라우터'입니다.)
Code
[ 우리 동네: 1.1.1.0/24 ] [ 외부 동네: 2.1.1.0/24 ]
- PC A: 1.1.1.3
- PC B: 1.1.1.4
[ 게이트웨이 (1.1.1.1) ] ─── (라우터) ─── [ 게이트웨이 (2.1.1.1) ]
- PC C: 2.1.1.3
 

 


2. 스위치(Switch)의 기본 기능 5가지

스위치는 2계층(Data Link Layer) 장비로, IP 주소가 아닌 **MAC 주소(물리 주소)**를 기반으로 작동하는 '멀티 포트 브릿지'입니다. 스위치는 내부에 MAC 주소 테이블을 가지고 있으며, 아래의 5가지 동작을 반복합니다.

  1. 러닝 (Learning): 수신된 프레임의 출발지 MAC 주소를 보고, 해당 주소가 어느 포트에 연결되어 있는지 테이블에 기록합니다.
  2. 플러딩 (Flooding): 목적지 MAC 주소가 테이블에 없거나 브로드캐스트 주소일 경우, 들어온 포트를 제외한 모든 포트로 신호를 뿌립니다.
  3. 포워딩 (Forwarding): 목적지 MAC 주소가 테이블에 있고 경로가 명확할 때, 해당 포트로만 프레임을 다이렉트로 전송합니다.
  4. 필터링 (Filtering): 목적지가 출발지와 같은 포트 방향에 있다면, 다른 포트로 신호가 넘어가지 않도록 차단하여 대역폭을 보호합니다.
  5. 에이징 (Aging): 일정 시간(기본 300초) 동안 해당 포트에서 프레임이 들어오지 않으면, 테이블의 노후화된 MAC 주소를 자동으로 삭제하여 메모리를 관리합니다.

💡 스위치가 콜리전(충돌)을 막는 방법

스위치는 내부에 큐(Queue) 메모리 영역이 존재하여, 여러 기기가 동시에 데이터를 보내더라도 프레임 단위로 순차 처리합니다. 또한 송신선(TX)과 수신선(RX)이 분리된 풀 듀플렉스(Full Duplex) 방식을 사용하여 충돌(Collision)이 원천적으로 발생하지 않습니다.

 


3. STP (Spanning Tree Protocol)의 루핑 제어 원리

이더넷 환경에서 장비 간의 이중화(백업 라인)를 위해 스위치들을 고리(Ring) 형태로 둥글게 연결하면, 브로드캐스트 패킷이 네트워크 내부를 영원히 뱅글뱅글 도는 루핑(Looping) 현상이 발생하여 네트워크가 다운됩니다.

이를 막기 위해 스위치가 스스로 특정 포트를 논리적으로 차단(Block)하여 외길(Tree 구조)로 만드는 프로토콜이 바로 STP입니다.

Code
[ SW 1 ] (Root Bridge)
/ \
DP DP
/ \
RP RP
[ SW 2 ] ── [ SW 3 ]
DP *NDP (Block!)
 

🛠️ STP 작동 4단계 프로세스

Step 1. 루트 브릿지(Root Bridge) 선정

  • 매 2초마다 교환하는 BPDU(Bridge Protocol Data Unit) 패킷을 통해 전체 네트워크에서 BID(Bridge ID)가 가장 낮은 스위치를 대장(Root)으로 선정합니다.
  • BID 구조: 우선순위(Priority, 기본값 32768) + MAC 주소
  • 우선순위가 같다면, 전 세계에서 유일한 값인 MAC 주소가 가장 낮은 장비가 루트 브릿지가 됩니다.

Step 2. 루트 포트(Root Port / RP) 결정

  • 루트 브릿지가 아닌 나머지 스위치(Non-Root Bridge)에서 루트 브릿지까지 가는 경로 비용(Path Cost)이 가장 적게 드는 포트를 루트 포트로 지정합니다.
  • 대역폭별 Cost (IEEE 802.1D 기준): 10Mbps = 100, 100Mbps(Fast Ethernet) = 19, 1Gbps(Giga) = 4

Step 3. 지정 포트(Designated Port / DP) 결정

  • 하나의 링크(세그먼트)당 반드시 하나씩 존재해야 하는 포트입니다. 루트 브릿지까지 가는 Cost가 더 저렴한 쪽의 포트가 DP가 됩니다.
  • 경로 비용이 같을 때 우선순위 판별법 (매우 중요!):
    1. 연결된 상대방 스위치의 BID가 낮은 쪽이 DP가 됩니다.
    2. 상대방의 Port ID가 낮은 쪽이 우위를 가집니다.

Step 4. 비지정 포트(Non-Designated Port / NDP) 차단

  • RP도 아니고 DP도 아닌 나머지 포트는 Block(차단) 상태로 만들어 패킷이 지나가지 못하게 막아 루핑을 차단합니다.

 


4. 실전 패킷 트레이서 실습: 4대 스위치 연동 및 STP 분석

스위치 4대(SW1 ~ SW4)를 사각형 모양으로 연결하고 초기 설정을 진행합니다.

💻 스위치 4대 공통 초기 설정 스크립트 (예시: SW3)

Code
enable
configure terminal
hostname SW3
no ip domain-lookup ! 오타 입력 시 DNS 대기 현상 방지
end
copy running-config startup-config ! 설정 영구 저장

🔍 루트 브릿지 확인 방법

스위치 CLI에서 show spanning-tree 명령어를 입력하면 현재 장비의 STP 상태를 볼 수 있습니다.

Code
SW2# show spanning-tree
...
Root ID Priority 32769
Address 000A.41EA.8589
This bridge is the root <--- 이 문구가 있으면 이 장비가 대장(Root)입니다!
  • 각 스위치의 MAC 주소를 비교해 보면, 가장 낮은 16진수 값인 000A.41EA.8589를 가진 SW2가 자동으로 루트 브릿지로 선정된 것을 확인할 수 있습니다.

 


5. [고급 설정] 특정 스위치를 강제로 대장(Root)으로 만들기

실무에서는 가장 성능이 좋고 중심에 위치한 백본 스위치를 강제로 루트 브릿지로 지정해야 합니다. 우선순위(Priority) 값을 낮춰서 대장 자리를 빼앗아 오겠습니다.

방법 ①: 우선순위 값을 직접 낮추기 (4096의 배수만 가능)

Code
SW3(config)# spanning-tree vlan 1 priority 4096

방법 ②: 시스코 매크로 명령어 사용하기 (권장)

Code
SW3(config)# spanning-tree vlan 1 root primary
  • 이 명령어를 입력하면 라우터가 주변 스위치들의 BID를 계산하여, 자동으로 그보다 낮은 우선순위 값으로 자신을 세팅해 대장(Root) 자리를 차지합니다.
  • 설정 후 show spanning-tree를 입력하면 차단(Block)되어 주황색 불이 켜져 있던 포트들이 새로운 경로에 맞춰 초록색 불로 재조정되는 것을 볼 수 있습니다.

 


6. 가상으로 망 쪼개기: VLAN(Virtual LAN)의 개념

VLAN은 물리적으로는 하나의 스위치에 연결되어 있지만, 논리적으로 네트워크를 완전히 쪼개어 서로 다른 허브를 쓰는 것처럼 분리하는 기술입니다.

Code
[ 하나의 스위치 ]
├─ 포트 1~12 : VLAN 10 (인사과 대역 / 1.1.1.0/25)
└─ 포트 13~24: VLAN 20 (개발과 대역 / 1.1.1.128/25)
  • VLAN의 핵심 특징: VLAN 10과 VLAN 20은 같은 스위치에 꽂혀 있어도 서로 통신할 수 없습니다. 두 부서가 통신하려면 반드시 라우터(또는 3계층 스위치)를 거쳐야 합니다.
  • 포트 절약 (Trunk 포트): VLAN을 여러 개 나누면 라우터와 연결할 때 선이 여러 가닥 필요하지만, 하나의 포트에 여러 VLAN 패킷을 모아서 보내는 트렁크(Trunk) 터널 포트를 구성하면 선 한 가닥으로 모든 VLAN 통신을 해결할 수 있습니다.

 


✍️ 오늘 공부 요약 한 장 정리

  1. 서브넷 마스크는 IP 주소의 네트워크 ID 영역을 마킹하여 통신 가능한 우리 동네 범위를 지정한다.
  2. 스위치는 MAC 주소 테이블을 기반으로 러닝, 플러딩, 포워딩, 필터링, 에이징을 수행한다.
  3. STP는 루핑을 막기 위해 BID가 가장 낮은 루트 브릿지를 선정한 후, 비용이 비싼 경로의 포트를 차단(Block)한다.
  4. 실무에서는 spanning-tree vlan 1 root primary 명령어를 통해 원하는 핵심 스위치를 대장으로 지정하여 트래픽 경로를 최적화한다.