Search
moon
sun
๐Ÿ“ฆ

IPv4

Category
as S/W ์—”์ง€๋‹ˆ์–ด
Tags
Study Note
Network
Created time
2008/05/08

์ •์˜

โ€ข
32bit ์ฃผ์†Œ์ฒด๊ณ„๋ฅผ ๊ฐ€์ง€๊ณ  ์ธํ„ฐ๋„ท ๋‚ด์—์„œ ์ „์†ก์˜ ๊ธฐ๋ณธ๋‹จ์œ„์ธ ๋ฐ์ดํ„ฐ๊ทธ๋žจ(ํŒจํ‚ท)์„ ์ •์˜ํ•˜๋Š” OSI7 Layer์˜ Network ๊ณ„์ธต์˜ ํ”„๋กœํ† ์ฝœ

IPv4์˜ ํŠน์ง•

โ€ข
๊ฐ IP์ฃผ์†Œ๋Š” 32๋น„ํŠธ. ๊ณง 2^32๊ฐœ์˜ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ฃผ์†Œ๊ฐ€ ์กด์žฌํ•œ๋‹ค๋Š” ์ด์•ผ๊ธฐ.
โ€ข
8๋น„ํŠธ ์”ฉ์œผ๋กœ ๋‚˜๋ˆ„์–ด ๊ฐ ๊ตฌ๋ถ„์€ ์ (dot)์œผ๋กœ ํ‘œ๊ธฐ
โ€ข
Nework ์ฃผ์†Œ(prefix) + host ์ฃผ์†Œ๋กœ ๊ตฌ์„ฑ

IPv4 ๋ฐ์ดํ„ฐ๊ทธ๋žจ ํฌ๋งท

โ€ข
version : 4bits๋กœ ๋ฐ์ดํ„ฐ๊ทธ๋žจ์˜ IP ํ”„๋กœํ† ์ฝœ ๋ฒ„์ „์„ ๋ช…์‹œ
โ€ข
header length : ํ—ค๋” ๊ธธ์ด
โ€ข
์„œ๋น„์Šค ํƒ€์ž…(TOS) : ๋‹ค์–‘ํ•œ ํƒ€์ž…์˜ ๋ฐ์ดํ„ฐ๊ทธ๋žจ์„ ํ—ˆ์šฉ
โ€ข
total length : data๋ฅผ ํฌํ•จํ•œ ํŒจํ‚ท ์ „์ฒด ํฌ๊ธฐ
โ€ข
Identification, Flags, Fragment Offset :
๋งํฌ ๊ณ„์ธต์˜ MTU(Maximum Transfer Unit)๊ฐ€ ์žˆ๊ธฐ์— ์กด์žฌ. ๋งํฌ ๊ณ„์ธต์—์„œ ํŒจํ‚ท์€ MTU์˜ ํฌ๊ธฐ๋ฅผ ๋„˜์–ด์„œ ์ „๋‹ฌ๋  ์ˆ˜ ์—†๊ธฐ์— MTU๋ณด๋‹ค ํฐ ํŒจํ‚ท์€ ์—ฌ๋Ÿฌ fragment(์กฐ๊ฐ)์œผ๋กœ ๋‚˜๋‰˜์–ด ์ „์†ก๋˜์–ด์•ผ ํ•œ๋‹ค. Fragment offset์€ 8 byte ๋‹จ์œ„. ๋‹จํŽธํ™”์™€ ์žฌ๊ฒฐํ•ฉ์€ ๋ผ์šฐํ„ฐ์™€ ์ข…๋‹จ ๋…ธ๋“œ ๋ชจ๋‘์—์„œ ์ผ์–ด๋‚จ.
โ€ข
TTL(Time To Live) : ๋ผ์šฐํ„ฐ๊ฐ€ ๋ฐ์ดํ„ฐ๊ทธ๋žจ์„ ์ฒ˜๋ฆฌํ•  ๋•Œ๋งˆ๋‹ค 1์‹ ๊ฐ์†Œ. 0์ด ๋˜๋ฉด ๋ฐ์ดํ„ฐ๊ทธ๋žจ ํ๊ธฐ
โ€ข
Protocol : ์ƒ์œ„ ๊ณ„์ธต์˜ ํ”„๋กœํ† ์ฝœ(์˜ˆ: TCP, UDP)
โ€ข
header checksum : ๋น„ํŠธ ์˜ค๋ฅ˜ ๊ฒ€์ถœ์— ์‚ฌ์šฉ
โ€ข
Option : ์€ ์ผ๋ฐ˜์ ์œผ๋กœ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ. ๊ทธ๋Ÿฌ๋ฏ€๋กœ ํ—ค๋”์˜ ํฌ๊ธฐ๋Š” ๋ณดํ†ต 20 byte (160 bits).

classful network์—์„œ์˜ ๊ฐ ํด๋ž˜์Šค์˜ ๋ฒ”์œ„ ๋ฐ ํŠน์ง•

