๐Ÿ“š STUDY

240130 CS ์Šคํ„ฐ๋”” - ๋„คํŠธ์›Œํฌ

ming412 2024. 1. 30. 09:46

๋ชฉ์ฐจ

 

 

DHCP(Dynamic Host Configuration Protocol)

PC ์‚ฌ์šฉ์ž์—๊ฒŒ IP ์ฃผ์†Œ, ๋„ค์ž„์„œ๋ฒ„ ์ฃผ์†Œ, ์„œ๋ธŒ๋„ท๋งˆ์Šคํฌ, ๊ฒŒ์ดํŠธ์›จ์ด ์ฃผ์†Œ ๋“ฑ TCP/IP ํ”„๋กœํ† ์ฝœ์˜ ๊ธฐ๋ณธ ์„ค์ • ๊ฐ’๋“ค์„ ์ž๋™์œผ๋กœ ํ• ๋‹นํ•ด์ฃผ๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•˜๊ณ , ํ•ด๋‹น ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์ผ์ • ๊ธฐ๊ฐ„ ์ž„๋Œ€๋ฅผ ํ•˜๋Š” ๋™์  ์ฃผ์†Œ ํ• ๋‹น ํ”„๋กœํ† ์ฝœ.

 

DHCP์˜ ๊ตฌ์„ฑ

DHCP ์„œ๋ฒ„: ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ IP ํ• ๋‹น ์š”์ฒญ์ด ๋“ค์–ด์˜ค๋ฉด IP๋ฅผ ๋ถ€์—ฌํ•ด์ฃผ๊ณ  ํ• ๋‹น ๊ฐ€๋Šฅํ•œ IP๋“ค์„ ๊ด€๋ฆฌํ•œ๋‹ค.

DHCP ํด๋ผ์ด์–ธํŠธ: DHCP ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ IP๋ฅผ ๋ถ€์—ฌ๋ฐ›์œผ๋ฉด TCP/IP ์„ค์ •์€ ์ดˆ๊ธฐํ™”๋˜๊ณ  ๋‹ค๋ฅธ ํ˜ธ์ŠคํŠธ์™€ TCP/IP๋ฅผ ์‚ฌ์šฉํ•ด ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

DHCP์˜ ์›๋ฆฌ

DCP ์„œ๋ฒ„๊ฐ€ IP ์ฃผ์†Œ๋ฅผ ์˜๊ตฌ์ ์œผ๋กœ ๋‹จ๋ง์— ํ• ๋‹นํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๊ณ , ์ž„๋Œ€๊ธฐ๊ฐ„(IP Lease Time)์„ ๋ช…์‹œํ•˜์—ฌ ๊ทธ ๊ธฐ๊ฐ„๋™์•ˆ ๋‹จ๋ง์ด IP ์ฃผ์†Œ๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ํ•œ๋‹ค. ๋‹จ๋ง์€ ์ž„๋Œ€๊ธฐ๊ฐ„ ์ดํ›„์—๋„ ๊ณ„์† ํ•ด๋‹น IP ์ฃผ์†Œ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ ์ž ํ•œ๋‹ค๋ฉด IP ์ฃผ์†Œ ์ž„๋Œ€๊ธฐ๊ฐ„ ์—ฐ์žฅ(IP Address Renewal)์„ DHCP ์„œ๋ฒ„์— ์š”์ฒญํ•ด์•ผ ํ•˜๊ณ , ๋‹จ๋ง์€ ์ž„๋Œ€๋ฐ›์€ IP ์ฃผ์†Œ๊ฐ€ ํ•„์š”์น˜ ์•Š๊ฒŒ ๋˜๋ฉด IP ์ฃผ์†Œ ๋ฐ˜๋‚ฉ(IP Address Release)๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ฒŒ ๋œ๋‹ค.

 

์žฅ์ 

PC์˜ ์ˆ˜๊ฐ€ ๋งŽ๊ฑฐ๋‚˜ PC ์ž์ฒด ๋ณ€๋™์‚ฌํ•ญ์ด ๋งŽ์€ ๊ฒฝ์šฐ IP ์„ค์ •์ด ์ž๋™์œผ๋กœ ๋˜๊ธฐ ๋•Œ๋ฌธ์— ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๊ณ , IP๋ฅผ ์ž๋™์œผ๋กœ ํ• ๋‹นํ•ด์ฃผ๊ธฐ ๋•Œ๋ฌธ์— IP ์ถฉ๋Œ์„ ๋ง‰์„ ์ˆ˜ ์žˆ๋‹ค.

 

๋‹จ์ 

DHCP ์„œ๋ฒ„์— ์˜์กด๋˜๊ธฐ ๋•Œ๋ฌธ์— ์„œ๋ฒ„๊ฐ€ ๋‹ค์šด๋˜๋ฉด IP ํ• ๋‹น์ด ์ œ๋Œ€๋กœ ์ด๋ฃจ์–ด์ง€์ง€ ์•Š๋Š”๋‹ค.

 

DHCP ํ”„๋กœํ† ์ฝœ

 

IP ์ฃผ์†Œ ํ• ๋‹น(์ž„๋Œ€) ์ ˆ์ฐจ (๋‹จ๋ง <-> DHCP ์„œ๋ฒ„)

 

DHCP Discover

๋ธŒ๋กœ๋“œ์บ์ŠคํŠธ ๋ฉ”์‹œ์ง€ (Destination MAC = FF:FF:FF:FF:FF:FF)

๋‹จ๋ง์ด DHCP ์„œ๋ฒ„๋ฅผ ์ฐพ๊ธฐ ์œ„ํ•œ ๋ฉ”์‹œ์ง€.

LAN์ƒ์— (๋™์ผ subnet ์ƒ์—) ๋ธŒ๋กœ๋“œ์บ์ŠคํŒ…์„ ํ•˜์—ฌ "๊ฑฐ๊ธฐ ํ˜น์‹œ DHCP ์„œ๋ฒ„ ์žˆ์œผ๋ฉด ๋‚ด๊ฒŒ ์‘๋‹ตํ•ด์ฃผ์„ธ์š”" ๋ผ๊ณ  ์™ธ์นœ๋‹ค.

 

DHCP Offer

๋ธŒ๋กœ๋“œ์บ์ŠคํŠธ ๋ฉ”์‹œ์ง€ (Destination MAC = FF:FF:FF:FF:FF:FF) ์ด๊ฑฐ๋‚˜ Unicast ์ผ ์ˆ˜ ์žˆ๋‹ค.

(๋‹จ๋ง์ด ๋ณด๋‚ธ DHCP Discover ๋ฉ”์‹œ์ง€ ๋‚ด์˜ Broadcast Flag ๊ฐ’์ด 1์ด๋ฉด Broadcast๋กœ, 0์ด๋ฉด Unicast๋กœ ๋ณด๋‚ธ๋‹ค.)

DHCP ์„œ๋ฒ„๊ฐ€ "์ € ์—ฌ๊ธฐ ์žˆ์–ด์š”~"๋ผ๊ณ  ์‘๋‹ตํ•˜๋Š” ๋ฉ”์‹œ์ง€.

๋‹จ์ˆœํžˆ DHCP ์„œ๋ฒ„์˜ ์กด์žฌ๋งŒ์„ ์•Œ๋ฆฌ์ง€ ์•Š๊ณ , ๋‹จ๋ง์— ํ• ๋‹นํ•  IP ์ฃผ์†Œ ์ •๋ณด๋ฅผ ํฌํ•จํ•œ ๋‹ค์–‘ํ•œ ๋„คํŠธ์›Œํฌ ์ •๋ณด (IP์ฃผ์†Œ, ์„œ๋ธŒ๋„ท๋งˆ์Šคํฌ, ๊ฒŒ์ดํŠธ์›จ์ด ์ฃผ์†Œ ๋“ฑ) ๋ฅผ ์‹ค์–ด์„œ ๋‹จ๋ง์— ์ „๋‹ฌํ•œ๋‹ค.

 

