Search
Duplicate

Raw Socket

ํƒœ๊ทธ
์†์„ฑ

Raw Socket

์–ด๋Š ํŠน์ •ํ•œ ํ”„๋กœํ† ์ฝœ ์šฉ์˜ ์ „์†ก ๊ณ„์ธต ํฌ๋งทํŒ… ์—†์ด ์ธํ„ฐ๋„ท ํ”„๋กœํ† ์ฝœ ํŒจํ‚ท์„ ์ง์ ‘์ ์œผ๋กœ ์ฃผ๊ณ  ๋ฐ›๊ฒŒ ํ•ด์ฃผ๋Š” ์†Œ์ผ“
์šฐ๋ฆฌ๊ฐ€ ์ผ๋ฐ˜์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ์†Œ์ผ“์€ ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ  ๋ฐ›์„ ๋•Œ ํ—ค๋”์ •๋ณด์˜ ์ถ”๊ฐ€ ๋ฐ ๋ถ„๋ฆฌ์™€ ๊ฐ™์€ ์ž‘์—…์„ย ์šด์˜์ฒด์ œ์˜ ํ”„๋กœํ† ์ฝœ ์Šคํƒ ๋‚ด์—์„œ ์ž๋™์œผ๋กœ ์ฒ˜๋ฆฌํ•ด์ฃผ๋Š”๋ฐ, ์ด๋Š” TCP/IP 4๊ณ„์ธต์˜ Transport Layer ์ดํ•˜๋ฅผ ์•„๋ž˜์™€ ๊ฐ™์ด ์ถ”์ƒํ™”ํ•˜์˜€๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ๊ฐœ๋ฐœ์ž๋Š” ํ—ค๋”๋ฅผ ์ ‘ํ•  ๊ธฐํšŒ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์šฐ๋ฆฌ๊ฐ€ ์ƒˆ๋กœ์šด ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜, ํ—ค๋”์˜ ์ •๋ณด๋ฅผ
์ด์šฉํ•˜์—ฌ ๋ณด์•ˆ ํ”„๋กœ๊ทธ๋žจ๊ณผ ๊ฐ™์€ ๊ฒƒ์„ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒฝ์šฐ์—๋Š” ํ—ค๋”๋ฅผ ์ง์ ‘ ์ œ์–ดํ•ด์ฃผ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
์ด๋Ÿฌํ•œ ์ƒํ™ฉ์—์„œ RAW์†Œ์ผ“์€ย ํ—ค๋” ์ •๋ณด๋“ค์— ๋Œ€ํ•ด ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ์ง์ ‘ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค.
์ฆ‰, RAW์†Œ์ผ“์„ ์‚ฌ์šฉํ•˜๋ฉด IPํ—ค๋”์™€ TCPํ—ค๋”๋ฅผ ์ง์ ‘ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ, ์ด๋ฅผ ๋ชจ๋‘ ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ๋กœ ์ทจ๊ธ‰ํ•˜๋ฏ€๋กœ ๋„คํŠธ์›Œํฌ ๊ณ„์ธต์— ์–ด๋–ค ์ข…๋ฅ˜์˜ ํ—ค๋”๊ฐ€ ์™€๋„ ์ƒ๊ด€์ด ์—†๊ฒŒ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ธฐ์— RAW ์†Œ์ผ“์œผ๋กœ TCP๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ์— IPํ—ค๋”์™€ TCPํ—ค๋”๋ฅผ ๋ณด๋‚ด๊ณ ์ž ํ•˜๋Š” ๋ฐ์ดํ„ฐ์˜ ์•ž๋ถ€๋ถ„์— ์ง์ ‘ ๋งŒ๋“ค์–ด์ฃผ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

Raw Socket์˜ ํŠน์ง•

