Tiny Bunny IP์˜ ํ•œ๊ณ„ / ํฌํŠธ / NAPT / ICMP
๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
network

IP์˜ ํ•œ๊ณ„ / ํฌํŠธ / NAPT / ICMP

by maesil 2025. 4. 21.

๋„คํŠธ์›Œํฌ ๊ณ„์ธต๊ณผ ์‘์šฉ ๊ณ„์ธต ์‚ฌ์ด์˜ ์ „์†ก ๊ณ„์ธต

  • IP ํ•œ๊ณ„ ๋ณด์™„: ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ํ†ต์‹ ๊ณผ ์—ฐ๊ฒฐํ˜• ํ†ต์‹  ๊ธฐ๋Šฅ ์ œ๊ณต
  • ์‘์šฉ ๊ณ„์ธต ํ”„๋กœ์„ธ์Šค(์‹คํ–‰ ์ค‘์ธ ํ”„๋กœ๊ทธ๋žจ) ์‹๋ณ„: ํฌํŠธ ๋ฒˆํ˜ธ ํ™œ์šฉ

 

โœ” IP์˜ ํŠน์ง•

  • ์‹ ๋ขฐํ•  ์ˆ˜ ์—†๋Š” (๋น„์‹ ๋ขฐ์„ฑ) ํ”„๋กœํ† ์ฝœ (unreliable protocol)
  • ๋น„์—ฐ๊ฒฐํ˜• ํ”„๋กœํ† ์ฝœ (connectionless protocol)
  • IP ํŒจํ‚ท์˜ ์ „๋‹ฌ: ์‹ ๋ขฐ์„ฑ ์—†๋Š” ํ†ต์‹  + ๋น„์—ฐ๊ฒฐํ˜• ํ†ต์‹ 

์‹ ๋ขฐํ•  ์ˆ˜ ์—†๋Š” ํ†ต์‹ 

  • ํŒจํ‚ท์ด ์ˆ˜์‹ ์ง€๊นŒ์ง€ ์ œ๋Œ€๋กœ ์ „์†ก๋˜์—ˆ๋‹ค๋Š” ๋ณด์žฅ์„ ํ•˜์ง€ ์•Š์Œ
  • ํ†ต์‹  ๊ณผ์ •์—์„œ ํŒจํ‚ท์ด ์ž˜๋ชป ์ „์†ก๋˜์–ด๋„ ์ด๋ฅผ ํ™•์ธํ•˜์ง€ ์•Š๊ณ , ์žฌ์ „์†ก๋„ ํ•˜์ง€ ์•Š์œผ๋ฉฐ, ์ˆœ์„œ๋Œ€๋กœ ํŒจํ‚ท์ด ๋„์ฐฉํ•  ๊ฒƒ์ด๋ผ๋Š” ๋ณด์žฅ๋„ ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ์˜๋ฏธ

๋น„์—ฐ๊ฒฐํ˜• ํ†ต์‹ 

  • ์†ก์ˆ˜์‹  ํ˜ธ์ŠคํŠธ ๊ฐ„์— ์‚ฌ์ „ ์—ฐ๊ฒฐ ์ˆ˜๋ฆฝ ์ž‘์—…์„ ๊ฑฐ์น˜์ง€ ์•Š์Œ
  • ๊ทธ์ € ์ˆ˜์‹ ์ง€๋ฅผ ํ–ฅํ•ด ํŒจํ‚ท์„ ๋ณด๋‚ด๊ธฐ๋งŒ ํ•  ๋ฟ

IP๋Š” ์™œ ์‹ ๋ขฐํ•  ์ˆ˜ ์—†๋Š” ๋น„์—ฐ๊ฒฐํ˜• ํ†ต์‹ ์„ ํ• ๊นŒ?

  • ์ฃผ๋œ ์ด์œ ๋Š” ์„ฑ๋Šฅ, ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ์—ฐ๊ฒฐํ˜• ํ†ต์‹ ์€ ์„ฑ๋Šฅ์— ์•…์˜ํ–ฅ
  • ์‹ ๋ขฐ์„ฑ ์žˆ๋Š” ์ „์†ก์ด ๋ชจ๋“  ๊ฒฝ์šฐ์— ํ•„์š”ํ•œ ๊ฒƒ์€ ์•„๋‹˜

 

์ „์†ก ๊ณ„์ธต์˜ ํ”„๋กœํ† ์ฝœ

โœ” TCP

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

