IP 주소의 구조

IP 주소의 구조

IP 주소의 구조

1. IP 주소란?

IP 주소 개요

┌─────────────────────────────────────────────────────────────┐
│                      IP 주소 (IP Address)                    │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  정의:                                                      │
│  • 네트워크에서 장치를 식별하기 위한 고유한 논리적 주소        │
│  • 인터넷 서비스 제공자(ISP)로부터 할당받음                   │
│                                                             │
│  역할:                                                      │
│  • 네트워크 상의 장치 식별                                   │
│  • 데이터 패킷의 출발지와 목적지 지정                        │
│  • 다른 네트워크로 데이터 전송 가능하게 함                   │
│                                                             │
└─────────────────────────────────────────────────────────────┘

IP 버전 비교

┌─────────────────────────────────────────────────────────────┐
│                  IPv4 vs IPv6 비교                           │
├──────────────────┬────────────────────┬─────────────────────┤
│       항목       │       IPv4         │        IPv6         │
├──────────────────┼────────────────────┼─────────────────────┤
│     비트 수      │      32비트        │      128비트        │
├──────────────────┼────────────────────┼─────────────────────┤
│   주소 개수      │   약 43억 개       │   약 340간 개       │
│                  │   (2^32)           │   (2^128)           │
├──────────────────┼────────────────────┼─────────────────────┤
│     표기법       │   10진수           │    16진수           │
│                  │   점(.) 구분       │    콜론(:) 구분     │
├──────────────────┼────────────────────┼─────────────────────┤
│      예시        │  192.168.1.10      │ 2001:0db8:85a3:     │
│                  │                    │ 0000:0000:8a2e:     │
│                  │                    │ 0370:7334           │
├──────────────────┼────────────────────┼─────────────────────┤
│     헤더 크기    │   20~60 바이트     │    40 바이트 (고정) │
├──────────────────┼────────────────────┼─────────────────────┤
│   브로드캐스트   │      지원          │    지원 안 함       │
│                  │                    │    (멀티캐스트 사용)│
├──────────────────┼────────────────────┼─────────────────────┤
│     현재 상태    │   주로 사용        │    점진적 전환 중   │
└──────────────────┴────────────────────┴─────────────────────┘

IPv4 주소 고갈 문제

IPv4 주소 부족 현황:

┌─────────────────────────────────────────────────────────────┐
│                                                             │
│   IPv4 주소 총 개수: 약 43억 개 (4,294,967,296)              │
│                                                             │
│   문제점:                                                   │
│   ─────────────────────────────────────────                 │
│   • 인터넷 보급 확대로 주소 급격히 고갈                      │
│   • 스마트폰, IoT 기기 증가                                 │
│   • 2011년 2월: IANA의 IPv4 주소 할당 완료                  │
│   • 지역별로 순차적으로 고갈                                │
│                                                             │
│   대응책:                                                   │
│   ─────────────────────────────────────────                 │
│   1. NAT (Network Address Translation)                     │
│      • 여러 사설 IP가 하나의 공인 IP 공유                   │
│                                                             │
│   2. CIDR (Classless Inter-Domain Routing)                 │
│      • 클래스 없이 유연하게 주소 할당                       │
│                                                             │
│   3. IPv6 전환                                              │
│      • 사실상 무한한 주소 공간 제공                         │
│                                                             │
└─────────────────────────────────────────────────────────────┘

2. IPv4 주소의 표현

2진수와 10진수 표현

IPv4 주소의 구조:

32비트 = 4바이트 = 4개의 옥텟

┌─────────────────────────────────────────────────────────────┐
│                     2진수 표현 (32비트)                      │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  11000000 . 10101000 . 00000001 . 00001010                 │
│     │          │          │          │                      │
│   1옥텟      2옥텟      3옥텟      4옥텟                    │
│   (8비트)    (8비트)    (8비트)    (8비트)                  │
│                                                             │
└─────────────────────────────────────────────────────────────┘
                           ↓
                    10진수로 변환
                           ↓