DHCP Request

๋ธŒ๋กœ๋“œ์บ์ŠคํŠธ ๋ฉ”์‹œ์ง€ (Destination MAC = FF:FF:FF:FF:FF:FF)

๋‹จ๋ง์ด DHCP ์„œ๋ฒ„(๋“ค)์˜ ์กด์žฌ์™€ DHCP ์„œ๋ฒ„๊ฐ€ ๋‹จ๋ง์— ์ œ๊ณตํ•  ๋„คํŠธ์›Œํฌ ์ •๋ณด๋ฅผ ์•Œ์•˜๋‹ค. ์ด์ œ ๋‹จ๋ง์€ DHCP Request ๋ฉ”์‹œ์ง€๋ฅผ ํ†ตํ•ด ํ•˜๋‚˜์˜ DHCP ์„œ๋ฒ„๋ฅผ ์„ ํƒํ•˜๊ณ , ํ•ด๋‹น ์„œ๋ฒ„์—๊ฒŒ :๋”ด๋ง์ด ์‚ฌ์šฉํ•  ๋„คํŠธ์›Œํฌ ์ •๋ณด"๋ฅผ ์š”์ฒญํ•œ๋‹ค. 

 

DHCP Ack

๋ธŒ๋กœ๋“œ์บ์ŠคํŠธ ๋ฉ”์‹œ์ง€ (Destination MAC = FF:FF:FF:FF:FF:FF) ์ด๊ฑฐ๋‚˜ Unicast ์ผ ์ˆ˜ ์žˆ๋‹ค.

(๋‹จ๋ง์ด ๋ณด๋‚ธ DHCP Request ๋ฉ”์‹œ์ง€ ๋‚ด์˜ Broadcast Flag ๊ฐ’์ด 1์ด๋ฉด Broadcast๋กœ, 0์ด๋ฉด Unicast๋กœ ๋ณด๋‚ธ๋‹ค.)

DHCP ์ ˆ์ฐจ์˜ ๋งˆ์ง€๋ง‰ ๋ฉ”์‹œ์ง€๋กœ, DHCP ์„œ๋ฒ„๊ฐ€ ๋‹จ๋ง์—๊ฒŒ "๋„คํŠธ์›Œํฌ ์ •๋ณด"๋ฅผ ์ „๋‹ฌํ•ด์ฃผ๋Š” ๋ฉ”์‹œ์ง€. ์•ž์„  DHCP Offer์˜ "๋„คํŠธ์›Œํฌ ์ •๋ณด"์™€ ๋™์ผํ•œ ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ํฌํ•จ๋œ๋‹ค.

 

DHCP ์—†์ด ์ˆ˜๋™์œผ๋กœ IP ์ฃผ์†Œ๋ฅผ ํ• ๋‹นํ•˜๋ฉด ์–ด๋–จ๊นŒ?
๋น„ํšจ์œจ์ ์ด๊ณ  ์‹œ๊ฐ„์ด ์ง€๋‚˜์น˜๊ฒŒ ๋งŽ์ด ์†Œ์š”๋˜๋ฉฐ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•  ๊ฐ€๋Šฅ์„ฑ์ด ๋†’๋‹ค.

 

์ฐธ๊ณ 

 

์„œ๋ธŒ๋„คํŒ…(Subnetting)

IP ์ฃผ์†Œ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ๋„คํŠธ์›Œํฌ๋ฅผ ๋ถ„ํ• ํ•˜๋Š” ๊ฐœ๋….

IPv4 ์ฃผ์†Œ(32bit)์˜ ๊ณ ๊ฐˆ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋“ฑ์žฅ.

 

IP ์ฃผ์†Œ์˜ ํด๋ž˜์Šค

IP ์ฃผ์†Œ๋Š” ํฌ๊ฒŒ 5๊ฐœ(A, B, C, D, E)์˜ ํด๋ž˜์Šค๋กœ ๋‚˜๋ˆ„์–ด์ง„๋‹ค.

 

 

์žฅ์ 

๋„คํŠธ์›Œํฌ ์˜์—ญ์€ ํด๋ž˜์Šค ๋‹จ์œ„๋กœ ๋‚˜๋ˆ„๊ฒŒ ๋˜๋Š”๋ฐ, ์ด๋•Œ ํด๋ž˜์Šค ๋‹จ์œ„๋กœ ๋ถ€์—ฌํ•˜๊ฒŒ ๋˜๋ฉด ์‹ค์ œ ์‚ฌ์šฉํ•˜๋Š” ip๋Š” ๋ช‡ ๊ฐœ ์•ˆ๋˜์–ด ๋‚ญ๋น„๋˜๋Š” ip๊ฐ€ ๋งŽ์•„์ ธ ๊ต‰์žฅํžˆ ๋น„ํšจ์œจ์ ์ด๋‹ค.

 

์˜ˆ๋ฅผ ๋“ค์–ด, A ํด๋ž˜์Šค์˜ ip๋ฅผ ๋ถ€์—ฌ๋ฐ›์Œ -> A ํด๋ž˜์Šค์—๋Š” 16,777,214๊ฐœ๋‚˜ ๋˜๋Š” ํ˜ธ์ŠคํŠธ์— IP๋ฅผ ํ• ๋‹นํ•  ์ˆ˜ ์žˆ๋‹ค.

์ž๊ทธ๋งˆํ•œ ํšŒ์‚ฌ๋‚˜ ์ผ๋ฐ˜์ ์ธ ์‚ฌ์šฉ์ž์—๊ฒŒ IP๋ฅผ ๋ถ€์—ฌํ•˜๋ฉด ๋‚จ๋Š” ip๋“ค์€ ๋ชจ๋‘ ๋‚ญ๋น„๋œ๋‹ค.

๋˜ํ•œ A ํด๋ž˜์Šค์— ๋ธŒ๋กœ๋“œ์บ์ŠคํŒ…์ด ์žˆ๋‹ค๋ฉด ์ตœ๋Œ€ 16,777,214๊ฐœ์˜ ํ˜ธ์ŠคํŠธ์— ๋ชจ๋“  ๋ฐ์ดํ„ฐ๊ฐ€ ์ „์†ก๋œ๋‹ค.

์ด๋Š” ๊ต‰์žฅํ•œ ๋ถ€ํ•˜๊ฐ€ ์žˆ์–ด ์„ฑ๋Šฅ์ €ํ•˜ ๋ฐ ์žฅ์• ๋กœ ์ด๋ฃจ์–ด์งˆ ์ˆ˜ ์žˆ๋‹ค.

 

 

 

์„œ๋ธŒ๋„ท์„ ๋งŒ๋“ค ๋•Œ ์‚ฌ์šฉ๋˜๋Š” ๊ฒƒ์ด ์„œ๋ธŒ๋„ท ๋งˆ์Šคํฌ(subnet mask)

์„œ๋ธŒ๋„ท ๋งˆ์Šคํฌ๋Š” IP ์ฃผ์†Œ์—์„œ ๋„คํŠธ์›Œํฌ ์ฃผ์†Œ(1)์™€ ํ˜ธ์ŠคํŠธ ์ฃผ์†Œ(0)๋ฅผ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ.

 

์ฐธ๊ณ 

 

NAT (Network Address Translation)

IP ํŒจํ‚ท์— ์žˆ๋Š” ์ถœ๋ฐœ์ง€ ๋ฐ ๋ชฉ์ ์ง€์˜ IP ์ฃผ์†Œ๋ฅผ ๋ฐ”๊ฟ” ์žฌ๊ธฐ๋กํ•˜๋ฉด์„œ ๋„คํŠธ์›Œํฌ ํŠธ๋ž˜ํ”ฝ์„ ์ฃผ๊ณ ๋ฐ›์„ ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋Š” ๊ธฐ์ˆ 

 

