서브넷 마스크, 서브네팅 | 🚀 정처기 실기 대비 문제 포함

정보처리기사네트워크서브넷마스크IPv4
읽는데 약 15분 정도 소요
처음 쓰여진 날: 2025-07-14
마지막으로 고쳐진 날: 2025-07-14
이 글을 보러온 횟수: 44

요약

IPv4 주소 체계에서 서브넷 마스크와 서브네팅의 원리를 설명합니다. 네트워크, 호스트, 브로드캐스트 주소를 계산하는 방법과 CIDR 표기법을 다루며, 정보처리기사 실기 대비를 위한 다양한 계산 문제를 제공합니다.

문제로 바로 이동하기

헷갈리기 쉬운 용어 요약

용어설명
서브넷 마스크네트워크 주소 구하는데 사용
서브네팅(FLSM)서브넷 구하는데 사용

헷갈리기 쉬운 주소 요약

구분설명
네트워크 주소네트워크를 대표하는 주소
호스트 주소호스트(장치 - PC, 스마트폰)에 할당하는 주소
브로드캐스트 주소모든 호스트(장치)에 데이터를 한 번에 전송할때 사용하는 주소

서브넷 마스크

서브넷 마스크 문제는 IPv4 주소 문제만 나옵니다.(IPv6일 경우 너무 길어짐)

IPv4 주소는 32비트로 구성되어 있습니다. 32비트를 8비트씩 4개로 나누게 됩니다. 이 비트(2진수)를 10진수로 바꾸면 우리가 많이 보는 IP주소 형태가 됩니다.

IPv4 주소
IPv4 주소

잠깐 8비트로 만들 수 있는 가장 큰 10진수를 구해봅시다.

11111111(2)=27+26+25+24+23+22+21+20=255(10)11111111_{(2)} = 2^7 + 2^6 + 2^5 + 2^4 + 2^3 + 2^2 + 2^1 + 2^0 = 255_{(10)}

11111111(2)11111111_{(2)} 는 11111111이 2진수임을 표시한 것입니다. 10진수는 255(10)255_{(10)} 이라고 표현할 수 있지만 보통 생략합니다.

이 때문에 IP주소는 0.0.0.0 ~ 255.255.255.255 까지 표현할 수 있습니다.

서브넷 마스크를 쓰는 이유

서브넷 마스크를 쓰면 IP주소 고갈을 해결할 수 있다고 오해할 수 있지만 사실이 아닙니다.

IPv4에 의한 IP 주소 총량은 정해져있습니다. (대략 43억개 정도입니다.) 2011년 이미 IPv4 주소는 모두 소진되었습니다.

현재 IP 주소 할당 방법

이로 인해 신규 서비스, 모바일의 경우 IPv6가 할당되거나 기존 할당한 IPv4 주소가 중고 거래되고 있습니다. 또한 NAT 기술이 적용되어 공유 아이피가 사설 IP 주소(192.168.x.x)를 사용할 수 있게 되어 IPv4 주소를 절약할 수 있게 되었습니다.

이렇게 빠르게 IPv4가 소진된 이유는 PC, 스마트폰 등 기기들의 급속한 증가 때문이기도 하지만 IPv4를 임대하는 기존 방식도 문제였습니다.

기존 방식인 클래스 할당 방식은 국가, 초대형 기업에 한 번에 많은 IP 주소(약 1650만개)를 임대하는 방식이었습니다.

서브넷 마스크는 IPv4 주소를 더 잘게 나누어서 임대할 수 있도록 해줍니다.

IP 주소를 임대해보자

제가 192.168.1.0 ~ 192.168.255.255 까지의 IP 주소를 갖고 있다고 가정해보겠습니다.

A기업에 256개의 IP 주소를 임대해주고 싶습니다. 192.168.1.0 ~ 192.168.1.255 까지의 IP 주소를 임대해주면 될겁니다.

이 때 이렇게 임대해주면 됩니다.

"A기업은 192.168.1.0 네트워크 주소를 사용하세요. 서브넷 마스크는 255.255.255.0 입니다."

위 문장에서 네트워크 주소는 뭘까요? IP주소와 같은 걸까요?

IP 주소, 네트워크 주소, 브로드캐스트 주소, 호스트 주소
IP 주소, 네트워크 주소, 브로드캐스트 주소, 호스트 주소

IP 주소는 네트워크 주소, 호스트 주소, 브로드캐스트 주소로 나눌 수 있습니다.