┌─────────────────────────────────────────────────────────────┐
│                     10진수 표현                              │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│        192    .    168    .     1     .    10               │
│         │          │           │          │                 │
│       1옥텟      2옥텟       3옥텟      4옥텟               │
│                                                             │
│   ※ 실제 IP 주소는 2진수, 사람이 읽기 쉽게 10진수로 표시    │
│                                                             │
└─────────────────────────────────────────────────────────────┘

옥텟 (Octet)

┌─────────────────────────────────────────────────────────────┐
│                     옥텟 (Octet)                             │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  정의: 8비트 단위의 데이터 그룹                              │
│                                                             │
│  각 옥텟의 값 범위:                                         │
│  ─────────────────────────────────────────                  │
│  • 2진수: 00000000 ~ 11111111                               │
│  • 10진수: 0 ~ 255                                          │
│                                                             │
│                                                             │
│  2진수 → 10진수 변환 예시:                                  │
│  ─────────────────────────────────────────                  │
│                                                             │
│    11000000                                                 │
│    ↓↓↓↓↓↓↓↓                                                │
│    12864321684 2 1   (각 자릿수의 가중치)                    │
│    8          6 3 1                                         │
│               4 2 6                                         │
│                   │                                         │
│    1×128 + 1×64 + 0×32 + 0×16 + 0×8 + 0×4 + 0×2 + 0×1      │
│    = 128 + 64                                               │
│    = 192                                                    │
│                                                             │
└─────────────────────────────────────────────────────────────┘

2진수 ↔ 10진수 변환표

자주 사용하는 2진수-10진수 변환:

┌─────────────────────────────────────────────────────────────┐
│   2진수          │   10진수   │      설명                   │
├──────────────────┼────────────┼─────────────────────────────┤
│   00000000       │     0      │   최솟값                    │
│   00000001       │     1      │                             │
│   00001010       │    10      │                             │
│   01100100       │   100      │                             │
│   10000000       │   128      │   최상위 비트만 1           │
│   11000000       │   192      │   클래스 C 시작             │
│   11111111       │   255      │   최댓값                    │
└──────────────────┴────────────┴─────────────────────────────┘


서브넷 마스크에서 자주 사용:

┌─────────────────────────────────────────────────────────────┐
│   2진수          │   10진수   │      의미                   │
├──────────────────┼────────────┼─────────────────────────────┤
│   11111111       │   255      │   8비트 모두 네트워크       │
│   11111110       │   254      │   7비트 네트워크            │
│   11111100       │   252      │   6비트 네트워크            │
│   11111000       │   248      │   5비트 네트워크            │
│   11110000       │   240      │   4비트 네트워크            │
│   11100000       │   224      │   3비트 네트워크            │
│   11000000       │   192      │   2비트 네트워크            │
│   10000000       │   128      │   1비트 네트워크            │
│   00000000       │     0      │   모두 호스트               │
└──────────────────┴────────────┴─────────────────────────────┘

3. 네트워크 ID와 호스트 ID

IP 주소의 구성

┌─────────────────────────────────────────────────────────────┐
│                  IP 주소의 두 부분                           │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  IP 주소 = 네트워크 ID + 호스트 ID                          │
│                                                             │
│  ┌───────────────────────────┬─────────────────────────┐   │
│  │      네트워크 ID          │       호스트 ID         │   │
│  │    (Network Portion)      │    (Host Portion)       │   │
│  ├───────────────────────────┼─────────────────────────┤   │
│  │                           │                         │   │
│  │  • 어떤 네트워크인지 식별  │  • 네트워크 내 어떤     │   │
│  │  • 동네/아파트 단지       │    장치인지 식별        │   │
│  │  • 라우팅에 사용          │  • 동/호수              │   │
│  │                           │  • 같은 네트워크 내      │   │
│  │                           │    고유해야 함          │   │
│  │                           │                         │   │
│  └───────────────────────────┴─────────────────────────┘   │
│                                                             │
└─────────────────────────────────────────────────────────────┘