โœ” UDP

  • ์‹ ๋ขฐํ•  ์ˆ˜ ์—†๋Š” ํ†ต์‹ , ๋น„์—ฐ๊ฒฐํ˜• ํ†ต์‹ ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•จ
  • TCP ๋ณด๋‹ค๋Š” ๋น„๊ต์  ๋น ๋ฅธ ์ „์†ก ๊ฐ€๋Šฅ

 

์‘์šฉ ๊ณ„์ธต์„ ์‹๋ณ„ํ•˜๋Š” ์ „์†ก ๊ณ„์ธต

ํฌํŠธ๋ฅผ ํ™œ์šฉํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹๋ณ„

  • ํฌํŠธ(port): ๋„คํŠธ์›Œํฌ์ƒ์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹๋ณ„ ์ •๋ณด

ํฌํŠธ์˜ ๋ถ„๋ฅ˜

  • ํŒจํ‚ท ๋‚ด ์ˆ˜์‹ ์ง€ ํฌํŠธ์™€ ์†ก์‹ ์ง€ ํฌํŠธ๋ฅผ ํ†ตํ•ด ์†ก์ˆ˜์‹ ์ง€ ํ˜ธ์ŠคํŠธ์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹๋ณ„
  • 16๋น„ํŠธ๋กœ ํ‘œํ˜„ ๊ฐ€๋Šฅ: ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ํฌํŠธ์˜ ์ˆ˜๋Š” 2^16(65536)๊ฐœ
    - ํ• ๋‹น ๊ฐ€๋Šฅํ•œ ํฌํŠธ ๋ฒˆํ˜ธ: 0๋ฒˆ ~ 65535๋ฒˆ

 

โœ” ์ž˜ ์•Œ๋ ค์ง„ ํฌํŠธ(well-known port)

  • 0๋ฒˆ๋ถ€ํ„ฐ 1023๋ฒˆ๊นŒ์ง€์˜ ํฌํŠธ
  • ์‹œ์Šคํ…œ ํฌํŠธ(system port)
  • ๋ฒ”์šฉ์ ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ”„๋กœํ† ์ฝœ์ด ์ผ๋ฐ˜์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ํฌํŠธ ๋ฒˆํ˜ธ๋ฅผ ์˜๋ฏธ

 

โœ” ๋“ฑ๋ก๋œ ํฌํŠธ(registered port)

  • ํฌํŠธ ๋ฒˆํ˜ธ 1024๋ฒˆ ~ 49151๋ฒˆ
  • ์ž˜ ์•Œ๋ ค์ง„ ํฌํŠธ์— ๋น„ํ•ด์„  ๋œ ๋ฒ”์šฉ์ 
  • ํ”ํžˆ ์‚ฌ์šฉ๋˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ”„๋กœํ† ์ฝœ์— ํ• ๋‹นํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ

 

์ธํ„ฐ๋„ท ํ• ๋‹น ๋ฒˆํ˜ธ ๊ด€๋ฆฌ ๊ธฐ๊ด€(IANA; Internet Assigned Numbers Authority)
- ์ž˜ ์•Œ๋ ค์ง„ ํฌํŠธ์™€ ๋“ฑ๋ก๋œ ํฌํŠธ
- ํฌํŠธ ๋ฒˆํ˜ธ๋Š” ๊ถŒ๊ณ ์ผ ๋ฟ ๊ฐ•์ œ ์‚ฌํ•ญ์€ ์•„๋‹˜
https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml

 

โœ” ๋™์  ํฌํŠธ(dynamic port)

  • = ์‚ฌ์„ค ํฌํŠธ(private port) = ์ž„์‹œ ํฌํŠธ(ephemeral port)
  • ํŠน๋ณ„ํžˆ ๊ด€๋ฆฌ๋˜์ง€ ์•Š๋Š” ํฌํŠธ ๋ฒ”์œ„: ์ž์œ ๋กญ๊ฒŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
  • ์„œ๋ฒ„๋Š” ๋Œ€๋ถ€๋ถ„ ์ž˜ ์•Œ๋ ค์ง„ ํฌํŠธ์™€ ๋“ฑ๋ก๋œ ํฌํŠธ ์‚ฌ์šฉ
  • ํด๋ผ์ด์–ธํŠธ๋Š” ๋Œ€๋ถ€๋ถ„ ๋™์  ํฌํŠธ ์‚ฌ์šฉ (e.g. ์›น ๋ธŒ๋ผ์šฐ์ €)

 

'ํŠน์ • ํ˜ธ์ŠคํŠธ'์—์„œ ์‹คํ–‰ ์ค‘์ธ 'ํŠน์ • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ”„๋กœ์„ธ์Šค' ์‹๋ณ„

  • IP ์ฃผ์†Œ:ํฌํŠธ ๋ฒˆํ˜ธ ํ˜•์‹

 