구분설명
네트워크 주소네트워크를 대표하는 주소
호스트 주소호스트(장치 - PC, 스마트폰)에 할당하는 주소
브로드캐스트 주소모든 호스트(장치)에 데이터를 한 번에 전송할때 사용하는 주소

"A기업은 192.168.1.0 네트워크 주소를 사용하세요."

이 문장을 통해 A기업은 192.168.1.0 이 내가 할당받은 네트워크의 대표 주소임을 알게 됩니다.

그렇다면 "서브넷 마스크는 255.255.255.0 입니다." 라는 문장은 무엇을 의미할까요?

서브넷 마스크는 임대받은 기업이 사용할 수 있는 주소의 범위를 결정한다

255.255.255.0 은 2진수로 11111111.11111111.11111111.00000000 이 됩니다.

뒤의 0의 갯수가 사용할 수 있는 주소의 범위를 결정합니다. 2진수로 00000000 에서 11111111 까지의 모든 조합을 IP주소로 사용할 수 있는 것이죠.

1개 비트당 2가지 경우의 수(0 아니면 1)가 있죠.

따라서 8개의 비트를 사용할 수 있으므로 2^8 = 256개의 IP 주소를 임대해줄 수 있습니다.

문제 1

그렇다면 만약 제가 A기업에게 이렇게 말했다고 합시다.

"A기업은 192.168.1.0 네트워크 주소를 사용하세요. 서브넷 마스크는 255.255.255.192 입니다."

이 때 저는 몇개의 IP 주소를 A기업에게 임대해준걸까요?

문제몇 개의 IP 주소를 A기업에게 임대해준걸까요?
답변
정답정답 보기
문제 풀이

255.255.255.192 은 2진수로 11111111.11111111.11111111.11000000 이 됩니다.

뒤의 0의 갯수는 6개 이므로 IP주소를 결정하는데 사용할 수 있는 비트는 6개 입니다.

1개 비트당 2가지 경우의 수(0 아니면 1)가 있죠.

따라서 6개의 비트를 사용할 수 있으므로 2^6 = 64개의 IP 주소를 임대해줄 수 있습니다.

B기업이 사용하는 네트워크 주소 구하기

이번에는 B기업에게 IP 주소를 임대해주면서 이렇게 이야기했다고 해봅시다.

"B기업은 192.168.1.123이 포함된 IP주소를 사용하세요. 서브넷 마스크는 255.255.255.192 입니다."

이 때 B기업이 사용하는 네트워크 주소는 뭘까요?

이제 네트워크 주소의 비밀을 알아야 합니다.

네트워크 주소는 서브넷 마스크에서 0의 갯수 만큼 2진수로 바꾼 할당 받은 IP주소의 뒷자리를 0으로 바꾸면 됩니다.

255.255.255.192 은 2진수로 11111111.11111111.11111111.11000000 이 됩니다.

192.168.1.123 은 2진수로 11000000.10101000.00000001.01111011 이 됩니다.

뒷자리 6개를 0으로 바꾸면 11000000.10101000.00000001.01000000 이 됩니다.

이를 10진수로 바꾸면 192.168.1.64 가 됩니다.

따라서 B기업이 사용하는 네트워크 주소는 192.168.1.64 입니다.

추가로 B기업이 임대받은 IP 주소의 갯수는 64개입니다. 문제 1과 서브넷 마스크가 동일하니, 임대받은 IP 주소의 갯수도 같겠죠. 192.168.1.64 ~ 192.168.1.127 까지의 IP 주소를 사용할 수 있습니다.

호스트 주소와 서브넷 마스크로 네트워크 주소 구하기

방금은 그냥 IP 주소로 192.168.1.123을 이야기했는데 이건 결국 호스트 주소입니다.(네트워크 주소, 브로드캐스트 주소가 아니라면 호스트 주소니까요.)

호스트 주소와 서브넷 마스크가 있다면 방금처럼 네트워크 주소를 유추해낼 수 있습니다.

문제 2

C기업이 어떤 네트워크 주소를 임대 받았습니다. 이 때 C기업이 사용하는 스마트폰의 호스트 주소가 223.13.234.132입니다. 서브넷 마스크는 255.255.255.192 일때 이 C기업의 네트워크 주소는 무엇일까요?

문제C기업의 네트워크 주소는?
답변
정답정답 보기
문제 풀이

255.255.255.192 은 2진수로 11111111.11111111.11111111.11000000 이 됩니다.

223.13.234.132 은 2진수로 11011111.00001101.11101010.10000100 이 됩니다.

뒷자리 6개를 0으로 바꾸면 11011111.00001101.11101010.10000000 이 됩니다.