실제 주소 비유:

┌─────────────────────────────────────────────────────────────┐
│                                                             │
│  실제 주소:  서울시 강남구 테헤란로 123번지                  │
│              ├──────────────────┤ ├────────┤               │
│                   네트워크 ID       호스트 ID               │
│                   (어떤 동네)      (몇 번지)                │
│                                                             │
│  IP 주소:    192.168.1.10                                   │
│              ├─────────┤├──┤                               │
│              네트워크 ID 호스트 ID                          │
│              (192.168.1)  (10)                              │
│                                                             │
└─────────────────────────────────────────────────────────────┘

네트워크 ID와 호스트 ID 구분

같은 네트워크 vs 다른 네트워크:

┌─────────────────────────────────────────────────────────────┐
│                     네트워크 A                               │
│                   192.168.1.0/24                            │
│                                                             │
│   ┌──────────────────┐  ┌──────────────────┐               │
│   │   PC-1           │  │   PC-2           │               │
│   │  192.168.1.10    │  │  192.168.1.20    │               │
│   │  ├────────┤├──┤  │  │  ├────────┤├──┤  │               │
│   │  네트워크  호스트 │  │  네트워크  호스트 │               │
│   │   같음      다름  │  │   같음      다름  │               │
│   └──────────────────┘  └──────────────────┘               │
│                                                             │
│   → 네트워크 ID가 같으므로 같은 네트워크!                    │
│   → 스위치로 직접 통신 가능                                 │
│                                                             │
└─────────────────────────────────────────────────────────────┘
                            │
                        [라우터]
                            │
┌─────────────────────────────────────────────────────────────┐
│                     네트워크 B                               │
│                   192.168.2.0/24                            │
│                                                             │
│   ┌──────────────────┐  ┌──────────────────┐               │
│   │   PC-3           │  │   PC-4           │               │
│   │  192.168.2.10    │  │  192.168.2.20    │               │
│   │  ├────────┤├──┤  │  │  ├────────┤├──┤  │               │
│   │  네트워크  호스트 │  │  네트워크  호스트 │               │
│   └──────────────────┘  └──────────────────┘               │
│                                                             │
│   → 네트워크 ID가 다르므로 다른 네트워크!                    │
│   → 라우터가 필요                                           │
│                                                             │
└─────────────────────────────────────────────────────────────┘

서브넷 마스크의 역할

┌─────────────────────────────────────────────────────────────┐
│                    서브넷 마스크                             │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  역할: IP 주소에서 네트워크 ID와 호스트 ID를 구분            │
│                                                             │
│  원리:                                                      │
│  • 1인 부분 = 네트워크 ID                                   │
│  • 0인 부분 = 호스트 ID                                     │
│                                                             │
└─────────────────────────────────────────────────────────────┘


예시: IP 주소 192.168.1.10, 서브넷 마스크 255.255.255.0

┌─────────────────────────────────────────────────────────────┐
│                                                             │
│  IP 주소:        192    .   168    .    1     .   10       │
│  (2진수)     11000000  10101000  00000001  00001010        │
│                                                             │
│  서브넷 마스크:  255    .   255    .   255    .    0       │
│  (2진수)     11111111  11111111  11111111  00000000        │
│              ├─────────────────────────────┤├──────┤       │
│                    네트워크 (24비트)         호스트         │
│                                             (8비트)         │
│                                                             │
│  AND 연산:                                                  │
│  ────────────────────────────────────────────────          │
│  IP 주소:    11000000  10101000  00000001  00001010        │
│  서브넷:     11111111  11111111  11111111  00000000        │
│  ──────────────────────────────────────────────────        │
│  결과:       11000000  10101000  00000001  00000000        │
│              = 192.168.1.0 (네트워크 주소)                  │
│                                                             │
└─────────────────────────────────────────────────────────────┘


일반적인 서브넷 마스크:

┌─────────────────────────────────────────────────────────────┐
│  서브넷 마스크     │  CIDR 표기  │  네트워크/호스트 비트    │
├────────────────────┼─────────────┼─────────────────────────┤
│  255.0.0.0         │    /8       │  8비트 / 24비트         │
│  255.255.0.0       │    /16      │  16비트 / 16비트        │
│  255.255.255.0     │    /24      │  24비트 / 8비트         │
│  255.255.255.128   │    /25      │  25비트 / 7비트         │
│  255.255.255.192   │    /26      │  26비트 / 6비트         │
│  255.255.255.224   │    /27      │  27비트 / 5비트         │
│  255.255.255.240   │    /28      │  28비트 / 4비트         │
│  255.255.255.248   │    /29      │  29비트 / 3비트         │
│  255.255.255.252   │    /30      │  30비트 / 2비트         │
└────────────────────┴─────────────┴─────────────────────────┘

4. 공인 IP 주소와 사설 IP 주소

공인 IP 주소

┌─────────────────────────────────────────────────────────────┐
│                  공인 IP 주소 (Public IP)                    │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  정의:                                                      │
│  • 인터넷에서 유일하게 식별되는 IP 주소                      │
│  • 전 세계적으로 고유                                       │
│                                                             │
│  할당:                                                      │
│  • IANA → 지역 인터넷 레지스트리(RIR) → ISP → 사용자        │
│                                                             │
│  ┌─────────────────────────────────────────────────────┐   │
│  │  IANA (Internet Assigned Numbers Authority)        │   │
│  │           │                                         │   │
│  │     ┌─────┼─────┬─────────┬─────────┐              │   │
│  │     ↓     ↓     ↓         ↓         ↓              │   │
│  │   ARIN  RIPE  APNIC   LACNIC   AFRINIC            │   │
│  │  (북미) (유럽) (아시아) (남미)  (아프리카)          │   │
│  │     │     │     │         │         │              │   │
│  │     └─────┴─────┴─────────┴─────────┘              │   │
│  │                     │                               │   │
│  │                    ISP                              │   │
│  │                     │                               │   │
│  │                  사용자                             │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
│  특징:                                                      │
│  • 인터넷에 직접 연결 가능                                  │
│  • 비용 발생 (ISP 요금)                                     │
│  • 수량 제한                                                │
│                                                             │
└─────────────────────────────────────────────────────────────┘

사설 IP 주소

┌─────────────────────────────────────────────────────────────┐
│                  사설 IP 주소 (Private IP)                   │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  정의:                                                      │
│  • 내부 네트워크(LAN)에서만 사용하는 IP 주소                 │
│  • 인터넷에서 직접 사용 불가                                 │
│                                                             │
│  RFC 1918에서 정의된 사설 IP 주소 범위:                      │
│  ─────────────────────────────────────────                  │
│                                                             │
│  ┌──────────┬──────────────────────────────┬────────────┐  │
│  │  클래스  │           범위               │   개수     │  │
│  ├──────────┼──────────────────────────────┼────────────┤  │
│  │    A     │  10.0.0.0 ~ 10.255.255.255   │ 약 1677만  │  │
│  │          │  (10.0.0.0/8)                │            │  │
│  ├──────────┼──────────────────────────────┼────────────┤  │
│  │    B     │  172.16.0.0 ~ 172.31.255.255 │ 약 104만   │  │
│  │          │  (172.16.0.0/12)             │            │  │
│  ├──────────┼──────────────────────────────┼────────────┤  │
│  │    C     │  192.168.0.0~192.168.255.255 │ 약 65000   │  │
│  │          │  (192.168.0.0/16)            │            │  │
│  └──────────┴──────────────────────────────┴────────────┘  │
│                                                             │
│  특징:                                                      │
│  • 무료로 사용 가능                                         │
│  • 다른 네트워크와 중복 사용 가능                           │
│  • 인터넷 접속 시 NAT 필요                                  │
│                                                             │
└─────────────────────────────────────────────────────────────┘

공인 IP vs 사설 IP 사용 구조

가정/회사 네트워크 구성:

