A. VLAN이란?
1. 왜 VLAN을 사용하는가?
스위치가 ARP 프로토콜을 통한 브로드캐스트 트래픽을 사용하는 경우에는 서로 다른 서브넷 상에 L3의 차단 정책이 있다 하여도 쉽게 우회할 수 있다. 불필요한 트래픽이 발생할 수 있으며 이는 보안상 좋지 않다. 이 문제를 VLAN을 이용해 브로드캐스트 도메인을 나눠 해결할 수 있다.
2. 개요
VLAN은 LAN을 2 계층의 개별 브로드캐스트 도메인으로 분할하는 것이다. IP서브넷과 VLAN은 1:1 매칭관계가 성립한다. 기본적으로 모든 스위치는 VLAN1에 속해있다.
3. VLAN 액세스 포트
종단 호스트에 연결된 스위치 인터페이스에 액세스 포인트를 구성한다. 또한 액세스 포트는 하나의 특정 VLAN으로 구성된다. 다시 말해, 개별의 스위치 포트에 하나의 VLAN을 할당해 해당 VLAN끼리만 트래픽이 흐르게 한다. 또한, 종단 호스트들은 VLAN에 대한 정보를 알필요가 없기에 VLAN을 인식하지 못한다. 따라서, 구성은 전부 스위치에서만 진행된다.
4. 구성 및 확인 명령어
VLAN 생성
vlan "최대 4096개까지 되지만 실질적으론 4094"
(0과 4096를 빼야 함)
name "원하는 vlan 도메인 이름"
하나의 인터페이스 할당 시
int "인터페이스 이름"
switchport mode access
switchport access "할당할 vlan 숫자"
범위의 인터페이스 할당 시
int range "인터페이스 이름" - "?/? 숫자만"
(ex. int range int fa0/0 - 0/7)
switchport mode access
switchport access "할당할 vlan 숫자"
확인 시
sh vlan brief
sh int "인터페이스 이름" switchport
5. Trunk 포트
같은 스위치에 host들이 물려 있다면 단순하게 VLAN을 나누면 되지만 만약, 각기 다른 스위치에 호스트들이 널리 퍼져서 물려있다면 어떻게 통신을 할 수 있을까?
이때 스위치들끼리의 링크를 하나의 VLAN만 통신이 가능한 Access가 아닌 모든 VLAN 통신이 가능한 트렁크 포트로 구성하면 된다. 트렁크 포트는 Dot1Q란 표준 프로토콜을 사용한다.
여담으로 이건 시험내용과 관련 없는 내용인데 가상머신, IP전화 같은 호스트들은 Access 포트가 아닌 Trunk 포트로 구성해야 한다.
6. Trunk 포트 구성법 3가지
일반적인 Trunk 포트 구성법
int "인터페이스 이름"
description "원하는 설명, 이 명령어는 옵션"
switchport trunk encapsulation dot1 q
(위의 명령어는 구형스위치 때문에 사용한다.)
switchport mode trunk
연결된 반대쪽 스위치에도 설정해야 한다.
Voice 구성시
int "인터페이스 이름"
description "원하는 설명, 이 명령어는 옵션"
switchport mode access
switchport access "할당할 vlan 숫자"
switchport voice "할당할 vlan 숫자"
특수한 케이스) 내용물은 트렁크지만 명령어는 Access를 사용함.
The Native VLAN
vlan "생성할 숫자"
name "도메인 이름"
int "인터페이스 이름"
description "원하는 설명"
switchport trunk encapsulation dot1q
switchport mode trunk
switchport trunk native vlan "생성한 숫자"
7. Limitting allow VLAN
보안상의 이유로 하지만 필요 없는 트래픽의 흐름을 막아 성능향상에도 도움이 된다.
위의 슬라이드를 예시로 상단 스위치에는 세일즈 호스트가 없다. 즉, 세일즈 호스트의 트래픽이 굳이 상단 스위치에 갈 필요가 없단 말이다.
이때 하단의 스위치에서 상단 스위치와 연결된 트렁크포트
interface "인터페이스 이름"
switchport trunk allowed vlan "허용할 vlan 번호들"
예를 들면 switchport trunk allowed vlan 10,30
명령어 입력 시 세일즈 트래픽이 상단으로 흐르지 않게 된다.
C. DTP Dynamic Trunk Protocol
1. 개요
Cisco 전용 프로토콜로 스위치 간에 트렁크 연결을 자동으로 조율할 수 있다. 다만 권장되지는 않는다.
2. DTP 구성
switch mode dynamic auto
요즘 스위치는 해당 모드가 기본 상태이며 이웃 스위치가 Trunk, desirable로 구성되었을 때 동작한다.
switch mode dynamic desirable
Trunk, desirable, Auto 일 때 동작하며 구형 스위치는 해당모드가 기본이다.
switch nonegotiate
DTP를 끈다.
D. VTP VLAN Trunking Protocol
1. 개요
이 프로토콜은 VTP 서버로 구성된 스위치에서 VLAN을 추가, 수정, 삭제를 할 수 있게 해 주고, VTP 클라이언트로 구성된 다른 스위치들은 VLAN 데이터베이스를 서버와 동기화한다.
(포트단계의 VLAN 구성은 여전히 수동으로 진행해야 한다. 어느 포트부터 어디까지 액세스에 할당할지 같은 것들.)
VTP를 사용할 땐 굉장히 굉장히 굉장히 굉장히 굉장히 주의를 해야 한다.
2. VTP 모드의 종류
VTP Server
VLAN을 추가, 수정, 삭제가 가능하며 VLAN 데이터베이스를 더 높은 개정번호(revision number)를 가진 서버와 동기화한다.
마스터가 하나일 필요는 없으나 실제로는 그중 개정번호가 가장 높은 하나의 스위치가 마스터서버 역할을 한다.
VTP 클라이언트
VLAN 데이터 베이스를 받기만 하는데 개정번호가 제일 높은 스위치의 데이터베이스와 동기화한다.
VTP 트랜스패런트
이 모드로 구성된 스위치는 VTP 도메인에 참여하지는 않지만 트래픽을 흘려보내주기는 한다. 로컬 VLAN 데이터베이스에 있는 VLAN만 추가, 편집, 삭제할 수 있다.
3. 구성법
VTP domain "이름"
VTP mode server or client or transparent
서버일 경우 VLAN 추가를 해주는 등 구성을 한다.
검증은 sh vtp status로 가능하다.
E. VLAN Routing
1. 개별 인터페이스를 가진 라우터
특징
모든 VLAN에 개별의 인터페이스가 필요하여 VLAN 수가 제한된다. 또한, 트래픽이 케이블을 타고 남 <->북의 모양새를 그리고 있어 자체적으로 통신하는 L3 SW 방식보다 느리다.
2. Router on a stick
동일한 물리적 인터페이스를 가상으로 나눠서 쓰는 개념으로 아래의 슬라이드를 참고하자.
명령어
라우터에서
int "inteface 이름"
no ip addr
no shut down
int fa 0/1."숫자"
encapsulate dot1q "기본 GW로 소속될 VLAN 번호
ex.) 10, 20 vlan 10이 아니다."
ip addr xxxx xxxx
스위치에서
int "라우터와 연결된 포트"
switchport mode trunk
특징으로는 A번보다는 인터페이스면에서는 효율적이나 케이블을 하나로 나눠 써야 하기에 대역폭 경쟁이 더 심하다. 그리고 여전히 트래픽이 남, 북의 형태를 띠고 있다.
해당 내용이 3가지 방법 중 CCNA 시험에 나올 확률이 높다.
3. Layer 3 Switch
서로 다른 VLAN 통신을 위해 SVI란 스위치 자체의 가상 인터페이스를 이용한다. 가의 인터페이스가 종단 호스트의 기본 게이트웨이 역할을 한다. 외부와의 통신에는 여전히 라우터를 이용한다.
명령어
L3 스위치에서
ip routing <--- 시작 시에 한번
int vlan "소속시킬 vlan 숫자"
ip addr "기본 게이트웨이로 쓸 아이피, 서브넷 마스크"
int vlan "소속시킬 vlan 숫자"
ip addr "기본 게이트웨이로 쓸 아이피, 서브넷 마스크"
int vlan "소속시킬 vlan 숫자"
ip addr "기본 게이트웨이로 쓸 아이피, 서브넷 마스크"
외부 라우터와 연결된 스위치 인터페이스에서
int "이름"
no switchport
ip addr "아이피주소 서브넷 마스크"
ip route 0.0.0.0 0.0.0.0 "넥스트홉 주소"
[SQLD] 4-2. SQL 활용 - 집합연산자(SET OPERATION) 개요, 종류, 사용법
[용어/개념] Network - OSI 7 Layer 기본
[용어/개념] XSS (Cross-Site Scripting) - 악성 스크립트을 이용한 공격 기법
[FCA] FortiGate 7.4 Operator Lesson 10: Creating IPsec Virtual Private Networks - IPsec VPN