ํฌํŠธ๋ฅผ ํ™œ์šฉํ•˜๋Š” ๊ธฐ์ˆ : ํฌํŠธ ๊ธฐ๋ฐ˜ NAT
โœ” NAT

  • NAT ๋ณ€ํ™˜ ํ…Œ์ด๋ธ”: ๋ณ€ํ™˜์˜ ๋Œ€์ƒ์ด ๋˜๋Š” IP ์ฃผ์†Œ ์Œ
  • ์‚ฌ์„ค IP ์ฃผ์†Œ ํ•˜๋‚˜๋‹น ๊ณต์ธ IP ์ฃผ์†Œ ํ•˜๋‚˜๊ฐ€ ๋Œ€์‘: ๋งŽ์€ ์‚ฌ์„ค IP ์ฃผ์†Œ๋ฅผ ๋ณ€ํ™˜ํ•˜๊ธฐ์—๋Š” ๋ฌด๋ฆฌ๊ฐ€ ์žˆ์Œ
  • ๊ณต์ธ IP ์ฃผ์†Œ์˜ ๋‚ญ๋น„: ์‚ฌ์„ค IP ์ฃผ์†Œ์˜ ์ˆ˜๋งŒํผ ๊ณต์ธ IP ์ฃผ์†Œ๊ฐ€ ํ•„์š”

 

โœ” ํฌํŠธ ๊ธฐ๋ฐ˜์˜ NAT, NAPT

  • NAPT(Network Address Port Translation) ๋˜๋Š” APT(Address Port Translation)
  • NAPT๋Š” NAT ํ…Œ์ด๋ธ”์— ๋ณ€ํ™˜ํ•  IP ์ฃผ์†Œ ์Œ๊ณผ ๋”๋ถˆ์–ด ํฌํŠธ ๋ฒˆํ˜ธ๋„ ํ•จ๊ป˜ ๊ธฐ๋กํ•˜๊ณ  ๋ณ€ํ™˜
  • ํ•˜๋‚˜์˜ ๊ณต์ธ IP ์ฃผ์†Œ(1)๋ฅผ ์—ฌ๋Ÿฌ ์‚ฌ์„ค IP ์ฃผ์†Œ(N)๊ฐ€ ๊ณต์œ  ๊ฐ€๋Šฅ
    - ์‚ฌ์„ค IP ์ฃผ์†Œ:๊ณต์ธ IP ์ฃผ์†Œ๋ฅผ N:1๋กœ ๋ณ€ํ™˜
    - ๊ณต์ธ IP ์ฃผ์†Œ ์ˆ˜ ๋ถ€์กฑ ๋ฌธ์ œ๋ฅผ ๊ฐœ์„ ํ•œ ๊ธฐ์ˆ 

 

โœ” ICMP

  • IP ํŒจํ‚ท ์ „์†ก ๊ณผ์ •์— ๋Œ€ํ•œ ํ”ผ๋“œ๋ฐฑ ๋ฉ”์‹œ์ง€ ์ œ๊ณต
ํ”ผ๋“œ๋ฐฑ ๋ฉ”์‹œ์ง€?

1. ์ „์†ก ๊ณผ์ •์—์„œ ๋ฐœ์ƒํ•œ ๋ฌธ์ œ ์ƒํ™ฉ์— ๋Œ€ํ•œ ์˜ค๋ฅ˜ ๋ณด๊ณ 
2. ๋„คํŠธ์›Œํฌ์— ๋Œ€ํ•œ ์ง„๋‹จ ์ •๋ณด (๋„คํŠธ์›Œํฌ์ƒ์˜ ์ •๋ณด ์ œ๊ณต)

 

ICMP ๋ฉ”์‹œ์ง€ = ํƒ€์ž…(type) + ์ฝ”๋“œ(code)

  • ํƒ€์ž…: ICMP ๋ฉ”์‹œ์ง€ ์œ ํ˜• ๋ฒˆํ˜ธ
  • ์ฝ”๋“œ: ๊ตฌ์ฒด์ ์ธ ๋ฉ”์‹œ์ง€ ๋‚ด์šฉ ๋ฒˆํ˜ธ

 

ICMP๋Š” IP์˜ ๋ณด์กฐ์ผ ๋ฟ: ์‹ ๋ขฐ์„ฑ ์™„์ „ ๋ณด์žฅ X

 

์ถœ์ฒ˜

๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ์ปดํ“จํ„ฐ๊ณตํ•™ 2: ํ˜ผ์ž ๊ณต๋ถ€ํ•˜๋Š” ๋„คํŠธ์›Œํฌ