┌─────────────────────────────────────────────────────────────┐
│                     내부 네트워크 (LAN)                      │
│                     사설 IP 주소 사용                        │
│                                                             │
│   [PC1]          [PC2]          [스마트폰]    [프린터]      │
│  192.168.1.2    192.168.1.3    192.168.1.4   192.168.1.5   │
│      │              │              │             │          │
│      └──────────────┴──────────────┴─────────────┘          │
│                           │                                 │
│                      [스위치]                               │
│                           │                                 │
│                    ┌──────┴──────┐                         │
│                    │   공유기    │  ← 사설 IP: 192.168.1.1 │
│                    │   (라우터)  │                         │
│                    │    + NAT   │  ← 공인 IP: 203.0.113.50│
│                    └──────┬──────┘                         │
│                           │                                 │
└───────────────────────────┼─────────────────────────────────┘
                            │
                     ┌──────┴──────┐
                     │  인터넷     │
                     │  (공인 IP)  │
                     └─────────────┘

※ 내부: 사설 IP 사용 (무료, 중복 가능)
※ 외부: 공인 IP 1개만 사용 (비용 절감)
※ NAT가 사설 IP ↔ 공인 IP 변환

NAT (Network Address Translation)

┌─────────────────────────────────────────────────────────────┐
│                NAT (네트워크 주소 변환)                       │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  역할: 사설 IP 주소 ↔ 공인 IP 주소 변환                      │
│                                                             │
│  동작 과정:                                                 │
│  ─────────────────────────────────────────                  │
│                                                             │
│  1. 내부 → 외부 (송신)                                      │
│     PC (192.168.1.10) → 인터넷                              │
│                                                             │
│     원본:     출발지 192.168.1.10                           │
│              목적지 8.8.8.8                                 │
│                      ↓ NAT 변환                             │
│     변환 후:  출발지 203.0.113.50 (공인 IP)                 │
│              목적지 8.8.8.8                                 │
│                                                             │
│  2. 외부 → 내부 (수신)                                      │
│     인터넷 → PC (192.168.1.10)                              │
│                                                             │
│     수신:     출발지 8.8.8.8                                │
│              목적지 203.0.113.50                            │
│                      ↓ NAT 역변환                           │
│     변환 후:  출발지 8.8.8.8                                │
│              목적지 192.168.1.10                            │
│                                                             │
└─────────────────────────────────────────────────────────────┘


NAT 테이블 예시:

┌─────────────────────────────────────────────────────────────┐
│                      NAT 변환 테이블                         │
├────────────────────┬──────────────────┬─────────────────────┤
│     내부 주소      │     외부 주소    │       프로토콜      │
├────────────────────┼──────────────────┼─────────────────────┤
│  192.168.1.10:1234 │ 203.0.113.50:5001│    TCP (웹 브라우징)│
│  192.168.1.11:2345 │ 203.0.113.50:5002│    TCP (이메일)     │
│  192.168.1.12:3456 │ 203.0.113.50:5003│    UDP (게임)       │
└────────────────────┴──────────────────┴─────────────────────┘

※ 포트 번호를 이용해 여러 내부 장치를 구분
※ 이를 PAT(Port Address Translation) 또는 NAPT라고 함

5. DHCP (Dynamic Host Configuration Protocol)

DHCP 개요

┌─────────────────────────────────────────────────────────────┐
│                          DHCP                                │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  Dynamic Host Configuration Protocol                        │
│  IP 주소를 자동으로 할당하는 프로토콜                         │
│                                                             │
│  할당 정보:                                                 │
│  ─────────────────────────────────────────                  │
│  • IP 주소                                                  │
│  • 서브넷 마스크                                            │
│  • 기본 게이트웨이 (라우터 주소)                             │
│  • DNS 서버 주소                                            │
│  • 임대 기간 (Lease Time)                                   │
│                                                             │
│  장점:                                                      │
│  ─────────────────────────────────────────                  │
│  • 자동 설정으로 관리 편의성 향상                            │
│  • IP 주소 충돌 방지                                        │
│  • 효율적인 IP 주소 사용 (필요할 때만 할당)                  │
│                                                             │
└─────────────────────────────────────────────────────────────┘

