네트워크/네트워크 이론
9. IPv4 주소 체계
zhsus
2023. 1. 17. 22:42
반응형
☞ 이 글은 Private 클라우드를 활용한 네트워크 & 서버 보안운영 관리 교육을 받으면서 정리한 내용입니다.
#1 IPv4의 주소 개념
>> 주소 개요
- 주소 개념
- 인터넷의 모든 장비를 각각 인식하는 고유의 번호
- 네트워크는 주소를 가지고 목적지까지 경로를 설정함
- 주소를 이용하여 데이터 출입경로를 통제(보안 기능)
>> 주소 개념의 이해
일반 우편 주소 | 데이터 패킷 주소 |
우편번호 | MAC 주소(2계층) |
집 주소 | IP 주소(3계층) |
00 아파트 | TCP(4계층) |
이름 | Port 번호 |
>> IPv4의 주소 개념
- 32비트로 구성
- IPv4 주소의 총 개수 : 2^32으로 약 43억 개
- 32비트를 8비트씩 끊어서 4개 부분으로 나누고 각각을 10진수로 표현
- 32비트를 네트워크 주소 부분과 호스트 주소 부분으로 구분
- 전세계에서 유일한 주소
- 공인 IP 주소와 사설IP 주소로 구분
#2 이진법 계산
- IPv4 주소 표현을 위한 2진수의 10진수 변환
비트위치 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
가중치 | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
2^7 | 2^6 | 2^5 | 2^4 | 2^3 | 2^2 | 2^1 | 2^0 |
- 예) 10000101(이진수) => 128 + 0 + 0 + 0 + 0 + 4 + 0 + 1 = 133(십진수)
#3 IP 주소 지정
>> 클래스(Class) 기반 주소 지정
- A, B, C, D, E 클래스(Class) 각각의 IP 주소 범위
Class A | 첫 8비트에 대한 십진수 표현 (1~127).(0~255).(0~255).(0~255) |
0xxx xxxx.xxxx xxxx.xxxx xxxx.xxxx xxxx |
Class B | 첫 8비트에 대한 십진수 표현 (128~191).(0~255).(0~255).(0~255) |
10xx xxxx.xxxx xxxx.xxxx xxxx.xxxx xxxx |
Class C | 첫 8비트에 대한 십진수 표현 (192~223).(0~255).(0~255).(0~255) |
110x xxxx.xxxx xxxx.xxxx xxxx.xxxx xxxx |
Class D | 첫 8비트에 대한 십진수 표현 (224~239).(0~255).(0~255).(0~255) |
1110 xxxx.xxxx xxxx.xxxx xxxx.xxxx xxxx |
Class E | 첫 8비트에 대한 십진수 표현 (240~255).(0~255).(0~255).(0~255) |
1111 xxxx.xxxx xxxx.xxxx xxxx.xxxx xxxx |
- 네트워크 주소와 호스트 주소의 의미
- IPv4 주소의 각 클래스 별 네트워크와 호스트 주소
- Class A : 255(Network).0(Host).0(Host).0(Host)
- Class B : 255(Network).255(Network).0(Host).0(Host)
- Class C : 255(Network).255(Network).255(Network).0(Host)
- Class D : 멀티캐스트 주소로 사용
- Class E : 미래를 위한 예비로 미사용
- IPv4 주소의 네트워크 주소 및 호스트 주소의 개수
Network # 개수 | 1개의 Network # 내의 이용 가능한 Host Number 수 | 첫 1바이트의 십진수 범위 | |
Class A | 1~126(126개) | 16777214개(2^24-2) | 1~126 |
Class B | 128~191(32766개) | 65534개(2^16-2) | 128~191 |
Class C | 192.0.0.1 ~ 223.255.254.0 | 254개(2^8-2) | 192~223 |
>> 특수 주소 지정
- 32비트 모두 0인 주소
- 0.0.0.0/32(default) : IPv4 패킷을 전송하고자 하는 호스트가 자신의 IP 주소를 모르는 경우, 통신에 사용
- 목적지 주소를 제한된 브로드캐스트 주소로 설정 (DHCP에서 사용)
- 32비트 모두 1인 주소(제한적 브로드캐스트)
- 255.255.255.255/32 : 현재 네트워크 내의 제한된 브로드캐스트로 예약
- 네트워크 내의 모든 다른 호스트들에게 메시지를 전송할 때 이 주소를 목적지 주소로 설정
- 제한적 브로드캐스트는 라우터 밖으로는 전달되지 않음
- 네트워크 자체 주소
- 호스트 부분이 모두 0인 주소
- 직접적 브로드캐스트 주소
- 호스트 부분이 모두 1인 주소
- 라우터가 네트워크의 모든 호스트로 패킷을 보낼 때 사용
- 루프백 주소(Loopback Address)
- 127.0.0.1, 127.0.0.0/8
- 멀티캐스트 주소
224.0.0.1 | 로컬 서브넷 안에 있는 모든 시스템 |
224.0.0.2 | 로컬 서브넷 안에 있는 모든 라우터 |
224.0.0.5 | OSPF(Open Shortest Path First)를 지원하는 모든 라우터 |
224.0.0.9 | 모든 RIPv2 라우터 |
- IPv4 주소의 사설 IP
A Class | 10.0.0.0/8 | 16,772,216 개 |
B Class | 172.16.0.0/12 | 1,047,584 개 |
C Class | 192.168.0.0/16 | 65,536 개 |
>> 클래스리스(Classless) 기반 주소
- IP 주소 낭비와 부족현상 심화
- 등급화 되지 않는 방식 도입
- A, B, C 클래스 별로 IP 주소를 구분하지 않고 네트워크 식별자 범위를 자유롭게 지정할 수 있도록 하여 IP 주소 사용을 융토성 있게 함.
- CIDR(Classless Inter Domain Routing)
- VLSM(Variable Length Subnet Mask)
- ---,---,---/xx로 표현
- / 다음의 xx 숫자까지를 네트워크 주소로 사용
- 예) 클래스리스(Classless) 기반 주소 예 : 203.211.231.46/25 => 처음부터 25비트까지를 네트워크 주소로 사용
>> 서브넷 마스크 값
200 | 193 | 130 | 200 | |
IP 주소 | 1100 1000 | 1100 0001 | 1000 0010 | 1100 1000 |
MASK | 1111 1111 | 1111 1111 | 1111 1111 | 1100 0000 (/26, 26비트까지 마스크) |
십진수 | 255 | 255 | 255 | 192 |
>> 서브넷팅
- 하나의 등급의 네트워크를 몇 개의 작은 논리적인 서브 네트워크로 분할하는 방식
- 서브넷팅에서는 호스트 식별자를 다시 서브넷 식별자와 호스트 식별자로 세분화
- 서브넷 마스킹
- IP 주소로부터 서브넷 주소만을 식별할 수 있는 방법

>> 슈퍼넷팅
- 특정 클래스에서 사용할 수 있는 호스트의 수가 정해지고 제한됨.
- 특정 클래스의 주소 여러 개를 묶어 좀 더 큰 하나의 네트워크로 구성하는 것
- 네트워크 식별자 중 일부를 호스트 식별자로 사용

#4 IP 주소의 전달방식
>> IP주소 전달방식
전달방식 | 설명 |
유니캐스트(Unicast) | - 하나의 송신자가 하나의 수신자에게 패킷을 전송 |
멀티캐스트(Multicast) | - 하나의 송신자가 다수의 특정 수신자에게 패킷을 전송 - 사전에 멀티캐스트 그룹에 가입되어 있어야 함 |
브로드캐스트(Broadcast) | - 송신자가 네트워크의 모든 불특정 호스트에게 패킷을 보내는 방식 - 호스트 식별자 필드를 모드 1로 설정 |
반응형