진짜 개발자
본문 바로가기

CS(Computer Science)/Network

Network - Network 계층) SubNet (ClassLess)

728x90

이전 포스팅에서 다룬 ClassFul 방식은 브로드캐스트 도메인 영역이 아주 큰 단점이 있다

브로드캐스트 영역이 클 수록 내가 보낸 정보가 많은 사람에게 전달되고 그에 따라 네트워크 회선에 많은 트래픽이 발생할 것이고

또 보안에 취약하다

예를 들어 A 클래스의 경우 한 네트워크 당 대략 16,000,000 개의 호스트를 가진다

이러한 A클래스의 경우 한네트워크 대역에 너무 많은 호스트ID가 존재하고 또 보통의 경우에는 이 모든 호스트ID들을 사용하기 어렵다

따라서 이를 또 논리적으로 네트워크를 분할하는데 이를 서브넷팅이라고 한다.


1. 서브넷 마스크 : 운영체제의 입장에서는 18.253.111.12 라는 IP가 들어온다면 

Classful 에 의거하여 A클래스 라고 판단하고 18 까지만 IP주소가 같다면 같은 네트워크 대역이라 판단할 것이다.

하지만 위에서 말했듯 이렇게 큰 네트워크 대역을 그대로 사용하는 것은 리스크가 있다 때문에 

논리적으로 네트워크 대역을 구분할 방법이 필요한데 이때 사용하는 것이 서브넷 마스크이다


ex)

예를들어 10.0.0.1 이란 IP가 있을때 Subnet 마스크를 255.255.255.0 을 주게 된다면

운영체제는 이 두 주소를  AND 연산한 결과를 네트워크 대역이라고 생각한다 

따라서 10.0.0.1를 255.255.255.0으로 서브넷팅한 네트워크ID 는 10.0.0.0 이다


2. VLSM : 하지만 서브넷 마스크에도 결함이 있다 바로 낭비되는 Host IP 가 있다는 것이다

  이는 서브넷팅을 하나의 Subnet 마스크로 했기 때문에 발생하는 현상이다  

 예를들어 10.0.0.1 , 255.255.255.0이란 대역을 할당 받았고 

  이를  A , B 두개의 네트워크 대역으로 나누어야 한다고 생각을 해보자 

 이때 A에는 120대의 HOST가 필요하지만 B에는 10대만 필요하다고 하자

 A에는 120대의 Host가 필요하므로 128(원래는 126 : 맨앞의 networkID 제외 , 맨뒤의 BroadCast IP 제외)대를 할당할 수 있는

 255.255.255.128의 Subnet을 할당한다 그렇다면 A는 10.0.0.0 ~ 10.0.0.127 까지 128개의 IP를 사용가능하고

 자연스레 B는 10.0.0.128 ~ 10.0.0.255 까지의 IP 가 사용가능하다 하지만 B는 10대의 Host IP만이 필요하므로 

 나머지 118개의 IP는 사용되지 않는다 

 이때, 낭비되는 IP를 최소화 하기 위해 다시한번 B에게 10개의 PC를 수용할 수 있는 크기의 네트워크 대역을 주기위해 

 다시 Subnet 마스크의 길이를 255.255.255.240으로 변경하여 할당 할 수있다.

 이것이 바로 VLSM이다.