이를 10진수로 바꾸면 223.13.234.128 가 됩니다.

따라서 C기업의 네트워크 주소는 223.13.234.128 입니다.

브로드캐스트 주소 구하기

브로드캐스트 주소는 서브넷 마스크에서 0의 갯수 만큼 2진수로 바꾼 할당 받은 IP주소의 뒷자리를 1로 바꾸면 됩니다.

문제 2의 상황을 가져와서 브로드캐스트 주소를 구해봅시다.

문제 3

C기업이 어떤 네트워크 주소를 임대 받았습니다. 이 때 C기업이 사용하는 스마트폰의 호스트 주소가 223.13.234.132입니다. 서브넷 마스크는 255.255.255.192 일때 이 C기업의 브로드캐스트 주소는 무엇일까요?

문제C기업의 브로드캐스트 주소는?
답변
정답정답 보기
문제 풀이

255.255.255.192 은 2진수로 11111111.11111111.11111111.11000000 이 됩니다.

223.13.234.132 은 2진수로 11011111.00001101.11101010.10000100 이 됩니다.

뒷자리 6개를 1로 바꾸면 11011111.00001101.11101010.10111111 이 됩니다.

이를 10진수로 바꾸면 223.13.234.191이 됩��다.

서브넷 마스크 표기법

"192.168.1.0 네트워크 주소를 사용하세요. 서브넷 마스크는 255.255.255.0 입니다." 를 간단하게 표기할 수 있습니다.

192.168.1.0/24

이렇게 표기하면 동일합니다. 이러한 방식을 CIDR 표기법이라고 합니다. 이 때 24는 서브넷 마스크에서 1의 갯수를 의미합니다.

IPv4는 총 32비트로 구성되어 있습니다. 그러므로 서브넷 마스크에서 0의 갯수는 32-24=8 이 됩니다.

"192.168.1.0 네트워크 주소를 사용하세요. 서브넷 마스크는 255.255.255.192 입니다." 를 CIDR 표기법으로 표기해보겠습니다.

255.255.255.192 은 2진수로 11111111.11111111.11111111.11000000 이 됩니다. 이 때 1의 갯수는 26개 입니다.

192.168.1.0/26

그러므로, 위와 같이 표기하면 동일합니다.

서브네팅(FLSM)

서브넷 마스크를 활용해서 우리는 A기업에게 특정 IP 주소 범위를 임대해줄 수 있었습니다. 그런데 그것보다 더 잘게 쪼개서 임대해주고 싶습니다.

"A기업은 192.168.1.0 네트워크 주소를 사용하세요. 서브넷 마스크는 255.255.255.0 입니다. 그런데 두번째 64개 IP주소만 사용하세요."

이럴 때 사용하는 것이 서브네팅(FLSM)입니다. 두번째 64개 IP 주소를 서브넷(서브 네트워크)이라고 합니다.

서브넷을 나눌 때에는 서브넷 마스크(2진수)의 뒤쪽 0이 되는 부분을 사용합니다.

A기업의 서브넷 마스크(2진수) = 11111111.11111111.11111111.00000000 이므로 뒤쪽 8자리 0을 사용합니다.

이 8개의 비트를 중 4개의 서브넷을 만들기 위해 앞쪽 n개의 비트를 사용합니다. 몇개의 비트를 사용할지는 몇개로 나누는가에 달려 있습니다.

i개로 나누는 경우 -> 2n>=i2^n >= i 를 만족하는 n개의 비트를 사용합니다.

2n>=42^n >= 4 를 만족하는 n은 2 이므로 서브넷을 나누기 위해 앞쪽 2개의 비트를 사용합니다.

00XXXXXX 01XXXXXX 10XXXXXX 11XXXXXX

이렇게 4개의 서브넷을 만들 수 있습니다.

서브넷의 네트워크 주소 구하기

A기업이 임대받은 두번째 64개 IP주소 중 첫번째 IP 주소는 01000000 이 됩니다. 이를 10진수로 바꾸면 64 가 됩니다.

따라서 두번째 서브넷의 네트워크 주소는 192.168.1.64 가 됩니다.

문제 4

A기업이 임대받은 IP주소 중 마지막 IP주소는 뭘까요?

문제A기업이 임대받은 IP주소 중 마지막 IP주소는 무엇일까요?
답변
정답정답 보기
문제 풀이

A기업이 임대받은 IP주소 중 마지막 IP주소는 01111111 이 됩니다. 이를 10진수로 바꾸면 127이 됩니다.

따라서 A기업이 임대받은 IP주소 중 마지막 IP주소는 192.168.1.127 가 됩니다.