DHCP 동작 과정 (DORA)

DHCP 주소 할당 과정:

┌─────────────────────────────────────────────────────────────┐
│                                                             │
│   [클라이언트]                              [DHCP 서버]     │
│   (IP 없음)                                 (IP 있음)       │
│       │                                          │          │
│       │  1. DHCP Discover (브로드캐스트)        │          │
│       │─────────────────────────────────────────→│          │
│       │  "IP 주소 필요합니다!"                   │          │
│       │                                          │          │
│       │  2. DHCP Offer                           │          │
│       │←─────────────────────────────────────────│          │
│       │  "192.168.1.10 사용하세요"               │          │
│       │                                          │          │
│       │  3. DHCP Request (브로드캐스트)         │          │
│       │─────────────────────────────────────────→│          │
│       │  "192.168.1.10 사용하겠습니다"           │          │
│       │                                          │          │
│       │  4. DHCP Ack                             │          │
│       │←─────────────────────────────────────────│          │
│       │  "승인! 임대 기간: 24시간"               │          │
│       │                                          │          │
│   [IP 할당 완료]                                            │
│   192.168.1.10                                              │
│                                                             │
└─────────────────────────────────────────────────────────────┘

DORA:
• D - Discover (발견)
• O - Offer (제안)
• R - Request (요청)
• A - Acknowledge (승인)

정적 IP vs 동적 IP

┌─────────────────────────────────────────────────────────────┐
│              정적 IP vs 동적 IP (DHCP)                       │
├──────────────────┬──────────────────────────────────────────┤
│                  │                                          │
│     정적 IP      │  • 관리자가 수동으로 설정                │
│   (Static IP)    │  • IP 주소가 변하지 않음                 │
│                  │  • 서버, 프린터 등에 사용                │
│                  │  • 관리 부담 증가                        │
│                  │                                          │
├──────────────────┼──────────────────────────────────────────┤
│                  │                                          │
│     동적 IP      │  • DHCP로 자동 할당                      │
│   (Dynamic IP)   │  • IP 주소가 변할 수 있음                │
│                  │  • 일반 PC, 스마트폰 등에 사용           │
│                  │  • 관리 편리                             │
│                  │                                          │
└──────────────────┴──────────────────────────────────────────┘


사용 시나리오:

서버/프린터 (정적 IP 권장):
─────────────────────────────────────────
• 웹 서버: 192.168.1.100 (고정)
• 프린터: 192.168.1.200 (고정)
  → 다른 기기가 항상 같은 주소로 접근 가능

일반 PC/스마트폰 (동적 IP 권장):
─────────────────────────────────────────
• 노트북: DHCP로 할당
• 스마트폰: DHCP로 할당
  → 네트워크에 연결만 하면 자동 설정

6. IPv6 개요

IPv6 주소 구조

┌─────────────────────────────────────────────────────────────┐
│                      IPv6 주소 구조                          │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  길이: 128비트 (16바이트)                                    │
│  표기: 16진수, 콜론(:)으로 구분                              │
│                                                             │
│  전체 형식:                                                 │
│  2001:0db8:85a3:0000:0000:8a2e:0370:7334                   │
│  ├──┤├──┤├──┤├──┤├──┤├──┤├──┤├──┤                        │
│    │   │   │   │   │   │   │   │                           │
│   16  16  16  16  16  16  16  16  비트                     │
│   비트 비트 비트 비트 비트 비트 비트 비트                   │
│                                                             │
│  8개 그룹 × 16비트 = 128비트                                │
│                                                             │
└─────────────────────────────────────────────────────────────┘


IPv6 주소 축약 규칙:

