IP 주소란?
IP(Internet Protocol) 주소는 인터넷과 같은 IP 네트워크 상에서 장치(컴퓨터, 스마트폰, 서버 등)를 고유하게 식별하고 통신하기 위해 사용되는 숫자 체계를 말함
IPv4 (Internet Protocol version 4)
구조
- 32비트 주소
- 점분리 10진수 표기법
- 사람이 읽기 쉽도록 8비트(옥텟)씩 4개의 그룹으로 나누어 점(.)으로 구분하여 표기
- 각 옥텟은 0부터 255까지의 십진수로 표현될 수 있음
특징:
- 약 43억 개의 고유한 주소를 가질 수 있습니다.
- 주소 클래스
- 과거에는 네트워크 규모에 따라 A, B, C, D, E 클래스로 주소를 할당하는 방식(클래스풀 주소 체계)이 사용, 현재는 클래스 없는 주소 지정(CIDR) 방식이 주로 사용
- 주소 부족 문제: 인터넷의 폭발적인 성장으로 인해 IPv4 주소 공간이 부족해지는 문제가 발생 중
3. IPv6 (Internet Protocol version 6)
구조
- 128비트 주소
- 콜론분리 16진수 표기법
- 16비트씩 8개의 그룹으로 나누어 콜론(:)으로 구분하여 표기
- 각 그룹은 0000부터 FFFF까지의 16진수로 표현
- 예:
2001:0db8:85a3:0000:0000:8a2e:0370:7334
특징:
- 사실상 무한대의 주소
- 2^128 개의 고유한 주소를 제공하여 IPv4 주소 부족 문제를 해결
- 자동 구성 (Stateless Address Autoconfiguration, SLAAC)
- 장치가 네트워크에 연결되면 라우터의 도움 없이 스스로 IP 주소를 구성할 수 있음
- 향상된 보안 (IPsec 내장)
- IP 보안 프로토콜(IPsec)을 기본적으로 지원하여 통신의 보안성을 높임
- 향상된 멀티캐스트 및 애니캐스트
- 효율적인 데이터 전송을 위한 멀티캐스트 및 가장 가까운 호스트로 데이터를 전송하는 애니캐스트 기능을 지원
- 헤더 구조 단순화
- IPv4에 비해 헤더 구조가 단순화되어 라우팅 효율성이 향상
- IPv4와의 호환성 문제:
- IPv4와 IPv6는 호환되지 않기 때문에, 전환 기간 동안 듀얼 스택(IPv4와 IPv6를 모두 지원) 또는 터널링 등의 기술이 사용
4. 서브넷 마스크 (Subnet Mask)
- 서브넷 마스크는 IP 주소를 네트워크 부분(Network ID)과 호스트 부분(Host ID)으로 나누는 역할을 하는 32비트(IPv4) 또는 128비트(IPv6)의 숫자
- IPv4에서는 점분리 10진수 형식으로, IPv6에서는 콜론분리 16진수 형식으로 표기
작동 방식 (IPv4 기준)
- 서브넷 마스크에서 네트워크 부분에 해당하는 비트는 모두
1로 채워져 있고, 호스트 부분에 해당하는 비트는 모두 0으로 채움.
- IP 주소와 서브넷 마스크를 비트 AND 연산을 하면 해당 IP 주소가 속한 네트워크 주소를 알 수 있음
- 예시
- 192.168.0.1/24
- 여기서 1로 채우는 필드가 네트워크 ID이고 0으로 채우는 필드가 호스트 ID.
- 1100 0000. 1010 1000. 0000 0000. 0000 0001 - IP 주소
- 1111 1111. 1111 1111. 1111 1111. 0000 0000 - 서브넷 마스크
- 1100 0000. 1010 1000. 0000 0000. 0000 0000 - 서브넷 네트워크
- 호스트 개수: 네트워크 주소와 브로드캐스트 주소를 제외한 254개
사용 이유:
- 네트워크 분할 (서브네팅)
- 하나의 큰 네트워크를 여러 개의 작은 서브넷으로 나누어 네트워크 관리의 효율성을 높이고, 브로드캐스트 트래픽 범위를 제한하며, 보안을 강화
- 호스트 식별
- 네트워크 내에서 각 장치를 고유하게 식별하는 호스트 ID 부분을 정의
- 라우팅 효율성 향상
- 라우터가 목적지 IP 주소의 네트워크 부분을 확인하여 효율적으로 패킷을 전달할 수 있도록 도움
- 주소 공간 효율성 증대
- 클래스 없는 주소 지정(CIDR) 방식과 함께 사용되어 IP 주소 공간을 더욱 효율적으로 할당하고 관리할 수 있도록 함