๋™์ž‘ ์›๋ฆฌ

์ง‘์—์„œ ์‚ฌ์šฉํ•˜๋Š” ์ธํ„ฐ๋„ท ๊ณต์œ ๊ธฐ๋ฅผ ํ†ตํ•ด ์™ธ๋ถ€์— ์žˆ๋Š” ์›น ์„œ๋ฒ„๋กœ ์ ‘๊ทผํ•˜๊ณ ์ž ํ•  ๋•Œ, ์š”์ฒญ ํŒจํ‚ท์€ ๋ฐ˜๋“œ์‹œ ํ•ด๋‹น ๊ณต์œ ๊ธฐ(๊ฒŒ์ดํŠธ์›จ์ด)๋ฅผ ๊ฑฐ์น˜๊ฒŒ ๋˜์–ด ์žˆ๋‹ค.

์ด ๋•Œ, ์ถœ๋ฐœ์ง€์˜ ์‚ฌ์„ค๋ง IP ์ฃผ์†Œ๊ฐ€ ๊ทธ๋Œ€๋กœ ์™ธ๋ถ€ ์ธํ„ฐ๋„ท์— ๋‚˜๊ฐ€๊ฒŒ ๋  ๊ฒฝ์šฐ ์ˆ˜์‹ ์ธก ์›น์„œ๋ฒ„๋Š” ์•Œ ์ˆ˜ ์—†๋Š” ์‚ฌ์„ค๋ง์˜ IP ์ด๋ฏ€๋กœ ํŒจํ‚ท์„ ์–ด๋””๋กœ ๋ณด๋‚ด์•ผ ํ•  ์ง€ ์•Œ ์ˆ˜ ์—†๋‹ค.

์‚ฌ์„ค ๋„คํŠธ์›Œํฌ์™€ ์™ธ๋ถ€ ์ธํ„ฐ๋„ท ์‚ฌ์ด์˜ NAT

 

๋”ฐ๋ผ์„œ NAT๋Š” ์•„๋ž˜ ๊ณผ์ •์„ ๊ฑฐ์นœ๋‹ค.

 

- PC(ํ˜ธ์ŠคํŠธ)์—์„œ ์ถœ๋ฐœ

# ์ถœ๋ฐœ์ง€ IP ์ฃผ์†Œ : 10.0.0.1

# ๋ชฉ์ ์ง€ IP ์ฃผ์†Œ : 200.100.10.1

ํŒจํ‚ท ํ—ค๋”์— ์ถœ๋ฐœ์ง€์™€ ๋ชฉ์ ์ง€ ์ฃผ์†Œ๋ฅผ ๊ธฐ๋กํ•œ๋‹ค. ์ด ๋•Œ ์ถœ๋ฐœ์ง€๋Š” ์ž์‹ ์˜ ์‚ฌ์„ค๋ง IP ์ฃผ์†Œ๋ฅผ ๊ธฐ๋ก.

 

- ๊ธฐ๋ณธ ๊ฒŒ์ดํŠธ์›จ์ด์—์„œ ๋‹ค์‹œ ์ถœ๋ฐœ

# ์ถœ๋ฐœ์ง€ IP ์ฃผ์†Œ : 10.0.0.1 -> 150.150.0.1 (์žฌ๊ธฐ๋กํ•˜์—ฌ ๋ณ€๊ฒฝ)

# ๋ชฉ์ ์ง€ IP ์ฃผ์†Œ : 200.100.10.1

๊ธฐ๋ณธ ๊ฒŒ์ดํŠธ์›จ์ด(๊ณต์œ ๊ธฐ ๋“ฑ)์—์„œ๋Š” ์™ธ๋ถ€๋กœ ๋‚˜๊ฐ€๋Š” ํŒจํ‚ท์„ ์ธ์‹ํ•˜๊ฒŒ ๋˜๋ฉด, ์ถœ๋ฐœ์ง€์˜ IP๋ฅผ ๊ฒŒ์ดํŠธ์›จ์ด ์ž์‹ ์˜ ๊ณต์ธ IP ์ฃผ์†Œ๋กœ ๋ณ€๊ฒฝํ•œ๋‹ค. ์ด ๋•Œ, ๋ณ„๋„์˜ NAT ํ…Œ์ด๋ธ”์„ ๋ณด๊ด€ํ•œ๋‹ค.

NAT ํ…Œ์ด๋ธ”

์™ธ๋ถ€๋กœ ๋‚˜๊ฐ€๋Š” ํŒจํ‚ท์„ ์–ด๋–ป๊ฒŒ ์ธ์‹ํ•˜๋Š”๊ฑธ๊นŒ? 

 

- ์›น ์„œ๋ฒ„์—์„œ ์ถœ๋ฐœ

# ์ถœ๋ฐœ์ง€ IP ์ฃผ์†Œ : 200.100.10.1

# ๋ชฉ์ ์ง€ IP ์ฃผ์†Œ : 150.150.0.1

์›น ์„œ๋ฒ„์—์„œ ์ˆ˜์‹ ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•œ ํ›„, ์‘๋‹ตํ•˜์—ฌ ๋ณด๋‚ด๋Š” ํŒจํ‚ท์— ์œ„์™€ ๊ฐ™์ด ๊ธฐ๋กํ•˜์—ฌ ๋ณด๋‚ธ๋‹ค. ์ด ๋•Œ, ๋ชฉ์ ์ง€ IP ์ฃผ์†Œ๋Š” ํ˜ธ์ŠคํŠธ์˜ ๊ธฐ๋ณธ ๊ฒŒ์ดํŠธ์›จ์ด ๊ณต์ธ IP ์ฃผ์†Œ๊ฐ€ ๋œ๋‹ค.

 

- ๊ธฐ๋ณธ ๊ฒŒ์ดํŠธ์›จ์ด์—์„œ ๋‹ค์‹œ ์ถœ๋ฐœ

# ์ถœ๋ฐœ์ง€ IP ์ฃผ์†Œ : 200.100.10.1

# ๋ชฉ์ ์ง€ IP ์ฃผ์†Œ : 150.150.0.1 -> 10.0.0.1 (์žฌ๊ธฐ๋กํ•˜์—ฌ ๋ณ€๊ฒฝ)

ํ˜ธ์ŠคํŠธ์œผใ…” ๊ธฐ๋ณธ ๊ฒŒ์ดํŠธ์›จ์ด์—์„œ ์›น ์„œ๋ฒ„๊ฐ€ ๋ณด๋‚ธ ํŒจํ‚ท์„ ๋ฐ›์œผ๋ฉด, ๊ธฐ๋กํ•ด๋‘์—ˆ๋˜ NAT ํ…Œ์ด๋ธ”์„ ์ฐธ์กฐํ•˜์—ฌ ์ตœ์ข… ๋ชฉ์ ์ง€์ธ ํ˜ธ์ŠคํŠธ์˜ ์‚ฌ์„ค IP ์ฃผ์†Œ๋กœ ๋ณ€๊ฒฝํ•˜์—ฌ ํ•ด๋‹น ํ˜ธ์ŠคํŠธ๋กœ ํŒจํ‚ท์„ ์ „๋‹ฌํ•œ๋‹ค.

 

