- 0
- 214 words
트렁크 포트의 개념과 VLAN 연결 방식을 알아보고 액세스 포트와의 차이, VLAN 태그가 필요한 이유까지 쉽게 정리합니다.
네트워크에서 VLAN을 공부하다 보면 어느 순간 트렁크 포트(Trunk Port)라는 용어가 등장합니다.
처음 보면 이름만으로는 무슨 역할을 하는지 감이 잘 오지 않습니다.
그런데 VLAN을 여러 개 사용하는 환경을 생각해 보면 트렁크 포트가 왜 필요한지 쉽게 이해할 수 있습니다.
예를 들어 하나의 스위치에서 부서별로 네트워크를 나누었다고 해보겠습니다.
VLAN 10 → 인사팀
VLAN 20 → 개발팀
VLAN 30 → 영업팀
여기까지는 어렵지 않습니다.
그런데 스위치가 한 대가 아니라 여러 대라면 이야기가 달라집니다.
VLAN을 여러 스위치에서 사용한다면?
스위치가 한 대라면 각각의 포트를 VLAN에 배정하면 됩니다.
하지만 스위치가 두 대 이상이라면 같은 VLAN을 다른 스위치에서도 사용해야 할 수 있습니다.
예를 들어:
스위치 A 스위치 B
VLAN 10 VLAN 10
PC ───┐ ┌─── PC
│ │
└────── ??? ───────┘
여기서 문제가 생깁니다.
스위치 A의 VLAN 10 트래픽을 스위치 B의 VLAN 10까지 전달해야 합니다.
그런데 VLAN이 여러 개라면:
VLAN 10
VLAN 20
VLAN 30
VLAN 40
각 VLAN마다 별도의 케이블을 연결하는 것은 상당히 비효율적입니다.
이때 사용하는 것이 트렁크 포트입니다.
트렁크 포트란?
트렁크 포트는 하나의 물리적인 네트워크 연결을 통해 여러 VLAN의 트래픽을 전달하는 포트입니다.
예를 들어:
스위치 A
│
│ Trunk
│
스위치 B
하나의 연결을 이용해서:
VLAN 10 ─┐
VLAN 20 ─┤
VLAN 30 ─┼── Trunk ──→ 스위치 B
VLAN 40 ─┘
여러 VLAN의 트래픽을 함께 전달할 수 있습니다.
이것이 트렁크 포트의 핵심입니다.
왜 VLAN을 구분해야 할까?
여기서 중요한 문제가 하나 있습니다.
하나의 케이블로 여러 VLAN의 데이터가 지나간다면 스위치는 어떤 데이터가 VLAN 10이고 어떤 데이터가 VLAN 20인지 어떻게 구분할까요?
이를 구분하기 위해 프레임에 VLAN 정보를 표시하는 방식을 사용합니다.
대표적으로 많이 사용되는 것이 IEEE 802.1Q VLAN 태깅입니다.
쉽게 생각하면 프레임에:
VLAN 10
또는:
VLAN 20
같은 식으로 VLAN 정보를 붙여서 전달하는 것입니다.
정확히는 Ethernet 프레임에 VLAN ID가 포함된 태그를 추가하는 방식입니다.
VLAN 태그는 왜 필요한가?
트렁크 링크를 통해 여러 VLAN이 동시에 지나간다고 생각해 보겠습니다.
VLAN 10
↓
스위치 A ───────── 스위치 B
↑
VLAN 20
스위치 B 입장에서는 들어오는 프레임이 어느 VLAN에 속하는지 알아야 합니다.
그래서 VLAN 태그를 이용합니다.
프레임
+ VLAN ID
+ 데이터
스위치 B는 VLAN ID를 확인하고 해당 VLAN에 맞게 프레임을 처리합니다.
트렁크 포트와 액세스 포트의 차이
트렁크 포트를 이해하려면 액세스 포트(Access Port)와 비교해 보는 것이 가장 쉽습니다.
액세스 포트는 일반적으로 하나의 VLAN에 연결된 장치를 위한 포트입니다.
예를 들어:
PC
↓
액세스 포트
↓
VLAN 10
반면 트렁크 포트는 여러 VLAN의 트래픽을 전달합니다.
VLAN 10 ─┐
VLAN 20 ─┤
VLAN 30 ─┼→ 트렁크 포트
VLAN 40 ─┘
간단하게 정리하면:
| 구분 | 액세스 포트 | 트렁크 포트 |
|---|---|---|
| 주요 용도 | 단말 장치 연결 | 스위치·네트워크 장비 연결 |
| VLAN | 일반적으로 하나 | 여러 VLAN |
| VLAN 태그 | 일반적으로 단말에는 전달하지 않음 | VLAN 구분을 위해 사용 |
| 대표 연결 | PC, 프린터 등 | 스위치 ↔ 스위치 |
스위치와 스위치를 연결할 때 사용한다
트렁크 포트는 스위치끼리 연결할 때 많이 사용합니다.
예를 들어:
Trunk
스위치 A ═════════════ 스위치 B
스위치 A에서 발생한 여러 VLAN의 트래픽을 스위치 B로 전달할 수 있습니다.
예를 들어:
스위치 A
VLAN 10 → PC
VLAN 20 → PC
VLAN 30 → PC
│
│
Trunk
│
↓
스위치 B
VLAN 10 → PC
VLAN 20 → PC
VLAN 30 → PC
이런 구조가 가능해집니다.
VLAN을 여러 개 사용하는 회사에서 유용하다
회사 네트워크를 생각하면 트렁크 포트가 왜 필요한지 더 쉽게 이해할 수 있습니다.
예를 들어:
VLAN 10 → 인사팀
VLAN 20 → 개발팀
VLAN 30 → 구매팀
각 부서를 VLAN으로 분리했다고 해보겠습니다.
스위치가 한 대라면 간단하지만 사무실이 넓어져 스위치를 여러 대 설치해야 할 수도 있습니다.
이때 스위치 사이를 트렁크로 연결하면 각각의 VLAN을 하나의 링크로 전달할 수 있습니다.
[스위치 A]
║
║ Trunk
║
[스위치 B]
║
║
[스위치 C]
이런 구조를 만들 수 있기 때문에 대규모 네트워크에서 상당히 편리합니다.
모든 VLAN을 무조건 전달하는 것은 아니다
트렁크 포트라고 해서 스위치에 존재하는 모든 VLAN을 무조건 전달하는 것은 아닙니다.
실제 장비에서는 어떤 VLAN을 트렁크 링크를 통해 전달할 것인지 설정할 수 있습니다.
예를 들어:
허용 VLAN
10
20
30
으로 설정했다면 해당 트렁크 링크에서는 지정된 VLAN의 트래픽만 전달하도록 구성할 수 있습니다.
이런 설정은 불필요한 트래픽을 줄이고 네트워크 구성을 관리하는 데 도움이 됩니다.
Native VLAN이라는 개념도 있다
802.1Q 트렁크를 이해하다 보면 Native VLAN이라는 용어도 만나게 됩니다.
Native VLAN은 트렁크 링크에서 VLAN 태그 없이 전달되는 프레임과 관련된 VLAN입니다.
예를 들어:
Trunk Link
Tagged Frame
→ VLAN 정보 포함
Untagged Frame
→ Native VLAN으로 처리
장비 설정에 따라 동작이 달라질 수 있기 때문에 실제 네트워크에서는 양쪽 장비의 Native VLAN 설정을 일치시키는 것이 중요합니다.
트렁크 포트라고 해서 속도가 더 빠른 것은 아니다
여기서 이름 때문에 생길 수 있는 오해가 있습니다.
“트렁크”라고 해서 일반 포트보다 더 빠른 특별한 포트라는 의미는 아닙니다.
트렁크 포트의 핵심은 여러 VLAN을 하나의 링크에서 전달할 수 있다는 것입니다.
예를 들어 1Gbps 링크가 트렁크로 설정되어 있다면:
1Gbps Trunk
VLAN 10
VLAN 20
VLAN 30
이 여러 VLAN의 트래픽이 해당 링크의 대역폭을 함께 사용합니다.
따라서 VLAN이 여러 개라고 해서 각각 1Gbps의 별도 대역폭을 확보하는 것은 아닙니다.
트렁크 링크가 혼잡해질 수도 있다
여러 VLAN의 데이터가 하나의 링크를 함께 사용하기 때문에 트래픽이 많으면 트렁크 링크가 병목이 될 수 있습니다.
예를 들어:
VLAN 10 ─┐
VLAN 20 ─┤
VLAN 30 ─┼→ 1Gbps Trunk
VLAN 40 ─┤
VLAN 50 ─┘
모든 VLAN의 트래픽이 하나의 1Gbps 링크를 공유합니다.
따라서 네트워크 규모가 커지면 트렁크 링크의 속도나 구성도 함께 고려해야 합니다.
트렁크 포트는 보통 어디에 사용할까?
일반적인 환경에서는 다음과 같은 곳에서 많이 사용됩니다.
스위치 ↔ 스위치
스위치 ↔ 라우터
스위치 ↔ 방화벽
스위치 ↔ 가상화 서버
다만 장비의 구성 방식에 따라 실제 설정은 달라질 수 있습니다.
특히 가상화 환경에서는 하나의 물리 서버에서 여러 VLAN을 사용하기 위해 트렁크 연결을 구성하는 경우도 있습니다.
실제 네트워크 구조를 예로 들어보자
조금 더 현실적인 구조를 생각해 보겠습니다.
라우터
│
Trunk
│
스위치 A
╱ ╲
PC 스위치 B
VLAN 10 ║
║ Trunk
║
┌───┴───┐
VLAN 20 VLAN 30
PC PC
스위치 A와 스위치 B 사이의 링크가 트렁크로 구성되어 있다면 VLAN 20과 VLAN 30의 트래픽을 하나의 링크로 전달할 수 있습니다.
이렇게 VLAN을 여러 스위치에 걸쳐 확장할 수 있다는 것이 트렁크 포트의 중요한 역할입니다.
트렁크 포트는 VLAN을 합치는 기능이 아니다
이 부분도 헷갈리기 쉽습니다.
트렁크 포트를 사용한다고 해서 VLAN 10, VLAN 20, VLAN 30이 하나의 네트워크로 합쳐지는 것은 아닙니다.
오히려 각 VLAN의 구분을 유지한 상태로 하나의 물리 링크를 통해 전달하는 것입니다.
VLAN 10 ─────┐
│
VLAN 20 ─────┼── 하나의 링크
│
VLAN 30 ─────┘
각 VLAN의 논리적 구분은 유지
이 차이를 알고 있어야 트렁크 포트를 제대로 이해할 수 있습니다.
트렁크 포트를 쉽게 기억하는 방법
처음에는 액세스 포트와 트렁크 포트의 차이를 외우려고 하면 조금 헷갈릴 수 있습니다.
그럴 때는 연결 대상을 기준으로 생각하면 편합니다.
PC
↓
Access Port
↓
하나의 VLAN
반면:
스위치
║
║ Trunk
║
스위치
여기에서는 여러 VLAN의 트래픽이 하나의 링크를 지나갈 수 있습니다.
즉:
Access = 단말을 특정 VLAN에 연결
Trunk = 여러 VLAN을 다른 네트워크 장비로 전달
이라고 기억하면 됩니다.
정리
트렁크 포트는 여러 VLAN의 트래픽을 하나의 물리적인 네트워크 링크를 통해 전달하는 방식입니다.
특히 여러 대의 스위치를 사용하는 환경에서 같은 VLAN을 여러 스위치에 걸쳐 사용해야 할 때 유용합니다.
전체적인 흐름을 정리하면:
VLAN 10 ─┐
VLAN 20 ─┤
VLAN 30 ─┼── Trunk Link ──→ 다른 스위치
VLAN 40 ─┘
이때 VLAN 정보는 일반적으로 802.1Q 태그를 통해 구분됩니다.
반면 액세스 포트는 일반적으로 하나의 VLAN에 속한 단말을 연결하는 데 사용합니다.
PC
↓
Access Port
↓
VLAN 10
따라서 가장 간단하게 정리하면:
액세스 포트는 하나의 VLAN에 단말을 연결하고, 트렁크 포트는 여러 VLAN을 하나의 링크로 전달한다.
VLAN을 여러 스위치에 걸쳐 구성하려면 트렁크 포트의 개념을 이해하는 것이 상당히 중요합니다.
특히 앞으로 VLAN 간 통신이나 라우터, L3 스위치 등을 공부할 때도 계속 등장하기 때문에 “여러 VLAN을 하나의 링크로 전달하는 연결”이라는 핵심만 먼저 확실하게 잡아두면 좋습니다.