이는 두번째 서브넷의 브로드캐스트 주소입니다.

최종적으로 A기업이 임대받은 IP주소 범위는 192.168.1.64 ~ 192.168.1.127 가 됩니다.

라우터 인터페이스 IP 주소 구하기

라우터 인터페이스 IP 주소는 해당 서브넷의 게이트웨이(Gateway) 역할을 하는 IP 주소입니다. 네트워크의 모든 장치(호스트)는 다른 네트워크와 통신하기 위해 이 라우터 인터페이스를 거쳐야 합니다.

일반적으로 라우터 인터페이스 IP 주소는 해당 서브넷에서 할당 가능한 호스트 주소 범위 중 첫 번째 주소 또는 마지막 주소를 사용하는 것이 관례입니다.

예를 들어, 문제 3에서 다룬 C기업의 네트워크를 다시 살펴보겠습니다.

  • 네트워크 주소: 223.13.234.128
  • 브로드캐스트 주소: 223.13.234.191

이 네트워크에서 호스트에 할당 가능한 IP 주소 범위는 223.13.234.129부터 223.13.234.190까지입니다.

따라서 C기업 네트워크의 라우터 인터페이스 IP 주소는 다음과 같이 설정될 수 있습니다.

  • 첫 번째 호스트 주소 사용: 223.13.234.129
  • 마지막 호스트 주소 사용: 223.13.234.190

C기업과 A기업을 연결하는 라우터의 인터페이스 IP 주소

만약 하나의 라우터가 C기업의 네트워크와 A기업의 네트워크를 모두 연결한다면 어떻게 될까요? 이 라우터는 각 네트워크와 연결되는 별도의 **인터페이스(포트)**를 가지게 되며, 각 인터페이스는 해당 네트워크에 속한 IP 주소를 가져야 합니다.

  • A기업 네트워크 정보
    • 네트워크 주소: 192.168.1.64/26
    • 할당 가능 호스트 범위: 192.168.1.65 ~ 192.168.1.126
  • C기업 네트워크 정보
    • 네트워크 주소: 223.13.234.128/26
    • 할당 가능 호스트 범위: 223.13.234.129 ~ 223.13.234.190

이 경우, 라우터는 다음과 같이 2개의 인터페이스 IP 주소를 갖게 됩니다.

  1. C기업 네트워크 방향 인터페이스: 223.13.234.129 (C기업 네트워크의 게이트웨이)
  2. A기업 네트워크 방향 인터페이스: 192.168.1.65 (A기업 네트워크의 게이트웨이)

이렇게 라우터는 자신이 연결된 모든 네트워크의 주소 정보를 가지고 있기 때문에, 서로 다른 네트워크 간의 데이터 전송(라우팅)을 중개할 수 있습니다.


정처기 실기 대비 문제

문제호스트 주소가 255.14.234.144이고, 서브넷 마스크는 255.255.255.224일 때, 이 호스트의 네트워크 주소를 구하시오.
답변
정답정답 보기
문제 풀이

서브넷 마스크 255.255.255.224 은 2진수로 11111111.11111111.11111111.11100000 이 됩니다. 이 때 0의 갯수는 5개 입니다.

호스트 주소 255.14.234.144 은 2진수로 11111111.00001110.11101010.10010000 이 됩니다.

뒷자리 5개를 0으로 바꾸면 11111111.00001110.11101010.10000000 이 됩니다.

이를 10진수로 바꾸면 255.14.234.128 이 ��니다.

문제234.122.1.0/24인 IP 주소를 FLSM 방식으로 3개의 서브넷으로 분할할 때 두번째 서브넷의 브로드캐스트 IP주소(10진수)를 쓰시오.
답변
정답정답 보기
문제 풀이

234.122.1.0 은 2진수로 11101010.01111010.00000001.00000000 이 됩니다.

CIDR표기법으로 '/24'의 서브넷 마스크는 255.255.255.0 이 됩니다.

이 때 서브넷 마스크에서 0의 갯수는 8개 입니다.

서브네팅을 위해 필요한 비트는 3개의 서브넷을 만들기 위해 2n>=32^n >= 3 를 만족하는 n개의 비트를 사용합니다.

2n>=32^n >= 3 를 만족하는 n은 2 이므로 서브넷을 나누기 위해 앞쪽 2개의 비트를 사용합니다.

00XXXXXX 01XXXXXX 10XXXXXX

두번째 서브넷의 브로드캐스트 주소는 01111111 이 됩니다.

이를 10진수로 바꾸면 234.122.1.127 이 됩니다.