ํ•œ ๋Œ€์˜ ํ˜ธ์ŠคํŠธ๊ฐ€ ์•„๋‹Œ ์—ฌ๋Ÿฌ ๋Œ€์˜ ํ˜ธ์ŠคํŠธ๊ฐ€ ๊ฐ™์€ ๋ชฉ์ ์ง€์™€ ํ†ต์‹ ํ•˜๊ณ ์ž ํ•  ๋•Œ, ๋˜๋Œํ•˜์˜ค๋Š” ํŒจํ‚ท์˜ ์ตœ์ข… ๋ชฉ์ ์ง€๊ฐ€ ์–ด๋””๊ฐ€ ๋˜์–ด์•ผ ํ•˜๋Š”์ง€ ๋ชจ๋ฅด๋Š” ํ˜ผ์„  -> PAT (NPAT) ๋ฐฉ์‹

 

์ •๋ฆฌ

- ์™ธ๋ถ€๋กœ ๋‚˜๊ฐ€๋Š” ๊ฒฝ์šฐ : ์‚ฌ์„ค IP -> ๊ณต์ธ IP

- ๋‚ด๋ถ€๋กœ ๋“ค์–ด์˜ค๋Š” ๊ฒฝ์šฐ : ๊ณต์ธ IP -> ์‚ฌ์„ค IP

 

๊ณต์ธ IP ์™€ ์‚ฌ์„ค IP

๊ณต์ธ IP : ์ „ ์„ธ๊ณ„์— ์œ ์ผํ•˜๊ฒŒ ํ• ๋‹น๋ฐ›์€ ํ•˜๋‚˜์˜ IP, ์™ธ๋ถ€์— ๊ณต๊ฐœ

์‚ฌ์„ค IP (=๋กœ์ปฌ IP, ๊ฐ€์ƒ IP) : ์™ธ๋ถ€์—์„œ ์ ‘๊ทผํ•  ์ˆ˜ ์—†๋Š” IP, ์ผ๋ฐ˜ ๊ฐ€์ • or ํšŒ์‚ฌ ๋‚ด๋ถ€์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๋ชฉ์ 

 

NAT๋ฅผ ํ†ตํ•ด ์–ป๋Š” ์ด์ ์€, ์™ธ๋ถ€์™€ ํ†ต์‹ ํ•˜๋Š” ๊ด€์ ์—์„œ ๋‚ด๋ถ€ ์‚ฌ์„ค IP๋ฅผ ๋…ธ์ถœํ•˜์ง€ ์•Š์•„๋„ ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋ณด์•ˆ์— ์œ ๋ฆฌํ•˜๋‹ค.

 

๋Œ€์นญํ‚ค ์•”ํ˜ธํ™” ๋ฐฉ์‹

์•”๋ณตํ˜ธํ™”์— ์‚ฌ์šฉํ•˜๋Š” ํ‚ค๊ฐ€ ๋™์ผํ•œ ์•”ํ˜ธํ™” ๋ฐฉ์‹

 

๋Œ€ํ‘œ์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜ : DES, 3DES, AES

 

Symmetric Encrytion

 

์žฅ์ 

๊ณต๊ฐœํ‚ค(=๋น„๋Œ€์นญํ‚ค) ์•”ํ˜ธํ™” ๋ฐฉ์‹์— ๋น„ํ•ด ์—ฐ์‚ฐ ์†๋„๊ฐ€ ๋น ๋ฅด๋‹ค.

 

๋‹จ์ 

ํ‚ค ๊ตํ™˜ ๋ฌธ์ œ : ํ‚ค๋ฅผ ๊ตํ™˜ํ•˜๋Š” ์ค‘ ํƒˆ์ทจ๋  ์ˆ˜๋„ ์žˆ๋‹ค.

์‚ฌ์šฉ์ž๊ฐ€ ์ฆ๊ฐ€ํ• ์ˆ˜๋ก ๊ฐ๊ฐ์˜ ํ‚ค๊ฐ€ ํ•„์š”ํ•˜๊ธฐ์—, ๊ด€๋ฆฌํ•ด์•ผํ•  ํ‚ค๊ฐ€ ๋ฐฉ๋Œ€ํ•˜๊ฒŒ ๋งŽ์•„์ง„๋‹ค.

 

์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ํ‚ค์˜ ์‚ฌ์ „ ๊ณต์œ , ํ‚ค ๋ฐฐํฌ ์„ผํ„ฐ ์‚ฌ์šฉ, Diffie-Hellman ํ‚ค ๊ตํ™˜, ๊ณต๊ฐœํ‚ค ์•”ํ˜ธํ™” ๋ฐฉ์‹ ๋“ฑ์ด ์žˆ๋‹ค.

 

๋น„๋Œ€์นญํ‚ค(=๊ณต๊ฐœํ‚ค) ์•”ํ˜ธํ™” ๋ฐฉ์‹ 

์•”๋ณตํ˜ธํ™”์— ์‚ฌ์šฉ๋˜๋Š” ํ‚ค๊ฐ€ ์„œ๋กœ ๋‹ค๋ฅธ ์•”ํ˜ธํ™” ๋ฐฉ์‹.

ํšจ์œจ์€ ๋–จ์–ด์ง€์ง€๋งŒ, ๋Œ€์นญํ‚ค ์•”ํ˜ธํ™” ๋ฐฉ์‹์˜ ํ‚ค ๊ตํ™˜ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋“ฑ์žฅ.

 

๋Œ€ํ‘œ์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜ : Diffie-Hellman, RSA, DSA, ECC

 

Asymmetric Encrytion

 

A๊ฐ€ B์—๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ธ๋‹ค๊ณ  ํ•˜์ž.

A๋Š” B์˜ ๊ณต๊ฐœํ‚ค๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์•”ํ˜ธํ™”ํ•ด์„œ ๋ณด๋‚ด๊ณ , B๋Š”๋ณธ์ธ์˜ ๊ฐœ์ธํ‚ค๋กœ ๋ณตํ˜ธํ™”ํ•ด์„œ ๋ณด๊ฒŒ ๋œ๋‹ค.

-> ์•”ํ˜ธํ™”๋œ ๋ฐ์ดํ„ฐ๋Š” B์˜ ๊ณต๊ฐœํ‚ค์— ๋Œ€์‘๋˜๋Š” ๊ฐœ์ธํ‚ค๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” B๋งŒ์ด ๋ณผ ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.

 

๊ณต๊ฐœํ‚ค๋Š” ํ‚ค๊ฐ€ ๊ณต๊ฐœ๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ํ‚ค ๊ตํ™˜์ด ํ•„์š” ์—†๋‹ค.

์ค‘๊ฐ„ ๊ณต๊ฒฉ์ž๊ฐ€ B์˜ ๊ณต๊ฐœํ‚ค๋ฅผ ์–ป๋Š”๋‹ค๊ณ  ํ•ด๋„ B์˜ ๊ฐœ์ธํ‚ค๋กœ๋งŒ ๋ณตํ˜ธํ™”๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.

-> ํ‚ค ์ „๋‹ฌ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์—ฌ ๋” ์•ˆ์ „ํ•˜์ง€๋งŒ, ์•”ํ˜ธํ™”์™€ ๋ณตํ˜ธํ™”๋ฅผ ์œ„ํ•ด ๋ณต์žกํ•œ ์ˆ˜ํ•™ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋Œ€์นญํ‚ค ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ๋น„ํ•ด ์†๋„๊ฐ€ ๋А๋ฆฌ๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ๋‹ค.

 

HTTPS

๋Œ€์นญํ‚ค๋งŒ์„ ์‚ฌ์šฉํ•˜๋ฉด ํ‚ค๊ฐ€ ํƒˆ์ทจ๋  ์ˆ˜ ์žˆ๋‹ค๋Š” ์œ„ํ—˜์ด ์กด์žฌํ•œ๋‹ค.

