-
IP주소와 서브넷 마스크 + 예제 문제Computer Science/Network 2025. 10. 16. 12:59
1. 개요
IP주소는 네트워크 상에서 각 장치를 식별하기 위한 고유 주소이며
데이터가 목적지까지 도달하기 위해 반드시 필요IP는 계층적으로 구성되어 있고 네트워크 주소 + 호스트 주소로 나뉨
또한 네트워크를 효율적으로 분할하기 위해 서브넷 마스크(Subnet Mask) 가 함께 사용됨
2. IP주소의 구조
구분 내용 IP 버전 IPv4 (32비트, 4옥텟), IPv6 (128비트, 8그룹 16진수) 표기 방식 IPv4: 192.168.0.1 / IPv6: 2001:0db8::1 구성 요소 네트워크 ID + 호스트 ID 역할 네트워크 ID는 네트워크 구분, 호스트 ID는 해당 네트워크 내 장치 식별 단위 1옥텟 = 8비트 → IPv4 전체 32비트 (예: 192.168.10.25 → 11000000.10101000.00001010.00011001)
3. IP주소 클래스(Class)
클래스 범위 기본 서브넷 마스크 특징 A 클래스 0.0.0.0 ~ 127.255.255.255 255.0.0.0 (/8) 대규모 네트워크용 (정부, 대기업 등) B 클래스 128.0.0.0 ~ 191.255.255.255 255.255.0.0 (/16) 중형 네트워크용 C 클래스 192.0.0.0 ~ 223.255.255.255 255.255.255.0 (/24) 소규모 네트워크용 (가정, 일반 기업) D 클래스 224.0.0.0 ~ 239.255.255.255 - 멀티캐스트용 E 클래스 240.0.0.0 ~ 255.255.255.255 - 연구·실험용 참고: 실제 인터넷에서 사용 가능한 주소는 A~C 클래스이며, D와 E는 특수 목적
4. 서브넷 마스크 (Subnet Mask)
서브넷 마스크는 IP주소 중 네트워크 부분과 호스트 부분을 구분하기 위한 값
1은 네트워크 비트를, 0은 호스트 비트를 의미예시:
IP 주소: 192.168.10.25 서브넷 마스크: 255.255.255.0→ 255 부분은 네트워크 영역(1), 0은 호스트 영역(0)
→ 이 경우 앞의 24비트(192.168.10)가 네트워크, 마지막 8비트가 호스트
5. CIDR 표기법
CIDR(Classless Inter-Domain Routing)은 기존의 클래스(A, B, C) 개념을 대신해 네트워크 비트 수를 /숫자 형태로 표현하는 방식
즉, / 뒤의 숫자는 “앞에서부터 몇 비트가 네트워크 영역인지”를 뜻함.예시 설명
예시 설명 192.168.10.0/24 앞의 24비트는 네트워크, 나머지 8비트는 호스트 → 총 2⁸ = 256개의 주소 조합 (254개 사용 가능) 10.0.0.0/8 A클래스 기본 서브넷. 네트워크 8비트 + 호스트 24비트 → 2²⁴ = 16,777,216개 주소 조합 172.16.0.0/16 B클래스 기본 서브넷. 네트워크 16비트 + 호스트 16비트 → 2¹⁶ = 65,536개 주소 조합
CIDR 계산 원리
- IPv4 주소는 항상 32비트(= 4옥텟)
- / 뒤 숫자는 네트워크 비트 수
- 남은 비트는 호스트 부분 → 호스트 수 계산 가능
CIDR 네트워크 비트 호스트 비트 전체 IP 수 사용 가능 IP 수(−2) /24 24 8 2⁸ = 256 254 /25 25 7 2⁷ = 128 126 /26 26 6 2⁶ = 64 62 /27 27 5 2⁵ = 32 30 /28 28 4 2⁴ = 16 14 맨 처음 주소(모두 0)는 네트워크 주소, 맨 마지막 주소(모두 1)는 브로드캐스트 주소로 예약되어 사용 불가
CIDR 정리
- CIDR 표기법은 유연한 네트워크 분할(Subnetting) 을 가능하게 함.
- / 뒤 숫자가 커질수록 네트워크는 세분화되고, 호스트 수는 줄어듬
- 예: /24 → /25 → /26 → /27 로 갈수록 네트워크는 2배씩 늘고, 각 네트워크 내 호스트 수는 절반씩 감소한다.
6. 서브넷 분할
서브넷 분할은 호스트 부분에서 몇 비트를 ‘빌려서’ 네트워크로 바꾸는 것
즉, , 하나의 큰 네트워크를 여러 개의 작은 네트워크(서브넷)로 나누는 과정
목표: 192.168.10.0 네트워크를 4개의 서브넷으로 나누기
항목 값 기본 서브넷 마스크 255.255.255.0 (/24) 필요한 서브넷 수 4개 → 추가 비트 2개 필요 (2² = 4) 새 서브넷 마스크 255.255.255.192 (/26) 각 서브넷 크기 64 IP 주소 (62개 사용 가능) 서브넷 범위 192.168.10.0 ~ 192.168.10.63 / 192.168.10.64 ~ 192.168.10.127 /
192.168.10.128 ~ 192.168.10.191 / 192.168.10.192 ~ 192.168.10.255
비트를 빌린다는 뜻
- /24의 경우, 앞 24비트가 네트워크 / 뒤 8비트가 호스트
- [ 네트워크 24비트 ][ 호스트 8비트 ]
- 여기서 호스트 비트 2개를 네트워크 비트로 빌리면
- [ 네트워크 26비트 ][ 호스트 6비트 ]
- 즉, 네트워크가 2² = 4개로 늘어나고, 각 네트워크 안에서 쓸 수 있는 호스트 수는 2⁶ − 2 = 62개가 된다.
새 서브넷 마스크가 255.255.255.192(/26)이 되는 이유
기존 /24는
11111111.11111111.11111111.00000000 → 255.255.255.04개의 서브넷을 만들기 위해
→ 호스트 비트 8개 중 2비트를 네트워크 비트로 전환11111111.11111111.11111111.11000000마지막 옥텟 11000000을 10진수로 바꾸면
128 + 64 = 192따라서 새로운 서브넷 마스크는
255.255.255.192 → /26즉, 앞의 26비트가 네트워크 영역이고, 마지막 6비트가 호스트 영역이 됨
(2⁶ − 2 = 62개의 호스트 가능)
왜 64씩 증가할까?
서브넷의 “증가 간격(블록 크기)”은 다음 공식으로 계산
256 − 서브넷 마스크의 마지막 옥텟 값 = 블록 크기
예시로 /26은
- 서브넷 마스크: 255.255.255.192
- 마지막 옥텟 = 192
- 블록 크기 = 256 − 192 = 64
즉,
192.168.10.0 192.168.10.64 192.168.10.128 192.168.10.192이렇게 64씩 증가하면서 4개의 네트워크 구간이 생성되는 것
각 서브넷 상세 구조
서브넷 번호 네트워크 주소 브로드캐스트 주소 사용 가능한 IP 범위 1 192.168.10.0 192.168.10.63 192.168.10.1 ~ 192.168.10.62 2 192.168.10.64 192.168.10.127 192.168.10.65 ~ 192.168.10.126 3 192.168.10.128 192.168.10.191 192.168.10.129 ~ 192.168.10.190 4 192.168.10.192 192.168.10.255 192.168.10.193 ~ 192.168.10.254
서브넷 분할 정리
- 호스트 비트를 네트워크로 빌릴수록 서브넷은 많아지고, 각 서브넷 내 호스트는 줄어듬
- 증가 단위(블록 크기) 는 256에서 마지막 옥텟 값을 뺀 수로 계산
- 네트워크 주소는 모든 호스트 비트가 0, 브로드캐스트 주소는 모든 호스트 비트가 1
- /24 → /25 → /26 → /27 로 갈수록 서브넷 수는 2배, 호스트 수는 절반이 됨
7. 공인 IP와 사설 IP
구분 설명 예시 공인 IP (Public IP) 인터넷 서비스 제공업체(ISP)가 부여하는 고유 주소.
외부 인터넷 통신 가능.예: 203.252.123.10 사설 IP (Private IP) 내부 네트워크에서만 사용되는 주소. 인터넷 직접 접속 불가. 예: 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16 💡 사설 IP는 NAT(Network Address Translation)을 통해 공인 IP로 변환되어 외부와 통신
8. 브로드캐스트 주소와 네트워크 주소
용어 의미 예시 (/24 기준) 네트워크 주소 네트워크 전체를 대표하는 주소. 모든 호스트 비트가 0. 192.168.10.0 브로드캐스트 주소 네트워크 내 모든 호스트에게 데이터 전송 시 사용. 모든 호스트 비트가 1. 192.168.10.255
9. 핵심 요약
- IP주소 = 네트워크 ID + 호스트 ID
- 서브넷 마스크는 두 영역을 구분
- CIDR 표기법으로 유연한 서브넷 관리 가능
- 공인 IP ↔ 사설 IP 변환은 NAT를 통해 수행
- 네트워크 주소와 브로드캐스트 주소는 예약되어 사용 불가
10. 관련 개념 정리
개념 설명 게이트웨이 (Gateway) 내부 네트워크와 외부 네트워크를 연결하는 장치 (일반적으로 라우터) DNS (Domain Name System) 도메인 이름을 IP 주소로 변환하는 시스템 DHCP (Dynamic Host Configuration Protocol) IP주소를 자동으로 할당하는 프로토콜
11. IP주소 계산 문제 예시
예제 1. 서브넷 개수와 호스트 수 구하기
문제
IP 주소가 192.168.10.0/26인 네트워크가 있다.
이 네트워크의
① 서브넷 개수
② 각 서브넷당 사용 가능한 호스트 수를 구하시오.
풀이
1️⃣ /26 → 서브넷 마스크: 255.255.255.192
(기본 /24에서 2비트 추가 차용 → 2⁶⁴, 즉 블록 크기 64)2️⃣ 서브넷 개수 계산
추가된 비트 수 = 2 → 서브넷 수 = 2² = 4개3️⃣ 호스트 수 계산
남은 비트 = 6 → 호스트 수 = 2⁶ - 2 = 62개4️⃣ 결과
항목 값 서브넷 수 4개 호스트 수 (서브넷당) 62개 서브넷 범위 192.168.10.0 /26192.168.10.64 /26192.168.10.128 /26192.168.10.192 /26
예제 2. 네트워크 주소와 브로드캐스트 주소 구하기
문제
IP 주소 172.16.35.200/20 의 네트워크 주소와 브로드캐스트 주소를 구하시오.
풀이
1️⃣ /20 → 서브넷 마스크: 255.255.240.0 → 네트워크 비트 20개, 호스트 비트 12개
11111111.11111111.11110000.00000000
2️⃣ 블록 크기 계산
마지막 옥텟(세 번째)에서 네트워크 비트는 4개(11110000)
즉 남은 4비트가 호스트 영역.블록 크기 = 256 − 240 = 16 ->따라서 세 번째 옥텟이 16 단위로 증가한다.
...0.0 ...16.0 ...32.0 ...48.0 ...64.0 ...즉, 각 서브넷의 네트워크 주소는
172.16.0.0, 172.16.16.0, 172.16.32.0, 172.16.48.0, … 이런 식으로 생김
3️⃣ 172.16.35.200은 어디에 속하나?
- 35는 16 × 2 = 32보다 크고, 16 × 3 = 48보다 작음
→ 즉, 32와 48 사이 구간에 속함
따라서
📍 네트워크 주소 = 172.16.32.0
4️⃣ 브로드캐스트 주소 계산
하나의 블록 크기는 16이므로, 다음 네트워크 주소 바로 앞이 브로드캐스트 주소
→ 32 + 16 = 48 → 그 직전인 47이 마지막 네트워크 영역임.네트워크: 172.16.32.0 브로드캐스트: 172.16.47.255
5️⃣ 유효 호스트 범위
네트워크와 브로드캐스트를 제외한 나머지가 실제 사용 가능한 호스트 범위다.
항목 값 네트워크 주소 172.16.32.0 브로드캐스트 주소 172.16.47.255 유효 호스트 범위 172.16.32.1 ~ 172.16.47.254
풀이 팁 정리
개념 공식 / 기억법 서브넷 개수 2ⁿ (n = 차용한 비트 수) 호스트 수 2ʰ - 2 (h = 남은 비트 수) 블록 크기 256 - (서브넷 마스크 해당 옥텟 값) 네트워크 주소 호스트 비트를 0으로 채운 값 브로드캐스트 주소 호스트 비트를 1로 채운 값
'Computer Science > Network' 카테고리의 다른 글
DNS 동작 원리 (0) 2025.10.30 HTTP vs HTTPS (0) 2025.10.28 포트 번호와 프로토콜 (0) 2025.10.21 TCP/IP 4계층 구조 (0) 2025.10.15 OSI 7계층 정리 (0) 2025.10.14