┌─────────────────────────────────────────────────────────────┐
│                                                             │
│  규칙 1: 앞의 0 생략 가능                                   │
│  ─────────────────────────────────────────                  │
│  0db8 → db8                                                 │
│  0000 → 0                                                   │
│  0370 → 370                                                 │
│                                                             │
│  규칙 2: 연속된 0000 그룹은 :: 로 축약 (1회만)              │
│  ─────────────────────────────────────────                  │
│  0000:0000 → ::                                             │
│                                                             │
│  예시:                                                      │
│  ─────────────────────────────────────────                  │
│  원본: 2001:0db8:0000:0000:0000:0000:0000:0001              │
│  축약: 2001:db8::1                                          │
│                                                             │
│  원본: fe80:0000:0000:0000:0000:0000:0000:0001              │
│  축약: fe80::1                                              │
│                                                             │
└─────────────────────────────────────────────────────────────┘

IPv4 vs IPv6 주요 차이점

┌─────────────────────────────────────────────────────────────┐
│                  IPv4 vs IPv6 상세 비교                      │
├──────────────────┬────────────────────┬─────────────────────┤
│       항목       │       IPv4         │        IPv6         │
├──────────────────┼────────────────────┼─────────────────────┤
│   주소 길이      │      32비트        │      128비트        │
├──────────────────┼────────────────────┼─────────────────────┤
│   주소 개수      │   약 43억 개       │ 약 3.4×10^38 개     │
│                  │                    │ (무한에 가까움)     │
├──────────────────┼────────────────────┼─────────────────────┤
│   헤더 구조      │   가변 길이        │    고정 40바이트    │
│                  │   (20~60 바이트)   │                     │
├──────────────────┼────────────────────┼─────────────────────┤
│   체크섬         │   헤더에 포함      │    제거됨           │
│                  │                    │   (상위 계층 담당)  │
├──────────────────┼────────────────────┼─────────────────────┤
│   브로드캐스트   │      지원          │    지원 안 함       │
│                  │                    │   (멀티캐스트 사용) │
├──────────────────┼────────────────────┼─────────────────────┤
│   보안           │   옵션 (IPsec)     │    기본 내장        │
├──────────────────┼────────────────────┼─────────────────────┤
│   자동 설정      │   DHCP 필요        │   SLAAC 지원        │
│                  │                    │   (상태 없는 자동)  │
├──────────────────┼────────────────────┼─────────────────────┤
│   NAT            │   필요             │    불필요           │
│                  │   (주소 부족)      │   (주소 충분)       │
└──────────────────┴────────────────────┴─────────────────────┘

7. IP 주소 확인 명령어

Windows에서 확인

Windows 명령 프롬프트:

> ipconfig

Windows IP 구성

이더넷 어댑터 이더넷:

   연결별 DNS 접미사. . . . :
   IPv4 주소 . . . . . . . . : 192.168.1.10
   서브넷 마스크 . . . . . . : 255.255.255.0
   기본 게이트웨이 . . . . . : 192.168.1.1

무선 LAN 어댑터 Wi-Fi:

   미디어 상태 . . . . . . . : 미디어 연결 끊김


상세 정보:
> ipconfig /all

이더넷 어댑터 이더넷:

   물리적 주소. . . . . . . . : 00-11-22-33-44-55
   DHCP 사용 . . . . . . . . : 예
   IPv4 주소 . . . . . . . . : 192.168.1.10 (기본 설정)
   서브넷 마스크 . . . . . . : 255.255.255.0
   임대 시작 날짜. . . . . . : 2024년 1월 1일 오전 9:00:00
   임대 만료 날짜. . . . . . : 2024년 1월 2일 오전 9:00:00
   기본 게이트웨이 . . . . . : 192.168.1.1
   DHCP 서버 . . . . . . . . : 192.168.1.1
   DNS 서버. . . . . . . . . : 8.8.8.8
                               8.8.4.4

Linux/Mac에서 확인

Linux/Mac 터미널:

$ ip addr    (또는 ifconfig)

eth0: <BROADCAST,MULTICAST,UP,LOWER_UP>
    inet 192.168.1.10/24 brd 192.168.1.255 scope global eth0
    inet6 fe80::1 prefixlen 64 scope link

$ ip route   (라우팅 테이블)