๊ทธ๋ ‡๋‹ค๊ณ  ๊ณต๊ฐœํ‚ค๋งŒ์„ ์‚ฌ์šฉํ•˜๋ฉด HTTP ๋ฉ”์‹œ์ง€์˜ ๊ธธ์ด๊ฐ€ ํฐ ๊ฒฝ์šฐ์— ํฐ ๋ถ€ํ•˜๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค. (๊ณต๊ฐœํ‚ค ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ์•”ํ˜ธํ™”, ๋ณตํ˜ธํ™” ๊ณผ์ •์ด ๋งค์šฐ ๋ณต์žกํ•˜๊ธฐ ๋•Œ)

 

๊ทธ๋ž˜์„œ HTTPS ์—์„œ๋Š” ๊ณต๊ฐœํ‚ค(=๋น„๋Œ€์นญํ‚ค) ๋ฐฉ์‹์œผ๋กœ ๋Œ€์นญํ‚ค๋ฅผ ์ „๋‹ฌํ•˜๊ณ , ์„œ๋กœ ๊ณต์œ ๋œ ๋Œ€์นญํ‚ค๋ฅผ ๊ฐ€์ง€๊ณ  ํ†ต์‹ ํ•˜๊ฒŒ ๋œ๋‹ค.

 

1. A๋Š” B์˜ ๊ณต๊ฐœํ‚ค๋กœ ์•”ํ˜ธํ™” ํ†ต์‹ ์— ์‚ฌ์šฉํ•  ๋Œ€์นญํ‚ค๋ฅผ ์•”ํ˜ธํ™”ํ•ด์„œ B์—๊ฒŒ ๋ณด๋‚ธ๋‹ค.

2. B๋Š” ์•”ํ˜ธ๋ฌธ์„ ๋ฐ›๊ณ  ์ž์‹ ์˜ ๋น„๋ฐ€ํ‚ค๋กœ ๋ณตํ˜ธํ™”ํ•œ๋‹ค.

3. B๋Š” A๋กœ๋ถ€ํ„ฐ ์–ป์€ ๋Œ€์นญํ‚ค๋กœ A์—๊ฒŒ ๋ณด๋‚ผ ํ‰๋ฌธ์„ ์•”ํ˜ธํ™”ํ•˜์—ฌ A์—๊ฒŒ ๋ณด๋‚ธ๋‹ค.

4. A๋Š” ์ž์‹ ์˜ ๋Œ€์นญํ‚ค๋กœ ์•”ํ˜ธ๋ฌธ์„ ๋ณตํ™”ํ™”ํ•œ๋‹ค.

5. ์•ž์œผ๋กœ ํ•ด๋‹น ๋Œ€์นญํ‚ค๋กœ ๊ณ„์† ํ†ต์‹ ํ•œ๋‹ค.

 

์ฆ‰ ์‚ฌ์šฉ์ž ์ธก์—์„œ๋Š” ๊ณต๊ฐœํ‚ค(=๋น„๋Œ€์นญํ‚ค) ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ†ตํ•ด ์•ˆ์ „ํ•˜๊ฒŒ ํ‚ค ๊ตํ™˜์„ ํ•œ ํ›„, ๊ตํ™˜ํ•œ ํ‚ค๋กœ ๋Œ€์นญํ‚ค ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ†ตํ•ด ํ†ต์‹ ํ•˜๊ฒŒ ๋œ๋‹ค.

 

๋Œ€์นญํ‚ค ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๊ธฐ๋ฐ€์„ฑ์„ ์ œ๊ณตํ•˜๊ณ , ๋ฌด๊ฒฐ์„ฑ/์ธ์ฆ/๋ถ€์ธ๋ฐฉ์ง€๋ฅผ ์ œ๊ณตํ•˜์ง€ ์•Š๋Š”๋‹ค.

๊ณต๊ฐœํ‚ค ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๊ธฐ๋ฐ€์„ฑ/์ธ์ฆ/๋ถ€์ธ๋ฐฉ์ง€ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค.

 

 

์—ฌ๊ธฐ์„œ ๋ฌด๊ฒฐ์„ฑ์€ ๋Œ€์นญํ‚ค, ๊ณต๊ฐœํ‚ค ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ชจ๋‘ ์„ฑ๋ฆฝํ•˜์ง€ ์•Š๋Š”๋‹ค.

๋”ฐ๋ผ์„œ ์ „์ž ์„œ๋ช…(์ธ์ฆ์„œ)์„ ์ถ”๊ฐ€ํ•จ์œผ๋กœ์จ ๋ฌด๊ฒฐ์„ฑ์„ ๋ณด์žฅํ•œ๋‹ค.

 

์ฐธ๊ณ 

 

SSL (Secure Socket Layer)

SSL์ด๋ž€, ์›น ์„œ๋ฒ„์™€ ํด๋ผ์ด์–ธํŠธ์˜ ํ†ต์‹  ์•”ํ˜ธํ™” ํ”„๋กœํ† ์ฝœ์ด๋‹ค.

 

SSL์ด ์ ์šฉ๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ, ํ‰๋ฌธ์ด ๊ทธ๋Œ€๋กœ ์ „์†ก๋˜์–ด ์ œ 3์ž๊ฐ€ ํŒจํ‚ท์„ ํƒˆ์ทจํ–ˆ์„ ๋•Œ ๊ทธ ๋‚ด์šฉ์„ ์‰ฝ๊ฒŒ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

SSL์„ ์ ์šฉํ•˜๋ฉด, ์š”์ฒญ์„ ์•”ํ˜ธํ™”ํ•ด์„œ ๋ณด๋‚ด๋ฏ€๋กœ ํ†ต์‹  ํŒจํ‚ท์ด ํƒˆ์ทจ๋˜์–ด๋„ ๋ณตํ˜ธํ™” ํ‚ค๊ฐ€ ์—†์œผ๋ฉด ๊ทธ ๋‚ด์šฉ์„ ์•Œ ์ˆ˜ ์—†๋‹ค. ๋ฐ์ดํ„ฐ ์†ก/์ˆ˜์‹  ๊ณผ์ •์—์„œ ์•”/๋ณตํ˜ธํ™”๊ฐ€ ๋ฐœ์ƒํ•˜๋ฏ€๋กœ ์†๋„๊ฐ€ ๋А๋ฆฌ๋‹ค.

 

SSL Handshake

ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ๊ฐ„์˜ ์š”์ฒญ/์‘๋‹ต์„ ๋ฐ˜๋ณตํ•˜๋ฉฐ ํ†ต์‹ ์— ํ•„์š”ํ•œ ์‚ฌ์ „ ์ž‘์—…์„ ํ•œ๋‹ค.

์ขŒ: ์„œ๋ฒ„ / ์šฐ: ํด๋ผ์ด์–ธํŠธ

 

ClientHello

ํด๋ผ์ด์–ธํŠธ๊ฐ€ ํŠน์ • ์ฃผ์†Œ์— ์ ‘๊ทผํ•˜๋ฉด, ํ•ด๋‹นํ•˜๋Š” ์„œ๋ฒ„์— ์š”์ฒญ์„ ๋ณด๋‚ธ๋‹ค. ์ด๋•Œ ํด๋ผ์ด์–ธํŠธ์˜ ์ฃผ์š” ์ •๋ณด๋ฅผ ์„œ๋ฒ„์— ์ „์†กํ•˜์—ฌ, ํ•ด๋‹น ํด๋ผ์ด์–ธํŠธ๋ฅผ ์‹๋ณ„ํ•˜๊ณ  ์–ด๋–ค ์•”ํ˜ธํ™”๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ๋“ฑ์˜ ์ •๋ณด๋ฅผ ์„œ๋ฒ„๊ฐ€ ์ธ์ง€ํ•˜๋„๋ก ํ•œ๋‹ค.

 

ServerHello

