공부하게 된 배경
정보처리기사를 공부하며 가장 어려웠던 부분인 서브넷에 대해서 정리해본다.
다루는 내용
- 서브넷
- 서브넷 마스크
- IP, 클래스
- 네트워크 주소, 브로드캐스트 주소
서브넷이란?
네트워크가 작은 조각으로 쪼개져 있는 경우, 이러한 조각을 서브넷이라고 한다.
즉, 작은 네트워크라고 할 수 있다.
전 세계에는 수백만 개의 네트워크가 존재하며, 그 규모도 각기 다르다.
보통 네트워크의 규모가 더 클수록 네트워크를 관리하고 유지하기는 더 어려워진다.
이 때, 네트워크 성능 개선을 위해 네트워크 관리자가 효율적으로 자원을 분배하는 것이 바로 서브네팅이고, 여기서 쪼개진 작은 네트워크 조각을 서브넷이라고 한다.
자원을 효율적으로 분배한다는 것은 네트워크 영역과 호스트 영역을 분할하는 것이라고 생각하면 된다.
서브넷 마스크는 제한적인 네트워크 자원을 낭비없이 아껴쓰기 위해서 등장한 것으로, 필요한 네트워크 주소만 호스트 IP로 할당할 수 있게 만들어 네트워크 낭비를 방지한다.
여기서 잠깐 IP의 특징을 살펴보자면 (자세한 부분은 하단 IP란? 참조)
- IP는 네트워크 + 호스트 부분으로 구성되어 있다.
- 하나의 네트워크, 즉 하나의 브로드캐스트 도메인에 있는 IP끼리 통신하기 위해선 네트워크 영역이 같아야하며, 호스트 IP는 달라야한다.
그렇다면 네트워크 영역이 다르면 통신할 수 없을까? 당연히 아니다. 라우터나 게이트웨이와 같은 통신장비를 이용해서 통신이 가능하다.
다만, 라우터와 네트워크 장비 없이 통신할 수 있는 영역을 우리는 브로드캐스트 도메인이라고 하고, 하나의 네트워크 영역에서는 동일한 네트워크 IP와 중복되지 않는 호스트 IP를 가져야한다.
예를 들어, 192.168.0.3
과 192.168.0.4
가 있을 때, 192.168.0
은 네트워크 IP , 3
과 4
는 호스트 IP이다.
따라서, 이 둘은 192.168.0라는 네트워크 영역에서 서로 통신할 수 있다.
서브넷 마스크란?
IP 주소를 나눈 작은 네트워크 조각.
32비트의 숫자를 이용하여 IP 주소를 마스킹하기 때문에 ‘마스크’라는 단어가 이용된다.
32비트(8X4)의 숫자로 표현하며, 0의 비트는 호스트 부분을 나타내고, 1의 비트는 네트워크 부분을 나타낸다.
이러한 방식으로 서브넷 마스크는 IP 주소를 네트워크 및 호스트 주소와 분리한다.
서브넷 마스크는 다음과 같이 나타낼 수 있다.
255.255.255.0 = 11111111.11111111.11111111.00000000
하나의 주소에 이 서브넷 마스크를 씌워서 자신에게 맞는 네트워크를 만드는 것을 서브네팅이라고 한다.
이 서브네팅을 통해서 네트워크 영역을 늘리고 호스트 영역을 줄여서 네트워크 자원을 효율적으로 관리할 수 있다.
추가 설명
서브넷 마스크로 나뉘어진 서브넷 네트워크간 통신은 라우터를 통해서 통신되어야 한다.
즉, 서브넷 네트워크는 하나의 독립적인 네트워크다.
IP 란?
모든 집 주소가 도로명 주소와 번지수로 정해지듯이, IP 주소는 네트워크 구성요소와 호스트 구성요소로 구성된다.
예를 들어, 192.168.123.132
라는 IP 주소가 있다고 하자.
여기서 132를 제외한 앞의 9자리(10진수 기준)는 네트워크를 나타내는 네트워크 ID, 그리고 뒤 3자리는 네트워크에 연결된 기기를 나타내는 호스트 ID라고 한다.
원래 IP 주소는 사실 32자리 2진수로 구성이 되지만, 보기 편하게 10진법으로 바꿔서 0~255의 수로 표현되기도 한다.
192.168.123.132 = 11000000.10101000.01111011.10000100
하나의 네트워크안에 있는 IP들은 네트워크 영역이 같아야하고, 호스트 IP는 서로 달라야 통신이 가능하다.
8자리의 2진수를 하나의 옥텟으로 보고, 총 4개의 옥텟으로 구성되며, 각각의 옥텟은 ‘.
’ 으로 구분한다.
IP 주소의 클래스
IP를 보고 어떻게 네트워크 주소와 호스트 주소를 구분할 수 있을까?
바로 클래스를 통해서 알 수 있다.
예를 들어 203.240.100.1
이라는 IP는 C클래스이기 때문에 203.240.100
이 네트워크 주소이고, 호스트 주소는 1이라는 사실을 알아낼 수 있다.
즉, 클래스는 하나의 IP 주소에서 네트워크 영역과 호스트 영역을 나누는 방법이자, 약속이다.
IP주소의 클래스는 하나의 네트워크에서 몇개의 호스트 IP까지 가질 수 있는가, 즉 네트워크의 크기에 따라 구분짓는다.
D,E 클래스는 멀티캐스트용, 연구용으로 사용되기 때문에, 사실상 A,B,C클래스만 알고 있으면 된다.
네트워크 주소
하나의 네트워크를 통칭하기 위해 사용하는 주소 (대표 주소)
전체 네트워크에서 작은 네트워크를 식별하는데 사용됨.
예를 들어 C클래스로 특정 네트워크를 구성하려 할 경우, 네트워크 주소가 192.168.1.0
이라고 한다면, 이 네트워크에 속하는 주소들은 192.168.1.0
~ 192.168.1.255
까지가 이에 속하게 된다.
일반적으로 네트워크 주소의 표현은 해당 네트워크의 맨 첫번째 IP 주소를 이용해 표시한다.
브로드 캐스트 주소
특정 네트워크에 속하는 모든 호스트들이 듣게되는 주소를 의미한다.
네트워크에 있는 컴퓨터나 장비 모두에게 한 번에 데이터를 전송하는데 사용된다.
네트워크 주소와는 반대로 특정 네트워크의 맨 마지막 주소를 브로드캐스트 주소로 사용한다.
예를 들어 C클래스 하나로 특정 네트워크를 구성하고, 네트워크 주소가 192.168.2.0
이라고 한다면, 브로드캐스트 주소는 192.168.2.255
가 된다.
전체 네트워크에 데이터를 전송하려면 이 브로드캐스트 주소로 전송하면 된다. (호스트 아이디에 255를 설정해서 전송하면 된다.)
네트워크 / 브로드 캐스트 주소 정리
즉, 일반적으로 네트워크 IP 주소는 그 네트워크에 속하는 모든 IP 주소 가운데 맨 첫번째 IP주소를 사용하고, 브로드캐스트 IP주소는 그 네트워크에 속하는 모든 IP 주소 가운데 맨 마지막 IP 주소를 사용한다.
: Reference
https://limkydev.tistory.com/166
https://limkydev.tistory.com/168
https://m.blog.naver.com/hans00427/223057212374
https://nordvpn.com/ko/blog/what-is-subnet-mask/
https://zitto15.tistory.com/21