default via 192.168.1.1 dev eth0
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.10

공인 IP 확인

공인 IP 주소 확인 방법:

1. 웹사이트 이용
   ─────────────────────────────────────────
   https://whatismyip.com
   https://ipinfo.io

2. 명령어 이용
   ─────────────────────────────────────────
   $ curl ifconfig.me
   203.0.113.50

   $ curl ipinfo.io
   {
     "ip": "203.0.113.50",
     "city": "Seoul",
     "country": "KR",
     "org": "AS1234 Example ISP"
   }

핵심 정리

개념설명
IP 주소네트워크에서 장치를 식별하는 논리적 주소
IPv432비트 주소 체계, 약 43억 개 주소
IPv6128비트 주소 체계, 사실상 무제한 주소
옥텟8비트 단위, IP 주소는 4개 옥텟으로 구성
네트워크 ID어떤 네트워크인지 식별하는 부분
호스트 ID네트워크 내 어떤 장치인지 식별하는 부분
공인 IP인터넷에서 사용 가능한 고유 주소
사설 IP내부 네트워크에서만 사용하는 주소
NAT사설 IP ↔ 공인 IP 변환 기술
DHCPIP 주소를 자동으로 할당하는 프로토콜

IP 주소 구조 요약

┌─────────────────────────────────────────────────────────────┐
│                   IPv4 주소 구조 요약                        │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│        192    .    168    .     1     .    10               │
│        ├─────────────────────┤    ├──────────┤             │
│              네트워크 ID           호스트 ID                │
│                                                             │
│   • 32비트 = 4옥텟                                          │
│   • 각 옥텟: 0~255                                          │
│   • 서브넷 마스크로 네트워크/호스트 구분                     │
│                                                             │
│   사설 IP 범위:                                             │
│   • 10.0.0.0/8        (클래스 A)                           │
│   • 172.16.0.0/12     (클래스 B)                           │
│   • 192.168.0.0/16    (클래스 C)                           │
│                                                             │
└─────────────────────────────────────────────────────────────┘

주소 할당 흐름

┌─────────────────────────────────────────────────────────────┐
│                    IP 주소 할당 흐름                         │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  공인 IP:                                                   │
│  IANA → RIR(지역 레지스트리) → ISP → 기업/가정              │
│                                                             │
│  사설 IP:                                                   │
│  네트워크 관리자가 자유롭게 할당 (또는 DHCP 자동 할당)       │
│                                                             │
│                                                             │
│  일반적인 가정 네트워크:                                    │
│  ┌────────────────────────────────────────────────────┐    │
│  │                                                    │    │
│  │  ISP ──(공인 IP)──→ 공유기 ──(사설 IP)──→ PC     │    │
│  │                      │                             │    │
│  │            203.0.113.50        192.168.1.x        │    │
│  │                                                    │    │
│  └────────────────────────────────────────────────────┘    │
│                                                             │
└─────────────────────────────────────────────────────────────┘

용어 정리

  • IP 주소 (IP Address): 네트워크에서 장치를 식별하는 논리적 주소
  • IPv4: 32비트 IP 주소 체계, 현재 가장 널리 사용
  • IPv6: 128비트 IP 주소 체계, IPv4 고갈 대응
  • 옥텟 (Octet): 8비트 단위의 데이터 그룹
  • 네트워크 ID: IP 주소에서 네트워크를 식별하는 부분
  • 호스트 ID: IP 주소에서 개별 장치를 식별하는 부분
  • 서브넷 마스크: 네트워크 ID와 호스트 ID를 구분하는 마스크
  • 공인 IP (Public IP): 인터넷에서 유일하게 식별되는 IP 주소
  • 사설 IP (Private IP): 내부 네트워크에서만 사용하는 IP 주소
  • NAT (Network Address Translation): 사설 IP와 공인 IP를 변환하는 기술
  • DHCP: IP 주소를 자동으로 할당하는 프로토콜
  • ISP (Internet Service Provider): 인터넷 서비스 제공자