์„œ๋ฒ„๊ฐ€ ClientHello ์š”์ฒญ์„ ๋ฐ›์œผ๋ฉด, ์•„๋ž˜ ์ •๋ณด๋ฅผ ๋‹ด์•„ ํ™”๋‹ต์„ ๋ณด๋‚ธ๋‹ค.

ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค๊ณ  ํ†ต๋ณดํ•œ ์•”ํ˜ธํ™” ๊ธฐ๋ฒ• ์ค‘ ์„œ๋ฒ„์—์„œ ํ™œ์šฉํ•  ์•”ํ˜ธํ™” ๊ธฐ๋ฒ•์„ ์ „๋‹ฌํ•˜์—ฌ ๋™์ผํ•œ ์•”ํ˜ธํ™” ๊ธฐ๋ฒ•์œผ๋กœ ์†ก์ˆ˜์‹ ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•œ๋‹ค. ์ด๋•Œ ์ธ์ฆ์„œ ์ •๋ณด์™€ ํ•จ๊ป˜ ์„œ๋ฒ„ ๊ณต๊ฐœํ‚ค๋„ ์ „๋‹ฌํ•œ๋‹ค. ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์˜ ๊ณต๊ฐœํ‚ค๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์•”ํ˜ธํ™”ํ•˜๋ฉด, ์„œ๋ฒ„๋Š” ์ด๋ฅผ ๋ฐ›์•„ ๊ฐœ์ธํ‚ค๋กœ ๋ณตํ˜ธํ™”ํ•˜์—ฌ ์š”์ฒญ์„ ๋ถ„์„ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

์ธ์ฆ์„œ ๊ฒ€ํ† 

์„œ๋ฒ„๊ฐ€ ์ „๋‹ฌํ•œ ์ธ์ฆ์„œ๊ฐ€ ์‹ค์ œ ํ•ด๋‹น ์„œ๋ฒ„์˜ ์ธ์ฆ์„œ์ธ์ง€, ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” CA์—์„œ ๋ฐœ๊ธ‰๋œ ๊ฒƒ์ธ์ง€, ์‹ค์ œ ํ•ด๋‹น CA์—์„œ ๋ฐœ๊ธ‰๋ฐ›์•˜๋Š”์ง€ ๋“ฑ ์ธ์ฆ์„œ๋ฅผ ๊ฒ€ํ† ํ•œ๋‹ค.

 

Premaster Secret ์†ก์ˆ˜์‹ 

ํด๋ผ์ด์–ธํŠธ์—์„œ ClientHello, ServerHello์—์„œ ์†ก์ˆ˜์‹ ํ•œ ๋‚œ์ˆ˜(Random) ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํ•ฉํ•˜์—ฌ Premaster Secret(=๋Œ€์นญํ‚ค)์„ ์ƒ์„ฑํ•œ๋‹ค.

์ด๋ฅผ ServerHello์—์„œ ์ „๋‹ฌ๋ฐ›์•˜๋˜ ์„œ๋ฒ„์˜ ๊ณต๊ฐœํ‚ค๋กœ ์•”ํ˜ธํ™”ํ•œ๋‹ค. ์ด ๋ฐ์ดํ„ฐ๋Š” ์„œ๋ฒ„๊ฐ€ ๊ฐ€์ง„ ๊ฐœ์ธํ‚ค๋กœ๋งŒ ๋ณตํ˜ธํ™”๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.

์„œ๋ฒ„๋Š” ์ˆ˜์‹ ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณตํ˜ธํ™”ํ•˜์—ฌ ํด๋ผ์ด์–ธํŠธ์™€ ๋™์ผํ•œ Premaster Secret์„ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด์ œ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ๋ชจ๋‘ Premaster Secret์„ ๊ฐ€์ง€๊ณ  ์žˆ๊ฒŒ ๋œ๋‹ค.

 

ํ†ต์‹  ํ‚ค(Session Key) ์ƒ์„ฑ

์„œ๋ฒ„์™€ ํด๋ผ์ด์–ธํŠธ ๋ชจ๋‘ Premaster Secret์„ ์ผ๋ จ์˜ ๊ณผ์ •์„ ๊ฑฐ์ณ์„œ Master Secret์œผ๋กœ ๋งŒ๋“ ๋‹ค.

์ด๋ ‡๊ฒŒ ๋งŒ๋“  Master Sercret์œผ๋กœ Session Key๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. 

 

๋ฐ์ดํ„ฐ ์†ก์ˆ˜์‹ 

์„œ๋ฒ„์™€ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์‹ค์ œ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›๋Š” ๋‹จ๊ณ„์ด๋‹ค.

Session Key๋ฅผ ์ด์šฉํ•ด ๋Œ€์นญํ‚ค ์•”ํ˜ธํ™” ๋ฐฉ์‹์œผ๋กœ ์•”/๋ณตํ˜ธํ™”ํ•˜์—ฌ ํ†ต์‹ ํ•œ๋‹ค.

 

์„ธ์…˜ ์ข…๋ฃŒ

๋ฐ์ดํ„ฐ ์ „์†ก์ด ๋๋‚˜๋ฉด SSL ํ†ต์‹ ์ด ๋๋‚ฌ์Œ์„ ์„œ๋กœ์—๊ฒŒ ์•Œ๋ฆฌ๊ณ  ์‚ฌ์šฉํ–ˆ๋˜ Session Key๋Š” ํ๊ธฐํ•œ๋‹ค.

 

 

SSL์€ 1996๋…„ ์ดํ›„ ์—…๋ฐ์ดํŠธ ๋˜์ง€ ์•Š์•˜์œผ๋ฉฐ, ๋ณด์•ˆ์ทจ์•ฝ์ ์œผ๋กœ ์ธํ•ด ํ˜„์žฌ๋Š” ํ‡ด์ถœ๋œ ์ƒํƒœ๋‹ค.

ํ˜„์žฌ๋Š” ๋ชจ๋‘ TLS๋กœ ๊ต์ฒด๋˜์—ˆ์ง€๋งŒ, SSL ์ž์ฒด๊ฐ€ ๊ณ ์œ ๋ช…์‚ฌ๊ฐ€ ๋˜์–ด ๋„“์€ ์˜๋ฏธ์˜ ํ†ต์‹  ๋ณด์•ˆ ํ”„๋กœํ† ์ฝœ์„ ๋ช…์นญํ•˜๋Š” ์˜๋ฏธ๋กœ ์“ฐ์ธ๋‹ค.

 

์ฐธ๊ณ  1

์ฐธ๊ณ  2

์ฐธ๊ณ  3

 

TLS (Transport Layer Security)

 

 

๋กœ๋“œ๋ฐธ๋Ÿฐ์‹ฑ

๋กœ๋“œ๋ฐธ๋Ÿฐ์‹ฑ์ด๋ž€ ๋ง๊ทธ๋Œ€๋กœ ์„œ๋ฒ„๊ฐ€ ์ฒ˜๋ฆฌํ•ด์•ผํ•  ์—…๋ฌด ํ˜น์€ ์š”์ฒญ(Load)์„ ์—ฌ๋Ÿฌ ๋Œ€์˜ ์„œ๋ฒ„๋กœ ๋‚˜๋ˆ„์–ด(Balancing) ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค. ํ•œ ๋Œ€์˜ ์„œ๋ฒ„๋กœ ๋ถ€ํ•˜๊ฐ€ ์ง‘์ค‘๋˜์ง€ ์•Š๋„๋ก ํŠธ๋ž˜ํ”ฝ์„ ๊ด€๋ฆฌํ•˜์—ฌ, ๊ฐ๊ฐ์˜ ์„œ๋ฒ„๊ฐ€ ์ตœ์ ์˜ ํผํฌ๋จผ์Šค๋ฅผ ๋ณด์ผ ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๊ฒƒ์ด ๋ชฉ์ ์ด๋‹ค.

 

์ฟ ํ‚ค์™€ ์„ธ์…˜

