IP(Internet Protocol) 주소는
네트워크에 연결된 각 장치(컴퓨터, 서버, 라우터 등) 를 구분하기 위한 논리적 주소(Logical Address) 이다.
💬 쉽게 말하면, “네트워크 상의 집 주소” 와 같다.
IPv4 주소는 32비트(4바이트) 로 구성되어 있으며,
보통 10진수로 4개 옥텟(octet) 로 표현한다.
예시: 192.168.0.1
이 주소는 두 부분으로 나뉜다:
| 구분 | 설명 | 예시 |
|---|---|---|
| 네트워크 부분 (Network ID) | 해당 장치가 속한 네트워크 식별 | 192.168.0.0 |
| 호스트 부분 (Host ID) | 네트워크 내 개별 장치 식별 | .1 |
IPv4는 32비트이므로,
각 옥텟(octet)은 8비트씩, 총 4개의 블록으로 구성된다.
192.168.0.1 → 11000000.10101000.00000000.00000001
| 구분 | 비트 수 | 설명 |
|---|---|---|
| Network ID | n비트 | 네트워크 구분 |
| Host ID | 32-n비트 | 장치 구분 |
IP 초창기에는 “클래스 기반(Classful)” 으로 IP 주소를 구분했다.
즉, 네트워크 ID와 호스트 ID의 고정된 비율로 나누는 방식이다.
📚 주요 클래스 종류
| 클래스 | 시작 비트 | 주소 범위 | 네트워크 ID | 호스트 ID | 기본 서브넷마스크 | 특징 |
|---|---|---|---|---|---|---|
| A 클래스 | 0xxx | 0.0.0.0 ~ 127.255.255.255 | 8비트 | 24비트 | 255.0.0.0 | 대규모 네트워크 |
| B 클래스 | 10xx | 128.0.0.0 ~ 191.255.255.255 | 16비트 | 16비트 | 255.255.0.0 | 중간 규모 네트워크 |
| C 클래스 | 110x | 192.0.0.0 ~ 223.255.255.255 | 24비트 | 8비트 | 255.255.255.0 | 소규모 네트워크 |
| D 클래스 | 1110 | 224.0.0.0 ~ 239.255.255.255 | - | - | - | 멀티캐스트용 |
| E 클래스 | 1111 | 240.0.0.0 ~ 255.255.255.255 | - | - | - | 연구·실험용 |
| 클래스 | 네트워크 개수 | 네트워크당 호스트 수 (2ⁿ−2) |
|---|---|---|
| A | 약 128개 | 약 1,600만 개 (2²⁴−2) |
| B | 약 16,000개 | 약 65,534개 (2¹⁶−2) |
| C | 약 200만 개 | 약 254개 (2⁸−2) |
🔎 -2는 네트워크 주소(모두 0)와 브로드캐스트 주소(모두 1)를 제외하기 때문.
| 클래스 | 예시 IP | 네트워크 ID | 호스트 ID | 서브넷마스크 |
|---|---|---|---|---|
| A | 10.20.30.40 | 10 | 20.30.40 | 255.0.0.0 |
| B | 172.16.5.10 | 172.16 | 5.10 | 255.255.0.0 |
| C | 192.168.0.5 | 192.168.0 | 5 | 255.255.255.0 |
사설망(Local Network) 에서만 사용 가능한 IP 범위
(인터넷에서는 라우팅되지 않음)
| 클래스 | 사설 IP 범위 |
|---|---|
| A | 10.0.0.0 ~ 10.255.255.255 |
| B | 172.16.0.0 ~ 172.31.255.255 |
| C | 192.168.0.0 ~ 192.168.255.255 |
💡 예: 가정용 공유기 → 192.168.x.x
→ 외부와 통신할 때 NAT(Network Address Translation)를 통해 공인 IP로 변환된다.
| 구분 | 공인 IP (Public) | 사설 IP (Private) |
|---|---|---|
| 역할 | 인터넷 통신용 | 내부 네트워크용 |
| 부여 주체 | ISP, 기관, 정부 | 사용자(자체 설정) |
| 중복 가능 여부 | 불가 | 가능 |
| 예시 | 8.8.8.8 (Google DNS) | 192.168.0.1 (공유기) |
| 문제점 | 설명 |
|---|---|
| IP 낭비 | A/B 클래스는 너무 많은 호스트를 할당 (낭비 심함) |
| 유연성 부족 | 고정된 네트워크/호스트 비율 |
| 세분화 불가능 | 네트워크를 필요에 따라 분할(Subnetting)하기 어려움 |
| 주소 고갈 문제 | IPv4 주소 공간의 낭비로 빠른 소진 발생 |