IPv4 (Internet Protocol version 4) 기초
IPv4는 현재 인터넷에서 장치(컴퓨터, 스마트폰, 서버 등)를 식별하고 상호 통신할 수 있도록 데이터를 라우팅하는 데 사용되는 인터넷 프로토콜의 네 번째 버전입니다. 인터넷의 가장 기본적인 주소 체계입니다.
1. IPv4 주소의 구조
IPv4 주소는 다음 세 가지 주요 특징을 가집니다.
- 32비트 주소: IPv4는 총 32비트(Bit)로 구성되어 있습니다. 이 32비트 주소로 약 43억 개 ($2^{32}$)의 고유한 장치를 식별할 수 있습니다.
-
점-십진 표기법: 32비트를 사람이 읽기 쉽게 8비트씩 4개의 옥텟(Octet)으로 나누고, 각 옥텟을 십진수로 변환하여 점(.)으로 구분합니다.
- 표기 예시:
192.168.1.1 - 각 옥텟은 $0$부터 $255$까지의 값을 가집니다.
- 표기 예시:
-
네트워크 ID와 호스트 ID: IPv4 주소는 크게 두 부분으로 나뉘어 데이터를 어디로 보낼지(네트워크 ID)와 그 네트워크 내의 특정 장치(호스트 ID)를 식별합니다. 이 구분은 서브넷 마스크(Subnet Mask)로 정의됩니다.
2. IPv4 주소의 클래스 (Classful Networking)
초기에는 주소의 크기를 네트워크의 규모에 따라 A, B, C 세 가지 클래스로 나누어 사용했습니다.
| 클래스 | 목적 | 네트워크 ID 크기 | 호스트 ID 크기 |
|---|---|---|---|
| A | 초대형 네트워크 (국가 기관, 대기업) | 8비트 | 24비트 (매우 많은 호스트) |
| B | 중대형 네트워크 (중견 기업, 대학) | 16비트 | 16비트 |
| C | 소규모 네트워크 (가정, 소규모 사무실) | 24비트 | 8비트 (최대 254개 호스트) |
참고: 현재는 클래스를 사용하지 않고, 서브넷 마스크를 유연하게 적용하는 CIDR (Classless Inter-Domain Routing) 방식을 사용합니다.
3. IPv4의 한계: 주소 고갈
IPv4는 총 43억 개의 주소만 제공할 수 있습니다. 스마트폰, IoT 장치 등의 폭발적인 증가로 인해 이 주소가 거의 고갈되었습니다.
- 해결책: 이를 해결하기 위해 IPv6(128비트 주소)와 NAT(Network Address Translation) 같은 기술이 사용되고 있습니다.