HTTP์˜ ํŠน์ง•

- connectionless : ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์š”์ฒญ์„ ํ•œ ํ›„ ์‘๋‹ต์„ ๋ฐ›์œผ๋ฉด ๊ทธ ์—ฐ๊ฒฐ์„ ๋Š์–ด๋ฒ„๋ฆฌ๋Š” ํŠน์ง•

- stateless : ํ†ต์‹ ์ด ๋๋‚˜๋ฉด ์ƒํƒœ ๋ณด๋ฅผ ์œ ์ง€ํ•˜์ง€ ์•Š๋Š” ํŠน์ง•

๋”ฐ๋ผ์„œ ์„œ๋ฒ„๋Š” ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋ˆ„๊ตฌ์ธ์ง€ ๋งค๋ฒˆ ํ™•์ธํ•ด์•ผ ํ•œ๋‹ค. ์ด ํŠน์„ฑ์„ ๋ณด์™„ํ•˜๊ธฐ ์œ„ํ•ด ์ฟ ํ‚ค์™€ ์„ธ์…˜์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

 

์ฟ ํ‚ค๋ž€?

ํด๋ผ์ด์–ธํŠธ(๋ธŒ๋ผ์šฐ์ €) ๋กœ์ปฌ์— ์ €์žฅ๋˜๋Š”, ํ‚ค์™€ ๊ฐ’์ด ๋“ค์–ด์žˆ๋Š” ์ž‘์€ ๋ฐ์ดํ„ฐ ํŒŒ์ผ

 

์ฟ ํ‚ค์˜ ๋™์ž‘ ๋ฐฉ์‹

1. ํด๋ผ์ด์–ธํŠธ๊ฐ€ ํŽ˜์ด์ง€๋ฅผ ์š”์ฒญ

2. ์„œ๋ฒ„์—์„œ ์ฟ ํ‚ค๋ฅผ ์ƒ์„ฑ

3. ์„œ๋ฒ„์—์„œ ์‘๋‹ตํ•  ๋•Œ, HTTP ํ—ค๋”์— ์ฟ ํ‚ค๋ฅผ ํฌํ•จ์‹œ์ผœ ์‘๋‹ต

4. ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ข…๋ฃŒ๋˜์–ด๋„ ์ฟ ํ‚ค ๋งŒ๋ฃŒ ๊ธฐ๊ฐ„์ด ์žˆ๋‹ค๋ฉด ํด๋ผ์ด์–ธํŠธ์—์„œ ๋ณด๊ด€ํ•˜๊ณ  ์žˆ์Œ

5. ๊ฐ™์€ ์š”์ฒญ์„ ํ•  ๊ฒฝ์šฐ HTTP ํ—ค๋”์— ์ฟ ํ‚ค๋ฅผ ํ•จ๊ป˜ ๋ณด๋ƒ„

6. ์„œ๋ฒ„์—์„œ ์ฟ ํ‚ค๋ฅผ ์ฝ์–ด ์ด์ „ ์ƒํƒœ ์ •๋ณด๋ฅผ ๋ณ€๊ฒฝํ•  ํ•„์š”๊ฐ€ ์žˆ์„ ๋•Œ ์ฟ ํ‚ค๋ฅผ ์—…๋ฐ์ดํŠธํ•˜์—ฌ ๋ณ€๊ฒฝ๋œ ์ฟ ํ‚ค๋ฅผ HTTP ํ—ค๋”์— ํฌํ•จ์‹œ์ผœ ์‘๋‹ต

 

์„ธ์…˜์ด๋ž€?

์„ธ์…˜์€ ์ฟ ํ‚ค๋ฅผ ๊ธฐ๋ฐ˜ํ•˜๊ณ  ์žˆ์ง€๋งŒ, ์‚ฌ์šฉ์ž ์ •๋ณด ํŒŒ์ผ์„ ๋ธŒ๋ผ์šฐ์ €์— ์ €์žฅํ•˜๋Š” ์ฟ ํ‚ค์™€ ๋‹ฌ๋ฆฌ ์„ธ์…˜์€ ์„œ๋ฒ„ ์ธก์—์„œ ๊ด€๋ฆฌํ•œ๋‹ค.

์„œ๋ฒ„์—์„œ๋Š” ํด๋ผ์ด์–ธํŠธ๋ฅผ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•ด ์„ธ์…˜ ID๋ฅผ ๋ถ€์—ฌํ•˜๋ฉฐ, ์›น ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์„œ๋ฒ„์— ์ ‘์†ํ•ด์„œ ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์ข…๋ฃŒํ•  ๋•Œ๊นŒ์ง€ ์ธ์ฆ ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•œ๋‹ค.

์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์„œ๋ฒ„์— ๋‘๊ธฐ ๋•Œ๋ฌธ์— ์ฟ ํ‚ค๋ณด๋‹ค ๋ณด์•ˆ์— ์ข‹์ง€๋งŒ, ์‚ฌ์šฉ์ž๊ฐ€ ๋งŽ์•„์งˆ์ˆ˜๋ก ์„œ๋ฒ„ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋งŽ์ด ์ฐจ์ง€ํ•œ๋‹ค.

 

์„ธ์…˜์˜ ๋™์ž‘ ๋ฐฉ์‹

1. ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์— ์ ‘์† ์‹œ ์„ธ์…˜ ID๋ฅผ ๋ฐœ๊ธ‰ ๋ฐ›์Œ

2. ํด๋ผ์ด์–ธํŠธ๋Š” ์„ธ์…˜ ID์— ๋Œ€ํ•ด ์ฟ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์ €์žฅํ•˜๊ณ  ๊ฐ€์ง€๊ณ  ์žˆ์Œ

3. ํด๋ผ์ด์–ธํŠธ๋Š” ์„œ๋ฒ„์— ์š”์ฒญํ•  ๋•Œ ์ด ์ฟ ํ‚ค์˜ ์„ธ์…˜ ID๋ฅผ ๊ฐ™์ด ์„œ๋ฒ„์— ์ „๋‹ฌ

4. ์„œ๋ฒ„๋Š” ์„ธ์…˜ ID๋ฅผ ์ „๋‹ฌ๋ฐ›์•„์„œ ๋ณ„๋‹ค๋ฅธ ์ž‘์—… ์—†์ด ์„ธ์…˜ ID๋กœ ์„ธ์…˜์— ์žˆ๋Š” ํด๋ผ์ด์–ธํŠธ ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์™€์„œ ์‚ฌ์šฉ

5. ํด๋ผ์ด์–ธํŠธ ์ •๋ณด๋ฅผ ๊ฐ€์ง€๊ณ  ์„œ๋ฒ„ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜์—ฌ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์‘๋‹ต

 

์ฟ ํ‚ค์™€ ์„ธ์…˜์€ ๋น„์Šทํ•œ ์—ญํ• ์„ ํ•˜๋ฉฐ ๋™์ž‘ ์›๋ฆฌ๋„ ๋น„์Šทํ•˜๋‹ค. ๊ทธ ์ด์œ ๋Š” ์„ธ์…˜๋„ ๊ฒฐ๊ตญ ์ฟ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๊ฐ€์žฅ ํฐ ์ฐจ์ด์ ์€ ์‚ฌ์šฉ์ž์˜ ์ •๋ณด๊ฐ€ ์ €์žฅ๋˜๋Š” ์œ„์น˜์ด๋‹ค. ๋•Œ๋ฌธ์— ์ฟ ํ‚ค๋Š” ์„œ๋ฒ„์˜ ์ž์›์„ ์ „ํ˜€ ์‚ฌ์šฉํ•˜์ง€ ์•Š์œผ๋ฉฐ, ์„ธ์…˜์€ ์„œ๋ฒ„์˜ ์ž์›์„ ์‚ฌ์šฉํ•œ๋‹ค.

 