โ€ข
์‘์šฉ ๊ณ„์ธต๊ณผ ์ „์†ก ๊ณ„์ธต, ๋„คํŠธ์›Œํฌ ๊ณ„์ธต์—์„œ ๋ชจ๋‘ ์ ‘๊ทผ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
โ€ข
๋„คํŠธ์›Œํฌ ๊ณ„์ธต ํ—ค๋”์™€ ์ „์†ก ๊ณ„์ธต ํ—ค๋”๋ฅผ ์ง์ ‘ ์ œ์–ด๊ฐ€๋Šฅํ•˜๋‹ค.
โ€ข
๋„คํŠธ์›Œํฌ ๊ณ„์ธต์œผ๋กœ ์ „์†ก๋˜๋Š” ๋ชจ๋“  ํŒจํ‚ท์„ ์ „๋ถ€ ๋ชจ๋‹ˆํ„ฐ๋ง ๋ฐ ๊ฐ์ง€ย ๊ฐ€๋Šฅํ•˜๋‹ค.
โ€ข
IP Segment์—์„œ ์•”ํ˜ธํ™”๋œ ์•…์„ฑ์ฝ”๋“œ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ, IP๊ณ„์ธต์—์„œ ์ด๋ฅผ ํ•„ํ„ฐ๋ง ๋ชปํ•ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค.
RAW์†Œ์ผ“์€ ์‚ฌ์šฉ์ž๋ฐ์ดํ„ฐ ์ทจ๊ธ‰์„ ๋ฐ›๊ธฐ ๋•Œ๋ฌธ์— ์—ฌ๋Ÿฌ ๊ณ„์ธต์œผ๋กœ ์ ‘๊ทผ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
๋˜ํ•œ ์ผ๋ฐ˜์ ์œผ๋กœ ์šด์˜์ฒด์ œ์˜ ํ”„๋กœํ† ์ฝœ ์Šคํƒ์—์„œย ํŒจํ‚ท์˜ ๋ชฉ์ ์ง€ IP์ฃผ์†Œ๊ฐ€ ์ž์‹ ์˜ IP์ฃผ์†Œ์ธ ํŒจํ‚ท์€ ๋ฐ›์•„๋“ค์ด๊ณ  ๋‹ค๋ฅธ IP์ฃผ์†Œ์˜ ํŒจํ‚ท์€ ๋ฒ„๋ฆฝ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ RAW ์†Œ์ผ“์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ์ผ๋ฐ˜์ ์ธ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜๋“ค์€ IP์ฃผ์†Œ๊ฐ€ ์ž์‹ ๊ณผ ๋‹ค๋ฅด๊ฑฐ๋‚˜ ์ž์‹ ์˜ ํฌํŠธ ์ฃผ์†Œ๊ฐ€ ์•„๋‹Œ ํŒจํ‚ท์€ ํ™•์ธ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜์ง€๋งŒ, RAW์†Œ์ผ“์„ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋ฉด IP์ฃผ์†Œ๋‚˜ ํฌํŠธ์ฃผ์†Œ๊ฐ€ ๋‹ค๋ฅด๋”๋ผ๋„ ๋ฌผ๋ฆฌ๊ณ„์ธต์ธ ์ธํ„ฐ๋„ท ๋””๋ฐ”์ด์Šค ๋“œ๋ผ์ด๋ฒ„์—์„œ ์˜ค๋Š” ๋ชจ๋“  ํŒจํ‚ท์„ ์ „๋ถ€ ๋ฐ›์•„ย  ํ™•์ธ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
RAW์†Œ์ผ“์„ ์‚ฌ์šฉํ•˜๋Š” ๋Œ€ํ‘œ์ ์ธ ์˜ˆ๋กœ๋Š” ํŒจํ‚ท๋“ค์„ ๊ฐ์ง€ํ•˜๋Š” WireShark(์™€์ด์–ด์ƒคํฌ)๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ํŒจํ‚ท์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๋Š” ๊ฒฝ์šฐ ๋ง๊ณ ,
๋˜ RAW ์†Œ์ผ“์„ ์ด์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋˜๋‹ค๋ฅธ ๋ถ„์•ผ๋Š” ํ”„๋กœํ† ์ฝœ ์Šคํƒ์„ ๊ตฌํ˜„ํ•˜๊ณ  ํ…Œ์ŠคํŠธํ•˜๋Š” ๊ฒฝ์šฐ์ธ๋ฐ, ์šด์˜์ฒด์ œ๋ฅผ ๋งŒ๋“ค ๋•Œ ์˜ค๋ฅ˜๊ฐ€ ๋‚˜๋ฉด ์† ์“ธ ์‚ฌ์ด๋„์—†์ด ์‹œ์Šคํ…œ์ด ๋ฉˆ์ถ”๊ฑฐ๋‚˜ ์žฌ๋ถ€ํŒ…๋˜๋ฉฐ, ํ…Œ์ŠคํŠธ ํ•  ๋•Œ ๋งˆ๋‹ค ์ƒˆ๋กœ ์˜ฌ๋ ค์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ RAW์†Œ์ผ“์„ ์‚ฌ์šฉํ•˜๋ฉด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ฐจ์›์—์„œ ํ”„๋กœํ† ์ฝœ ์Šคํƒ์„ ๊ตฌํ˜„ํ•˜๊ณ  ํ…Œ์ŠคํŠธ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋ฉฐ, ์†Œ์Šค์ฝ”๋“œ์— ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ด๋„ ์ตœ์†Œํ•œ ์‹œ์Šคํ…œ์ด ๋ฉŽ๊ฑฐ๋‚˜ ์žฌ๋ถ€ํŒ…์„ ํ•˜์ง€๋Š” ์•Š์•„๋„ ๋ฉ๋‹ˆ๋‹ค.

Raw ์†Œ์ผ“ vs ์ผ๋ฐ˜ ์†Œ์ผ“ ํ๋ฆ„

โ€ข
์ผ๋ฐ˜์ ์ธ ์†Œ์ผ“์˜ ํ๋ฆ„๋„
โ€ข
Raw ์†Œ์ผ“ ํ๋ฆ„๋„