ํด๋ž˜์Šค
Leading bits
์‹œ์ž‘์ฃผ์†Œ
๋„คํŠธ์›Œํฌ ๊ฐœ์ˆ˜
ํ˜ธ์ŠคํŠธ ๊ฐœ์ˆ˜
A
0
0.0.0.0
/8
2^7 = 128
2^24 โ€“ 2
B
10
128.0.0.0
/16
2^14 = 16,384
2^16 โ€“ 2
C
110
192.0.0.0
/24
2^21 = 2,097,152
2^8 โ€“ 2
1110
224.0.0.0
/32
E (์˜ˆ์•ฝ๋จ)
1111
240.0.0.0
/32
โ€ข
ํ˜ธ์ŠคํŠธ ๊ฐœ์ˆ˜์—์„œ์˜ -2๋Š” x.x.x.0๊ณผ x.x.x.255๋ฅผ ๋œปํ•จ. x.x.x.0์€ ํ•ด๋‹น ๋„คํŠธ์›Œํฌ ์ฃผ์†Œ, x.x.x.255๋Š” broadcast ์ฃผ์†Œ.

CIDR(classless interdomain routing)

โ€ข
ํด๋ž˜์Šค A๋ถ€ํ„ฐ E๊นŒ์ง€ ์ด๋ฃจ์–ด์ง„ classful network ์ฃผ์†Œ์ง€์ •๋ฐฉ์‹์˜ ๋‹จ์ ์„ ๊ฐœ์„ ํ•œ ์ฃผ์†Œ์ง€์ •๋ฐฉ์‹.
โ€ข
a.b.c.d/x์˜ ํ˜•ํƒœ๋กœ ํ‘œ๊ธฐํ•˜๋ฉฐ ์—ฌ๊ธฐ์„œ x๋Š” ์ตœ์ƒ์œ„ ๋น„ํŠธ(most significant bit)์˜ ๊ฐœ์ˆ˜๋ฅผ ๋œปํ•จ.
โ€ข
์ง€์ •๋œ ๊ฐœ์ˆ˜์˜ ์ตœ์ƒ์œ„ ๋น„ํŠธ๋Š” ์„œ๋ธŒ๋„ท์˜ ์ฃผ์†Œ๋ฅผ, ๋‚˜๋จธ์ง€ ํ•˜์œ„ ๋น„ํŠธ๋Š” ํ•ด๋‹น ์„œ๋ธŒ๋„ท์— ํฌํ•จ๋œ ํ˜ธ์ŠคํŠธ ์ฃผ์†Œ๋ฅผ ๋‚˜ํƒ€๋ƒ„.

IPv4์˜ ํ•œ๊ณ„ ๋ฐ ๋ฐœ์ „

โ€ข
classful network๋ฅผ ํ†ตํ•œ ํด๋ž˜์Šค ๋ถ„๋ฅ˜ ์ฒด๊ณ„๋Š” ์ฃผ์†Œ์˜ ๋‚ญ๋น„๋ฅผ ๊ฐ€์ ธ์™”์œผ๋‚˜ CIDR์„ ํ†ตํ•ด ๊ฐœ์„ ๋จ.
โ€ข
ํ•˜์ง€๋งŒ 2^32๊ฐœ์˜ ์ตœ๋Œ€ ์ฃผ์†Œ ๊ฐœ์ˆ˜์˜ ํ•œ๊ณ„๋ฅผ ๋ณด์ถฉํ•˜๊ธฐ ์œ„ํ•ด DHCP์™€ ๋„คํŠธ์›Œํฌ ์ฃผ์†Œ๋ณ€ํ™˜(NAT: Network Address Translation)์„ ํ†ตํ•œ ์‚ฌ์„ค๋ง ๋˜๋Š” ์‚ฌ์„ค ์ฃผ์†Œ์™€์˜ ์ „์—ญ ์ฃผ์†Œ ๋งคํ•‘ ๊ธฐ๋ฒ•์ด ์‚ฌ์šฉ๋จ(supernetting, subnetting).
โ€ข
๊ทธ๋ž˜๋„ ์—ฌ์ „ํžˆ BcN ๋“ฑ์˜ ์ฐจ์„ธ๋Œ€ ๋„คํŠธ์›Œํฌ๋ฅผ ๊ตฌ์„ฑํ•˜๊ธฐ์—๋Š” ๋ถ€์ ํ•ฉํ•œ ์ฃผ์†Œ ์‹œ์Šคํ…œ -> IPv6์˜ ๋“ฑ์žฅ. IPv6๋Š” QoS, ๋ณด์•ˆ, ์ด๋™์„ฑ ๋“ฑ์˜ ๊ธฐ์กด IPv4๊ฐ€ ์ด๋ฃจ์ง€ ๋ชปํ•œ ๊ธฐํƒ€ ๊ธฐ๋Šฅ๊นŒ์ง€ ํ•จ๊ป˜ ์ง€์›.

References

โ€ข
Computer Networking 3ํŒ. James F. Kurose, Keith W.Ross
โ€ข
Classful network. Wikipedia
โ€ข
IPv4. Wikipedia