์„ธ์…˜์„ ์‚ฌ์šฉํ•˜๋ฉด ์ข‹์€๋ฐ ์™œ ์ฟ ํ‚ค๋ฅผ ์‚ฌ์šฉํ• ๊นŒ?

์„ธ์…˜์€ ์„œ๋ฒ„์˜ ์ž์›์„ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฌด๋ถ„๋ณ„ํ•˜๊ฒŒ ๋งŒ๋“ค๋‹ค๋ณด๋ฉด ์„œ๋ฒ„์˜ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๊ฐ๋‹นํ•  ์ˆ˜ ์—†์–ด์งˆ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ฟ ํ‚ค๊ฐ€ ์œ ๋ฆฌํ•œ ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค.

 

์ฟ ํ‚ค์™€ ์„ธ์…˜์˜ ์ฐจ์ด์ ?

๋ณดํ†ต ์ฟ ํ‚ค์™€ ์„ธ์…˜์˜ ์ฐจ์ด๋ฅผ ๋ฌผ์–ด๋ณผ ๋•Œ ์ €์žฅ์œ„์น˜๋‚˜ ๋ณด์•ˆ์— ๋Œ€ํ•ด์„œ๋Š” ์ž˜ ๋งํ•˜๋Š”๋ฐ, ์‚ฌ์‹ค ์ค‘์š”ํ•œ ๊ฒƒ์€ "๋ผ์ดํ”„์‚ฌ์ดํด"์ด๋‹ค.

 

์ฟ ํ‚ค/์„ธ์…˜๊ณผ ์บ์‹œ๋Š” ์–ด๋–ป๊ฒŒ ๋‹ค๋ฅผ๊นŒ?

์บ์‹œ๋Š” ์ด๋ฏธ์ง€๋‚˜ css, js ํŒŒ์ผ ๋“ฑ์„ ๋ธŒ๋ผ์šฐ์ €๋‚˜ ์„œ๋ฒ„ ์•ž ๋‹จ์— ์ €์žฅํ•ด๋†“๊ณ  ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ.

ํ•œ๋ฒˆ ํ•œ ๋ฒˆ ์บ์‹œ์— ์ €์žฅ๋˜๋ฉด ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์ฐธ๊ณ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์„œ๋ฒ„์—์„œ ๋ณ€๊ฒฝ์ด ๋˜์–ด๋„ ์‚ฌ์šฉ์ž๋Š” ๋ณ€๊ฒฝ๋˜์ง€ ์•Š๊ฒŒ ๋ณด์ผ ์ˆ˜ ์žˆ๋‹ค.

์ด๋Ÿฐ ๋ถ€๋ถ„์„ ์บ์‹œ๋ฅผ ์ง€์›Œ์ฃผ๊ฑฐ๋‚˜ ์„œ๋ฒ„์—์„œ ํด๋ผ์ด์–ธํŠธ๋กœ ์‘๋‹ต์„ ๋ณด๋‚ผ ๋•Œ ํ—ค๋”์— ์บ์‹œ ๋งŒ๋ฃŒ ์‹œ๊ฐ„์„ ๋ช…์‹œํ•˜๋Š” ๋ฐฉ๋ฒ• ๋“ฑ์„ ์ด์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

 

์ฐธ๊ณ 

 

ํ”„๋ก์‹œ ์„œ๋ฒ„

ํ”„๋ก์‹œ = ๋Œ€๋ฆฌ์ž

ํ”„๋ก์‹œ ์„œ๋ฒ„๋Š” ํด๋ผ์ด์–ธํŠธ์™€ ์˜ค๋ฆฌ์ง„ ์„œ๋ฒ„(์› ์„œ๋ฒ„, ๋ณธ๋ž˜ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ์„œ๋ฒ„)๋ฅผ ์ค‘๊ฐœํ•˜๋Š” ์—ญํ• ์„ ํ•œ๋‹ค.

 

 

์žฅ์ 

- ๋ณด์•ˆ์ ์œผ๋กœ, ํ”„๋ก์‹œ ์„œ๋ฒ„์—์„œ ๊ธฐ๋ณธ์ ์ธ ํ•„ํ„ฐ๋ง๊ณผ ์—‘์„ธ์Šค ์ œ์–ด ๋“ฑ์„ ์ œ๊ณตํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ์› ์„œ๋ฒ„๋กœ์˜ ์ง์ ‘ ๊ณต๊ฒฉ์„ ๋ง‰์„ ์ˆ˜ ์žˆ๋‹ค.

- ํด๋ผ์ด์–ธํŠธ๋Š” ํ”„๋ก์‹œ ์„œ๋ฒ„์˜ IP๋กœ ์šฐํšŒํ•˜์—ฌ ์ต๋ช…์„ฑ์„ ๋ณด์žฅํ•  ์ˆ˜ ์žˆ๋‹ค.

- ํ”„๋ก์‹œ ์„œ๋ฒ„๋Š” ์ž์ฃผ ์š”์ฒญ๋˜๋Š” ๋ฆฌ์†Œ์Šค๋ฅผ ์บ์‹ฑํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ์› ์„œ๋ฒ„์˜ ๋ถ€ํ•˜๋„ ์ค„์—ฌ์ฃผ๊ณ  ์‘๋‹ต ์†๋„๋„ ๊ฐœ์„ ํ•ด์ค€๋‹ค.

 

ํ”„๋ก์‹œ ์บ์‹œ ์„œ๋ฒ„

ํ”„๋ก์‹œ ์„œ๋ฒ„์˜ ์บ์‹ฑ ๊ธฐ๋Šฅ์„ ๋ฉ”์ธ์œผ๋กœ ํ•˜๋Š” ์„œ๋ฒ„.

 

 

ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋ฆฌ์†Œ์Šค๋ฅผ ์„œ๋ฒ„์— ์š”์ฒญํ•  ๋•Œ, ํ”„๋ก์‹œ ์„œ๋ฒ„๋Š” ๋จผ์ € ์บ์‹œ์— ๋ฆฌ์†Œ์Šค๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•œ๋‹ค. ๋ฆฌ์†Œ์Šค๊ฐ€ ์žˆ์œผ๋ฉด, ๋ฉ€๋ฆฌ ์žˆ๋Š” ์› ์„œ๋ฒ„๋ฅผ ๊ฑฐ์น  ํ•„์š”์—†์ด ํ”„๋ก์‹œ ์„œ๋ฒ„์˜ ์บ์‹œ ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ•œ๋‹ค.

์ด๋ฅผ ํ†ตํ•ด ์‘๋‹ต ์†๋„๋„ ํฌ๊ฒŒ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ๊ณ  ์› ์„œ๋ฒ„์˜ ๋ถ€ํ•˜๋„ ๋‚ฎ์ถœ ์ˆ˜ ์žˆ๋‹ค.

 

CDN (Contents Delivery Network)

์›น ์ปจํ…์ธ  ์ „๋‹ฌ์„ ๋ชฉ์ ์œผ๋กœ ์ „ ์„ธ๊ณ„์— ๋ถ„์‚ฐ๋œ ๋ฐฐํฌ ์„œ๋ฒ„ ๋„คํŠธ์›Œํฌ

 

๊ฐ๊ฐ์˜ CDN๋“ค์€ ์› ์„œ๋ฒ„์™€ ์บ์‹œ ๋™๊ธฐํ™”๋กœ ์ตœ์‹  ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•˜๋ฉฐ, ํด๋ผ์ด์–ธํŠธ์˜ ์š”์ฒญ ์‹œ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด CDN์œผ๋กœ๋ถ€ํ„ฐ ์ปจํ…์ธ ๋ฅผ ์ „๋‹ฌ๋ฐ›๋Š”๋‹ค.

 

์ฐธ๊ณ