나의 공부기록

6. 슈퍼넷팅(Supernetting) & 스위치 - VLAN 본문

CS/네트워크

6. 슈퍼넷팅(Supernetting) & 스위치 - VLAN

나의 개발자 2025. 1. 5. 21:01

 

슈퍼넷팅(Supernetting) ( ↔️ 서브넷팅 )

  • 대상 서브넷들을 포함하는 가장 작은 네트워크를 구하는 것
    ➡️ 192.168.0.0/24 & 192.168.2.0/24 = 192.168.0.0/22

 

슈퍼넷팅 방법

  • 서브넷을 나열한 후, 고정되는 최대 비트를 구하면 됨
    • 자유로운 비트'0'으로 채우면 대표주소를 얻을 수 있음
    • 무조건 작은 IP의 대표 주소가 슈퍼넷팅한 서브넷의 대표 주소❌
192.168.0.0/24 ➡️ 3번째 옥텟 : 00000000
192.168.2.0/24 ➡️ 3번째 옥텟 : 00000010
👉 3번째 옥텟을 고려(2비트 고정)
 답) 192.168.0.0/22

 

✅ 슈퍼넷팅 예외 상황

조건
- 192.168.0.0/25, 192.168.0.128/26, 192.168.0.192/27, 192.168.0.228/30을 슈퍼넷팅하는데, 192.168.0.224/30 서브넷은 포함되지 않도록 슈퍼넷팅하시오.

192.168.0.0/25      ➡️ 00000000
192.168.0.128/26  ➡️ 10000000
192.168.0.192/27  ➡️ 11000000
192.168.0.228/30 ➡️ 11100100

192.168.0.224/30 ➡️ 11100000

해설) 4개의 서브넷을 슈퍼넷팅하려면 192.168.0.0/24 이어야 하지만, 192.168.0.224/30 서브넷이 192.168.0.0/24 대역에 포함되므로 192.168.0.224/30을 제외하고는 슈퍼넷팅이 불가능

 


 

스위치(Switch - 2 계층 장비)

  • Mac 주소를 기반으로 통신하며, 스스로 특정 포트에 연결된 장비의 Mac 주소를 학습

 

'Ping'을 쳤을 때, 스위치의 동작 원리

ping을 쳤을 때, 스위치 동작 원리

 

  1. PC A ➡️ PC B로 Ping을 침
  2. f0/8을 통해 Mac 주소가 AAAA가 있다는 사실 학습(스위치 관점)
    ➡️ 스위치는 2계층 장비로, IP 정보를 알 수 없음
    ➡️ 라우팅은 라우팅 정보를 입력해야 하지만, 스위치는 자체적으로 학습
    ➡️ 라우팅 테이블과 같은 Mac 테이블이 존재
  3. 목적지의 Mac 주소를 모르기 때문에, flooding(수신 포트를 제외한 모든 포트에 전달)을 함
    ➡️ flooding = 브로드캐스팅
  4. 당사자 응답 ➡️ 스위치는 '당사자 Mac 주소' 학습
    ➡️ 스위치는 f0/14를 통해 Mac 주소가 BBBB가 있다는 사실을 학습

 

👉 스위치에서 여러 개의 네트워크를 구성하고자 할 때는 어떻게 해야 할까?

클라우드를 예를 들어 설명하면, 클라우드는 가상 서버 등 자원을 제공한다. 가상 서버는 물리적인 자원을 분할해서 사용하기 위해 사용되고, 가상화물리적인 자원을 분할한다. 이때, 스위치를 여러 개의 네트워크로 나누기 위해서는 가상화(VLAN)를 해야 한다. 스위치 가상화를 위해서는 LAN이라는 개념을 알아야 한다.

 

LAN(Local Area Network)

  • 스위치의 포트에 특별한 Tag(VLAN ID)를 추가하여 프레임 식별이 가능하다면, 네트워크를 나눈 것과 동일한 효과 발생
    = 한 개의 물리 스위치여러 개의 서브넷 구성가능 
    • 원래는 하나의 물리적인 스위치는 일반적으로 하나의 네트워크를 가질 수밖에 없음

 

VLAN(Virtual LAN)

VLAN 2개의 네트워크 구성

  • 기본 VLAN = 물리적인 스위치
    • VLAN 1 = 물리적 네트워크 = 일반적인 프레임(frame)
  • VLAN을 두 개의 네트워크로 나눴을 때, 라우터에서 연결되는 포트는 한 개
    ➡️ 이러한 문제를 해결하기 위해서 라우터의 인터페이스를 나눔
    👉 f0/1 ➡️ f0/1 (메인 인터페이스) / f0/1.10 & f0/1.20 (보조 인터페이스 - 가상)

 

VLAN 설정 방법

1. VLAN 목록 확인 - 스위치

vlan 목록 확인

Switch(config)# do sh vlan
   ➡️ vlan 1 = 물리적 스위치

 

2. VLAN 생성 - 스위치

vlan 생성 목록 확인

Switch(config)# vlan <vlan 번호>

Switch(config)# vlan 10
Switch(config-vlan)# exit
Switch(config)# vlan 20

 

3. VLAN 설정 - 스위치

1) 하향 인터페이스 설정 (vlan - PC)
Switch(config)#int <인터페이스 포트>
Switch(config-if)#switchport mode access = swi m a
   ➡️ access = 1:1 단일 vlan 존재하는 경우 사용
Switch(config-if)#switchport access vlan <vlan 번호> = swi a vlan <vlan 번호>
   ➡️ 포트마다 vlan 설정

Switch(config)#int f0/1
Switch(config-if)#switchport mode access
Switch(config-if)#switchport access vlan 10

---------------------------------------------------------------------------------------------------------------

2) 상향 인터페이스 설정 (라우터 - vlan)
Switch(config)# int <인터페이스 포트>
Swtich(config-if)#switchport mode trunk = swi m t
   ➡️ trunk = 다수의 vlan이 존재하는 경우 사용

Swtich(config)# int f0/3
Switch(config-if)#switchport mode trunk

 

4. IP 설정 - 라우터

frame 헤더에 TAG하고 암호화하는 과정

Router(config)#int <인터페이스 포트>
Router(config-if)#no sh
   ➡️ 항상 주 인터페이스가 동작(no sh)하고 있어야 보조 인터페이스가 동작
Router(config-if)#int <보조 인터페이스 포트>
Router(config-subif)#encapsulation dot1Q <vlan 번호> = en dot <vlan 번호>
   ➡️ vlan에 tag를 심어주기로 했는데, 이때 정보를 암호화해서 보내줘야 함
   ➡️ 라우터 🔜 스위치로 데이터를 전달할 때, 어떤 VLAN으로 가는지 식별하기 위해서 라우터의 인터페이스(f0/0)에서
        TAG(태깅)을 프레임 헤더에 넣어 암호화한 후, 스위치로 전달(3 계층➡️ 2 계층 : 암호화 필수!)
Router(config-subif)#ip add <ip주소> <서브넷마스크>
Router(config-subif)#no sh

Router(config)# int f0/0
Router(config-if)# no sh
Router(config-if)#int f0/0.10
Router(config-subif)#encapsulation dot1Q 10
Router(config-subif)#ip add 10.10.10.250 255.255.255.0
Router(config-subif)#no sh

 

❗️인터페이스에서 IP 설정 시, 주의사항

vlan 명시하지 않고 IP할당 시, 오류 발생

➡️ vlan을 명시한 후에 IP할당해야 하는데, vlan을 명시하지 않아서 발생하는 오류

➡️ vlan을 사용할 때, 규정한 법칙