๐Ÿ”Ž DNS ์™„์ „ ์ •๋ณต โ€” ๋„๋ฉ”์ธ์ด IP๋กœ ๋ฐ”๋€Œ๊ธฐ๊นŒ์ง€, ๊ทธ๋ฆฌ๊ณ  ๊ทธ ์‚ฌ์ด์˜ ๋ณด์•ˆ

@leekh8 ยท August 06, 2026 ยท 19 min read

๋„คํŠธ์›Œํฌ ๊ธฐ์ดˆ ์‹œ๋ฆฌ์ฆˆ

์•ž์„  ๋‘ ๊ธ€์—์„œ OSI ๊ณ„์ธต๊ณผ NAT๋ฅผ ๋‹ค๋ค˜๋‹ค. NAT ํŽธ ๋์—์„œ "๋‹ค์Œ์€ DNS"๋ผ๊ณ  ์˜ˆ๊ณ ํ–ˆ๋Š”๋ฐ, ๊ทธ ์ด์œ ๊ฐ€ ์žˆ๋‹ค.

๋ธŒ๋ผ์šฐ์ €์— google.com์„ ์ž…๋ ฅํ•˜์ง€๋งŒ, ์‹ค์ œ ํŒจํ‚ท์€ 142.250.196.110 ๊ฐ™์€ IP๋กœ ํ๋ฅธ๋‹ค. NAT๊ฐ€ IP๋ฅผ ๋ฐ”๊ฟ”์น˜๊ธฐํ•˜๋Š” ๊ธฐ์ˆ ์ด๋ผ๋ฉด, DNS๋Š” ๊ทธ IP๋ฅผ ์• ์ดˆ์— ์ฐพ์•„์˜ค๋Š” ๊ธฐ์ˆ ์ด๋‹ค. ์‚ฌ๋žŒ์€ ์ด๋ฆ„์„ ๊ธฐ์–ตํ•˜๊ณ  ๊ธฐ๊ณ„๋Š” ์ˆซ์ž๋กœ ํ†ต์‹ ํ•˜๋‹ˆ, ๊ทธ ์‚ฌ์ด๋ฅผ ์ด์–ด์ฃผ๋Š” ๋ฒˆ์—ญ๊ธฐ๊ฐ€ ํ•„์š”ํ•˜๋‹ค. ํ”ํžˆ DNS๋ฅผ "์ธํ„ฐ๋„ท์˜ ์ „ํ™”๋ฒˆํ˜ธ๋ถ€"๋ผ๊ณ  ๋ถ€๋ฅด๋Š” ์ด์œ ๋‹ค.

๊ทธ๋Ÿฐ๋ฐ ์ด ์ „ํ™”๋ฒˆํ˜ธ๋ถ€๋Š” ๋‹จ์ˆœํ•œ ์กฐํšŒํ‘œ๊ฐ€ ์•„๋‹ˆ๋‹ค. ์ „ ์„ธ๊ณ„์— ๋ถ„์‚ฐ๋œ ๊ณ„์ธต ๊ตฌ์กฐ๋กœ ๋ผ ์žˆ๊ณ , ์บ์‹ฑ๊ณผ TTL๋กœ ์„ฑ๋Šฅ์„ ๋งž์ถ”๋ฉฐ, ๋ฌด์—‡๋ณด๋‹ค ์„ค๊ณ„ ๋‹น์‹œ ๋ณด์•ˆ์„ ๊ฑฐ์˜ ๊ณ ๋ คํ•˜์ง€ ์•Š์•˜๋‹ค. ๊ทธ๋ž˜์„œ DNS๋Š” ์ง€๊ธˆ๋„ ๊ณต๊ฒฉ์ž๊ฐ€ ๊ฐ€์žฅ ์ฆ๊ฒจ ๋…ธ๋ฆฌ๋Š” ํ‘œ์ ์ด๋‹ค. ์ด ๊ธ€์€ DNS๊ฐ€ ์ด๋ฆ„์„ IP๋กœ ๋ฐ”๊พธ๋Š” ์ „ ๊ณผ์ •์„ ๋œฏ์–ด๋ณด๊ณ , ๊ทธ ๊ณผ์ •์˜ ์–ด๋””๊ฐ€ ์ทจ์•ฝํ•˜๋ฉฐ ์–ด๋–ป๊ฒŒ ๋ฐฉ์–ดํ•˜๋Š”์ง€๊นŒ์ง€ ์ •๋ฆฌํ•œ๋‹ค.


DNS๊ฐ€ ํ•„์š”ํ•œ ์ด์œ  โ€” ์‚ฌ๋žŒ์€ ์ด๋ฆ„, ๊ธฐ๊ณ„๋Š” ์ˆซ์ž

์ธํ„ฐ๋„ท ํ†ต์‹ ์€ ๊ฒฐ๊ตญ IP ์ฃผ์†Œ๋กœ ์ด๋ฃจ์–ด์ง„๋‹ค. ํ•˜์ง€๋งŒ ์‚ฌ๋žŒ์ด 142.250.196.110, 2404:6800:400a::200e ๊ฐ™์€ ์ˆซ์ž๋ฅผ ์™ธ์šฐ๊ณ  ์‚ด ์ˆ˜๋Š” ์—†๋‹ค.

์ดˆ์ฐฝ๊ธฐ ์ธํ„ฐ๋„ท(1970~80๋…„๋Œ€)์—๋Š” ์‹ค์ œ๋กœ HOSTS.TXT๋ผ๋Š” ํŒŒ์ผ ํ•˜๋‚˜์— ๋ชจ๋“  ํ˜ธ์ŠคํŠธ ์ด๋ฆ„๊ณผ IP๋ฅผ ์ ์–ด๋‘๊ณ , ๊ฐ ์ปดํ“จํ„ฐ๊ฐ€ ์ด ํŒŒ์ผ์„ ๋‚ด๋ ค๋ฐ›์•„ ์ผ๋‹ค. ์ง€๊ธˆ ๋ฆฌ๋ˆ…์Šค์˜ /etc/hosts๊ฐ€ ๊ทธ ์ž”์žฌ๋‹ค.

๋ฌธ์ œ๋Š” ํ˜ธ์ŠคํŠธ ์ˆ˜๊ฐ€ ์ˆ˜๋ฐฑ ๊ฐœ๋ฅผ ๋„˜์–ด๊ฐ€๋ฉด์„œ ๋“œ๋Ÿฌ๋‚ฌ๋‹ค. ํŒŒ์ผ ํ•˜๋‚˜๋ฅผ ์ค‘์•™์—์„œ ๊ด€๋ฆฌํ•˜๊ณ  ์ „ ์„ธ๊ณ„๊ฐ€ ๋‚ด๋ ค๋ฐ›๋Š” ๋ฐฉ์‹์€ ํ™•์žฅ์ด ๋ถˆ๊ฐ€๋Šฅํ–ˆ๋‹ค. ์ด๋ฆ„์ด ํ•˜๋‚˜ ๋ฐ”๋€” ๋•Œ๋งˆ๋‹ค ๋ชจ๋‘๊ฐ€ ํŒŒ์ผ์„ ๋‹ค์‹œ ๋ฐ›์•„์•ผ ํ–ˆ๋‹ค.

๊ทธ๋ž˜์„œ 1983๋…„, ๋ถ„์‚ฐยท๊ณ„์ธตํ˜• ์ด๋ฆ„ ์‹œ์Šคํ…œ์ธ DNS(Domain Name System)๊ฐ€ ์ œ์•ˆ๋๋‹ค1. ํ•ต์‹ฌ ์•„์ด๋””์–ด๋Š” ๋‘ ๊ฐ€์ง€๋‹ค.

  • ๊ณ„์ธต์œผ๋กœ ๋‚˜๋ˆˆ๋‹ค: ์ด๋ฆ„ ๊ณต๊ฐ„์„ ํŠธ๋ฆฌ๋กœ ์ชผ๊ฐœ์„œ ๊ฐ ์กฐ์ง์ด ์ž๊ธฐ ๊ตฌ์—ญ๋งŒ ๊ด€๋ฆฌํ•œ๋‹ค.
  • ๋ถ„์‚ฐํ•˜๊ณ  ์บ์‹ฑํ•œ๋‹ค: ํ•œ ๋Œ€์˜ ์„œ๋ฒ„๊ฐ€ ๋ชจ๋“  ๊ฑธ ์•„๋Š” ๊ฒŒ ์•„๋‹ˆ๋ผ, ์งˆ๋ฌธ์„ ๋„˜๊ฒจ๊ฐ€๋ฉฐ ๋‹ต์„ ์ฐพ๊ณ  ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ์žฌํ™œ์šฉํ•œ๋‹ค.

์ด ๋‘ ์•„์ด๋””์–ด๊ฐ€ DNS ๋™์ž‘ ์ „์ฒด๋ฅผ ๊ด€ํ†ตํ•œ๋‹ค.


DNS ๊ณ„์ธต ๊ตฌ์กฐ โ€” ๋ฃจํŠธ๋ถ€ํ„ฐ authoritative๊นŒ์ง€

DNS ์ด๋ฆ„ ๊ณต๊ฐ„์€ ๊ฑฐ๊พธ๋กœ ๋œ ํŠธ๋ฆฌ๋‹ค. ๋งจ ์œ„์— **๋ฃจํŠธ(root)**๊ฐ€ ์žˆ๊ณ , ๊ทธ ์•„๋ž˜๋กœ TLD(Top-Level Domain), ๊ทธ ์•„๋ž˜๋กœ ๊ฐ ๋„๋ฉ”์ธ์ด ๊ฐ€์ง€์ฒ˜๋Ÿผ ๋ป—๋Š”๋‹ค.

www.example.com์„ ์˜ค๋ฅธ์ชฝ๋ถ€ํ„ฐ ์ฝ์œผ๋ฉด ๊ณ„์ธต์ด ๋ณด์ธ๋‹ค.

๋ฃจํŠธ (.)

13๊ฐœ ๋ฃจํŠธ ์„œ๋ฒ„ (a~m), Anycast
TLD: .com

๋ ˆ์ง€์ŠคํŠธ๋ฆฌ๊ฐ€ ๊ด€๋ฆฌ
TLD: .net
TLD: .kr
example.com

Authoritative ์„œ๋ฒ„

(์‹ค์ œ ๋ ˆ์ฝ”๋“œ ๋ณด์œ )
www.example.com

A ๋ ˆ์ฝ”๋“œ โ†’ 93.184.216.34

๊ฐ ๊ณ„์ธต์˜ ์—ญํ• ์„ ์ •๋ฆฌํ•˜๋ฉด ์ด๋ ‡๋‹ค.

๊ณ„์ธต ์—ญํ•  ์•„๋Š” ๊ฒƒ
๋ฃจํŠธ ์„œ๋ฒ„ ํŠธ๋ฆฌ์˜ ์ตœ์ƒ๋‹จ. .com, .kr ๋“ฑ TLD๊ฐ€ ์–ด๋”” ์žˆ๋Š”์ง€ ์•ˆ๋‚ด "TLD ์„œ๋ฒ„ ์ฃผ์†Œ"
TLD ์„œ๋ฒ„ ํŠน์ • ์ตœ์ƒ์œ„ ๋„๋ฉ”์ธ ๊ด€๋ฆฌ(.com ๋“ฑ) "์ด ๋„๋ฉ”์ธ์˜ authoritative ์„œ๋ฒ„ ์ฃผ์†Œ"
Authoritative ์„œ๋ฒ„ ์‹ค์ œ ๋ ˆ์ฝ”๋“œ์˜ ์ตœ์ข… ์ถœ์ฒ˜ "www.example.com = 93.184.216.34" (์ง„์งœ ๋‹ต)
Recursive ๋ฆฌ์กธ๋ฒ„ ์œ„ ์…‹์„ ๋Œ€์‹  ๋ฌผ์–ด๋ด ์ฃผ๋Š” ๋Œ€๋ฆฌ์ธ (ํ†ต์‹ ์‚ฌยท๊ณต๊ฐœ DNS) ๋‹ต์„ ์ฐพ์•„์™€ ์บ์‹ฑํ•ด๋‘๊ณ  ์žฌํ™œ์šฉ

์—ฌ๊ธฐ์„œ ํ—ท๊ฐˆ๋ฆฌ๊ธฐ ์‰ฌ์šด ๊ฒŒ **๋ฃจํŠธ ์„œ๋ฒ„ "13๊ฐœ"**๋‹ค. ๋ฌผ๋ฆฌ ์„œ๋ฒ„๊ฐ€ ๋”ฑ 13๋Œ€๋ผ๋Š” ๋œป์ด ์•„๋‹ˆ๋‹ค. a๋ถ€ํ„ฐ m๊นŒ์ง€ 13๊ฐœ์˜ ๋…ผ๋ฆฌ์  ์ด๋ฆ„์ด ์žˆ๊ณ , ๊ฐ ์ด๋ฆ„์€ Anycast ๊ธฐ์ˆ ๋กœ ์ „ ์„ธ๊ณ„ ์ˆ˜๋ฐฑ~์ˆ˜์ฒœ ๋Œ€์˜ ๋ฌผ๋ฆฌ ์„œ๋ฒ„์— ๋ณต์ œ๋ผ ์žˆ๋‹ค. ๊ทธ๋ž˜์„œ ์‚ฌ์šฉ์ž๋Š” ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๋ฃจํŠธ ์„œ๋ฒ„๋กœ ์ž๋™ ๋ผ์šฐํŒ…๋œ๋‹ค. 13์ด๋ผ๋Š” ์ˆซ์ž ์ž์ฒด๋Š” ์ดˆ๊ธฐ DNS ์‘๋‹ต์ด UDP 512๋ฐ”์ดํŠธ ์•ˆ์— ๋“ค์–ด๊ฐ€์•ผ ํ–ˆ๋˜ ์ œ์•ฝ์—์„œ ๋น„๋กฏ๋๋‹ค.


์ด๋ฆ„ ํ•˜๋‚˜๊ฐ€ IP๊ฐ€ ๋˜๊ธฐ๊นŒ์ง€ โ€” ์žฌ๊ท€ ์งˆ์˜ ์ „ ๊ณผ์ •

์ด์ œ ์‹ค์ œ๋กœ www.example.com์„ ์กฐํšŒํ•˜๋Š” ๊ณผ์ •์„ ๋”ฐ๋ผ๊ฐ€ ๋ณด์ž. ์—ฌ๊ธฐ์„œ ๋‘ ์ข…๋ฅ˜์˜ ์งˆ์˜๋ฅผ ๊ตฌ๋ถ„ํ•ด์•ผ ํ•œ๋‹ค.

  • ์žฌ๊ท€ ์งˆ์˜(Recursive query): "๋‹ต์„ ๋๊นŒ์ง€ ์ฐพ์•„์„œ ์ค˜." โ€” ํด๋ผ์ด์–ธํŠธ(์Šคํ… ๋ฆฌ์กธ๋ฒ„)๊ฐ€ recursive ๋ฆฌ์กธ๋ฒ„์—๊ฒŒ ๋˜์ง€๋Š” ๋ฐฉ์‹.
  • ๋ฐ˜๋ณต ์งˆ์˜(Iterative query): "๋„ค๊ฐ€ ์•„๋Š” ๋ฐ๊นŒ์ง€๋งŒ ์•Œ๋ ค์ค˜, ๋‚˜๋จธ์ง€๋Š” ๋‚ด๊ฐ€ ๋‹ค์‹œ ๋ฌผ์„๊ฒŒ." โ€” recursive ๋ฆฌ์กธ๋ฒ„๊ฐ€ ๋ฃจํŠธยทTLDยทauthoritative๋ฅผ ์ฐจ๋ก€๋กœ ํ›‘๋Š” ๋ฐฉ์‹.

์ฆ‰ ํด๋ผ์ด์–ธํŠธ๋Š” ํ•œ ๋ฒˆ๋งŒ ๋ฌป๊ณ , ๋ฌด๊ฑฐ์šด ์ผ์€ recursive ๋ฆฌ์กธ๋ฒ„๊ฐ€ ๋ฐ˜๋ณต ์งˆ์˜๋กœ ๋Œ€์‹  ์ฒ˜๋ฆฌํ•œ๋‹ค.

example.comAuthoritative.com TLD ์„œ๋ฒ„๋ฃจํŠธ ์„œ๋ฒ„Recursive ๋ฆฌ์กธ๋ฒ„(์˜ˆ: 8.8.8.8)ํด๋ผ์ด์–ธํŠธ(์Šคํ… ๋ฆฌ์กธ๋ฒ„)example.comAuthoritative.com TLD ์„œ๋ฒ„๋ฃจํŠธ ์„œ๋ฒ„Recursive ๋ฆฌ์กธ๋ฒ„(์˜ˆ: 8.8.8.8)ํด๋ผ์ด์–ธํŠธ(์Šคํ… ๋ฆฌ์กธ๋ฒ„)์บ์‹œ์— ์—†์Œ โ†’ ๋ฐ˜๋ณต ์งˆ์˜ ์‹œ์ž‘๊ฒฐ๊ณผ๋ฅผ TTL ๋™์•ˆ ์บ์‹ฑwww.example.com A ๋ ˆ์ฝ”๋“œ? (์žฌ๊ท€ ์งˆ์˜)www.example.com?๋ชฐ๋ผ. .com์€ TLD ์„œ๋ฒ„๋กœ ๊ฐ€๋ดwww.example.com?๋ชฐ๋ผ. example.com์€ ์ด authoritative๋กœwww.example.com?93.184.216.34 (๊ถŒํ•œ ์žˆ๋Š” ๋‹ต)93.184.216.34

์ •๋ฆฌํ•˜๋ฉด ์ด๋ ‡๋‹ค.

  1. ํด๋ผ์ด์–ธํŠธ๊ฐ€ recursive ๋ฆฌ์กธ๋ฒ„์—๊ฒŒ www.example.com์„ ๋ฌป๋Š”๋‹ค(์žฌ๊ท€ ์งˆ์˜).
  2. ๋ฆฌ์กธ๋ฒ„ ์บ์‹œ์— ์—†์œผ๋ฉด, ๋ฃจํŠธ ์„œ๋ฒ„์—๊ฒŒ ๋ฌป๋Š”๋‹ค. ๋ฃจํŠธ๋Š” ".com์€ ์ € TLD ์„œ๋ฒ„๋กœ ๊ฐ€๋ผ"๊ณ  **์œ„์ž„(referral)**ํ•œ๋‹ค.
  3. ๋ฆฌ์กธ๋ฒ„๊ฐ€ .com TLD ์„œ๋ฒ„์—๊ฒŒ ๋ฌป๋Š”๋‹ค. TLD๋Š” "example.com์˜ authoritative ์„œ๋ฒ„๋Š” ์—ฌ๊ธฐ"๋ผ๊ณ  ๋‹ค์‹œ ์œ„์ž„ํ•œ๋‹ค.
  4. ๋ฆฌ์กธ๋ฒ„๊ฐ€ authoritative ์„œ๋ฒ„์—๊ฒŒ ๋ฌป๊ณ , ๋“œ๋””์–ด **๊ถŒํ•œ ์žˆ๋Š” ๋‹ต(93.184.216.34)**์„ ๋ฐ›๋Š”๋‹ค.
  5. ๋ฆฌ์กธ๋ฒ„๋Š” ์ด ๋‹ต์„ TTL ๋™์•ˆ ์บ์‹ฑํ•ด๋‘๊ณ , ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์ตœ์ข… ๋‹ต์„ ๋Œ๋ ค์ค€๋‹ค.

ํ•œ ๋ฒˆ์˜ ๋„๋ฉ”์ธ ์กฐํšŒ์— ์ตœ์†Œ 3~4๋ฒˆ์˜ ์™•๋ณต์ด ์ผ์–ด๋‚œ๋‹ค. ๊ทธ๋ž˜์„œ ์บ์‹ฑ์ด ์—†์œผ๋ฉด ์›น์€ ๊ฒฌ๋”œ ์ˆ˜ ์—†์ด ๋А๋ ค์ง„๋‹ค. ์‹ค์ œ๋กœ๋Š” ๋ฆฌ์กธ๋ฒ„๊ฐ€ .com TLD ์œ„์น˜ ์ •๋„๋Š” ์ด๋ฏธ ์บ์‹ฑํ•˜๊ณ  ์žˆ์–ด์„œ, ๋Œ€๋ถ€๋ถ„์˜ ์กฐํšŒ๋Š” authoritative ํ•œ ๋ฒˆ์œผ๋กœ ๋๋‚œ๋‹ค.


DNS ๋ ˆ์ฝ”๋“œ ํƒ€์ž… โ€” A ํ•˜๋‚˜๊ฐ€ ์ „๋ถ€๊ฐ€ ์•„๋‹ˆ๋‹ค

DNS๋Š” "์ด๋ฆ„ โ†’ IP"๋งŒ ๋‹ด๋‹นํ•˜์ง€ ์•Š๋Š”๋‹ค. ์ด๋ฆ„์— ์—ฌ๋Ÿฌ ์ข…๋ฅ˜์˜ ์ •๋ณด๋ฅผ ๋งคํ•‘ํ•  ์ˆ˜ ์žˆ๊ณ , ๊ทธ๊ฒŒ ๋ ˆ์ฝ”๋“œ ํƒ€์ž…์ด๋‹ค. ์‹ค๋ฌด์—์„œ ์ž์ฃผ ๋งŒ๋‚˜๋Š” ๊ฒƒ์„ ์ •๋ฆฌํ–ˆ๋‹ค.

ํƒ€์ž… ๋งคํ•‘ํ•˜๋Š” ๊ฒƒ ์˜ˆ์‹œ / ์šฉ๋„
A ์ด๋ฆ„ โ†’ IPv4 ์ฃผ์†Œ example.com โ†’ 93.184.216.34
AAAA ์ด๋ฆ„ โ†’ IPv6 ์ฃผ์†Œ example.com โ†’ 2606:2800:220:1::...
CNAME ์ด๋ฆ„ โ†’ ๋‹ค๋ฅธ ์ด๋ฆ„(๋ณ„์นญ) www โ†’ example.com (๋ณ„์นญ, ์ตœ์ข…์ ์œผ๋กœ A๋กœ ํ•ด์„)
MX ๋„๋ฉ”์ธ โ†’ ๋ฉ”์ผ ์„œ๋ฒ„ ์šฐ์„ ์ˆœ์œ„ ๊ฐ’๊ณผ ํ•จ๊ป˜ ๋ฉ”์ผ ๋ผ์šฐํŒ…
NS ๋„๋ฉ”์ธ โ†’ authoritative ์„œ๋ฒ„ ์œ„์ž„ ์ •๋ณด
TXT ์ด๋ฆ„ โ†’ ์ž„์˜ ํ…์ŠคํŠธ SPFยทDKIMยท๋„๋ฉ”์ธ ์†Œ์œ  ์ฆ๋ช… โ€” ๋ณด์•ˆ์—์„œ ์ค‘์š”
PTR IP โ†’ ์ด๋ฆ„ (์—ญ๋ฐฉํ–ฅ) ์—ญ๋ฐฉํ–ฅ ์กฐํšŒ, ๋ฉ”์ผ ์„œ๋ฒ„ ์‹ ๋ขฐ๋„ ๊ฒ€์ฆ
SOA ์กด์˜ ๊ด€๋ฆฌ ์ •๋ณด ์‹œ๋ฆฌ์–ผ ๋ฒˆํ˜ธ, TTL ๊ธฐ๋ณธ๊ฐ’, ๊ด€๋ฆฌ์ž
SRV ์„œ๋น„์Šค ์œ„์น˜ ํŠน์ • ์„œ๋น„์Šค์˜ ํ˜ธ์ŠคํŠธยทํฌํŠธ (์˜ˆ: SIP, LDAP)
CAA ์ธ์ฆ์„œ ๋ฐœ๊ธ‰ ํ—ˆ์šฉ CA ์ง€์ • ์ง€์ •ํ•œ CA๋งŒ ์ด ๋„๋ฉ”์ธ ์ธ์ฆ์„œ ๋ฐœ๊ธ‰ ๊ฐ€๋Šฅ

๋ณด์•ˆ ๊ด€์ ์—์„œ ํŠนํžˆ ๋ˆˆ์—ฌ๊ฒจ๋ณผ ๊ฒƒ์€ TXT์™€ CAA๋‹ค.

  • TXT๋Š” ์›๋ž˜ ์ž์œ  ํ…์ŠคํŠธ์šฉ์ด์ง€๋งŒ, ์‹ค๋ฌด์—์„œ๋Š” ์ด๋ฉ”์ผ ์ธ์ฆ(SPF/DKIM/DMARC), ๋„๋ฉ”์ธ ์†Œ์œ ๊ถŒ ์ฆ๋ช…, ACME ์ฑŒ๋ฆฐ์ง€ ๋“ฑ์— ์“ฐ์ธ๋‹ค. ๋’ค์—์„œ ๋ณผ DNS ํ„ฐ๋„๋ง์ด ์•…์šฉํ•˜๋Š” ๋Œ€์ƒ์ด๊ธฐ๋„ ํ•˜๋‹ค.
  • CAA๋Š” "์ด ๋„๋ฉ”์ธ์˜ ์ธ์ฆ์„œ๋Š” ์ง€์ •ํ•œ CA๋งŒ ๋ฐœ๊ธ‰ํ•  ์ˆ˜ ์žˆ๋‹ค"๊ณ  ๋ชป ๋ฐ•๋Š” ๋ ˆ์ฝ”๋“œ๋‹ค. ์ž˜๋ชป๋œ CA๊ฐ€ ์ž„์˜๋กœ ์ธ์ฆ์„œ๋ฅผ ๋ฐœ๊ธ‰ํ•˜๋Š” ๊ฒƒ์„ ๋ง‰๋Š” ๋ฐฉ์–ด์„ ์ด๋‹ค.

์บ์‹ฑ๊ณผ TTL โ€” ์™œ ๋„๋ฉ”์ธ ๋ณ€๊ฒฝ์ด ๋ฐ”๋กœ ๋ฐ˜์˜ ์•ˆ ๋˜๋‚˜

"DNS ๋ฐ”๊ฟจ๋Š”๋ฐ ์™œ ์•„์ง๋„ ์˜›๋‚  ์„œ๋ฒ„๋กœ ๊ฐ€์š”?" โ€” ์‹ค๋ฌด์—์„œ ์ž์ฃผ ๋‚˜์˜ค๋Š” ์งˆ๋ฌธ์ด๋‹ค. ๋‹ต์€ ์บ์‹ฑ๊ณผ TTL์— ์žˆ๋‹ค.

๋ชจ๋“  DNS ๋ ˆ์ฝ”๋“œ์—๋Š” **TTL(Time To Live)**์ด ๋ถ™๋Š”๋‹ค. "์ด ๋‹ต์„ ๋ช‡ ์ดˆ ๋™์•ˆ ์บ์‹ฑํ•ด๋„ ์ข‹๋‹ค"๋Š” ์œ ํšจ๊ธฐ๊ฐ„์ด๋‹ค.

example.com.   300   IN   A   93.184.216.34
               ^^^
               TTL = 300์ดˆ (5๋ถ„)

TTL์ด 300์ด๋ฉด, recursive ๋ฆฌ์กธ๋ฒ„๋Š” ์ด ๋‹ต์„ 5๋ถ„๊ฐ„ ์บ์‹ฑํ•˜๊ณ  ๊ทธ๋™์•ˆ authoritative์— ๋‹ค์‹œ ๋ฌป์ง€ ์•Š๋Š”๋‹ค. ๊ทธ๋ž˜์„œ ๋ ˆ์ฝ”๋“œ๋ฅผ ๋ฐ”๊ฟ”๋„ ์ „ ์„ธ๊ณ„ ์บ์‹œ๊ฐ€ ๋งŒ๋ฃŒ๋  ๋•Œ๊นŒ์ง€ ์˜› ๊ฐ’์ด ๋‚จ์•„ ์žˆ๋‹ค.

์ด๊ฒŒ ์‹ค๋ฌด์—์„œ ๊ฐ–๋Š” ์˜๋ฏธ:

  • ์„œ๋ฒ„ ์ด์ „ยทIP ๋ณ€๊ฒฝ ์ „์—๋Š” TTL์„ ๋ฏธ๋ฆฌ ๋‚ฎ์ถ˜๋‹ค. ํ‰์†Œ 3600(1์‹œ๊ฐ„)์ด๋˜ ๊ฑธ ๋ณ€๊ฒฝ ๋ฉฐ์น  ์ „์— 60~300์œผ๋กœ ์ค„์—ฌ๋‘๋ฉด, ์ „ํ™˜ ์‹œ ๋ฐ˜์˜์ด ๋นจ๋ผ์ง„๋‹ค. ์ „ํ™˜์ด ๋๋‚˜๋ฉด ๋‹ค์‹œ ์˜ฌ๋ฆฐ๋‹ค.
  • TTL์ด ๋„ˆ๋ฌด ์งง์œผ๋ฉด authoritative ์„œ๋ฒ„ ๋ถ€ํ•˜์™€ ์กฐํšŒ ์ง€์—ฐ์ด ๋Š˜๊ณ , ๋„ˆ๋ฌด ๊ธธ๋ฉด ์žฅ์•  ์‹œ ์šฐํšŒ(ํŽ˜์ผ์˜ค๋ฒ„)๊ฐ€ ๋А๋ ค์ง„๋‹ค. ํŠธ๋ ˆ์ด๋“œ์˜คํ”„๋‹ค.
  • ์บ์‹ฑ์€ ๋ฆฌ์กธ๋ฒ„๋ฟ ์•„๋‹ˆ๋ผ OSยท๋ธŒ๋ผ์šฐ์ €์—๋„ ์žˆ๋‹ค. ipconfig /flushdns(Windows), sudo systemd-resolve --flush-caches ๋˜๋Š” sudo resolvectl flush-caches(๋ฆฌ๋ˆ…์Šค)๋กœ ๋กœ์ปฌ ์บ์‹œ๋ฅผ ๋น„์šธ ์ˆ˜ ์žˆ๋‹ค.

โš ๏ธ ์ฃผ์˜: "DNS๊ฐ€ ๋ฐ˜์˜ ์•ˆ ๋œ๋‹ค"๋Š” ์‹ ๊ณ ์˜ ์ƒ๋‹น์ˆ˜๋Š” ์„œ๋ฒ„ ์„ค์ •์ด ์•„๋‹ˆ๋ผ ์–ด๋”˜๊ฐ€์˜ ์บ์‹œ๊ฐ€ ์•„์ง ์‚ด์•„ ์žˆ์–ด์„œ๋‹ค. ๋ฌธ์ œ๋ฅผ ์ง„๋‹จํ•  ๋•Œ๋Š” authoritative ์„œ๋ฒ„์— ์ง์ ‘ ๋ฌผ์–ด(dig @authoritative-ns) ์ง„์งœ ๊ฐ’๊ณผ ์บ์‹œ๋œ ๊ฐ’์„ ๊ตฌ๋ถ„ํ•˜๋Š” ๊ฒŒ ์ฒซ๊ฑธ์Œ์ด๋‹ค.


DNS๋Š” ์™œ UDP 53์„ ์“ฐ๋‚˜ โ€” ๊ทธ๋ฆฌ๊ณ  ์–ธ์ œ TCP๋กœ ๋„˜์–ด๊ฐ€๋‚˜

DNS๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ UDP 53๋ฒˆ ํฌํŠธ๋ฅผ ์“ด๋‹ค. ์ด์œ ๋Š” ๋ช…ํ™•ํ•˜๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ ์กฐํšŒ๋Š” ์งˆ์˜ยท์‘๋‹ต ํ•œ ์Œ์œผ๋กœ ๋๋‚˜๋Š” ์ž‘๊ณ  ๋น ๋ฅธ ํŠธ๋žœ์žญ์…˜์ด๋ผ, TCP์˜ 3-way handshake ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ์•„๊น๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์—ฐ๊ฒฐ ์ˆ˜๋ฆฝ ์—†์ด ๋ฐ”๋กœ ์˜๋Š” UDP๊ฐ€ ํ›จ์”ฌ ํšจ์œจ์ ์ด๋‹ค.

ํ•˜์ง€๋งŒ UDP DNS์—๋Š” ์—ญ์‚ฌ์  ์ œ์•ฝ์ด ์žˆ์—ˆ๋‹ค. ์›๋ž˜ ๊ทœ๊ฒฉ(RFC 1035)์€ UDP ์‘๋‹ต์„ 512๋ฐ”์ดํŠธ๋กœ ์ œํ•œํ–ˆ๋‹ค2. ์‘๋‹ต์ด ์ด๋ณด๋‹ค ํฌ๋ฉด ์–ด๋–ป๊ฒŒ ๋ ๊นŒ?

  1. ์„œ๋ฒ„๊ฐ€ ์‘๋‹ต ํ—ค๋”์— TC(Truncated) ๋น„ํŠธ๋ฅผ ์„ธ์›Œ "์ž˜๋ ธ์–ด"๋ผ๊ณ  ํ‘œ์‹œํ•œ๋‹ค.
  2. ํด๋ผ์ด์–ธํŠธ๋Š” ์ด๋ฅผ ๋ณด๊ณ  ๊ฐ™์€ ์งˆ์˜๋ฅผ TCP 53์œผ๋กœ ์žฌ์‹œ๋„ํ•œ๋‹ค. TCP๋Š” ํฌ๊ธฐ ์ œํ•œ์ด ์‚ฌ์‹ค์ƒ ์—†๋‹ค.

์ฆ‰ UDP โ†’ (์ž˜๋ฆผ) โ†’ TCP ํด๋ฐฑ์ด ํ‘œ์ค€ ๋™์ž‘์ด๋‹ค. ๊ทธ๋ž˜์„œ "DNS๋Š” UDP๋งŒ ์“ด๋‹ค"๋Š” ํ”ํ•œ ์˜คํ•ด๋‹ค. ๋ฐฉํ™”๋ฒฝ์—์„œ TCP 53์„ ๋ง‰์•„๋ฒ„๋ฆฌ๋ฉด ํฐ ์‘๋‹ต(DNSSEC ์„œ๋ช…์ด ๋ถ™์€ ์‘๋‹ต ๋“ฑ)์ด ์‹คํŒจํ•œ๋‹ค.

์—ฌ๊ธฐ์— ๋”ํ•ด EDNS0(RFC 6891)๋ผ๋Š” ํ™•์žฅ์ด ์žˆ๋‹ค3. ์งˆ์˜์— OPT๋ผ๋Š” ๊ฐ€์งœ ๋ ˆ์ฝ”๋“œ๋ฅผ ์‹ค์–ด "๋‚˜๋Š” UDP๋กœ 512๋ฐ”์ดํŠธ๋ณด๋‹ค ํฐ ์‘๋‹ต๋„ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค(์˜ˆ: 1232๋ฐ”์ดํŠธ)"๊ณ  ๊ด‘๊ณ ํ•œ๋‹ค. ๋•๋ถ„์— ํฐ ์‘๋‹ต๋„ TCP๋กœ ์•ˆ ๋„˜์–ด๊ฐ€๊ณ  UDP๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค. DNSSEC์ด ๋„๋ฆฌ ์“ฐ์ด๋ฉด์„œ EDNS0๋Š” ์‚ฌ์‹ค์ƒ ํ•„์ˆ˜๊ฐ€ ๋๋‹ค.

์ •๋ฆฌํ•˜๋ฉด DNS์˜ ์ „์†ก ๊ณ„์ธต์€ ์ด๋ ‡๊ฒŒ ๋‚˜๋‰œ๋‹ค.

์ƒํ™ฉ ์ „์†ก ๋น„๊ณ 
์ผ๋ฐ˜ ์กฐํšŒ (์ž‘์€ ์‘๋‹ต) UDP 53 ๊ธฐ๋ณธ, ๋น ๋ฆ„
์‘๋‹ต์ด 512๋ฐ”์ดํŠธ ์ดˆ๊ณผ (EDNS0 ๋ฏธ์‚ฌ์šฉ) UDP โ†’ TC ๋น„ํŠธ โ†’ TCP 53 ์žฌ์‹œ๋„ ํด๋ฐฑ
EDNS0๋กœ ํฐ UDP ํŽ˜์ด๋กœ๋“œ ํ˜‘์ƒ UDP 53 (ํ™•์žฅ) TCP ํด๋ฐฑ ํšŒํ”ผ
์กด ์ „์†ก(AXFR/IXFR) ํ•ญ์ƒ TCP 53 ์กด ์ „์ฒด ๋ณต์ œ๋Š” ์‹ ๋ขฐ์„ฑ ํ•„์š”

๋งˆ์ง€๋ง‰ ์ค„์˜ **์กด ์ „์†ก(Zone Transfer)**์€ ๋ณด์•ˆ์—์„œ ์ค‘์š”ํ•˜๋‹ค. authoritative ์„œ๋ฒ„๋ผ๋ฆฌ ์กด ๋ฐ์ดํ„ฐ ์ „์ฒด๋ฅผ ๋ณต์ œํ•˜๋Š” ์ž‘์—…์ธ๋ฐ, ์•„๋ฌด์—๊ฒŒ๋‚˜ ํ—ˆ์šฉํ•˜๋ฉด ๊ณต๊ฒฉ์ž๊ฐ€ ๋„๋ฉ”์ธ์˜ ์ „์ฒด ๋ ˆ์ฝ”๋“œ ๋ชฉ๋ก์„ ํ†ต์งธ๋กœ ๊ธ์–ด๊ฐˆ ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋ž˜์„œ ์กด ์ „์†ก์€ ๋ฐ˜๋“œ์‹œ ํŠน์ • secondary ์„œ๋ฒ„๋กœ๋งŒ ์ œํ•œํ•ด์•ผ ํ•œ๋‹ค(๋’ค์—์„œ ๋‹ค์‹œ ๋‹ค๋ฃฌ๋‹ค).


๋ช…๋ น์–ด๋กœ ์ง์ ‘ ๋œฏ์–ด๋ณด๊ธฐ โ€” dig / nslookup

์ด๋ก ์„ ๋ˆˆ์œผ๋กœ ํ™•์ธํ•˜๋Š” ๊ฐ€์žฅ ์ข‹์€ ๋„๊ตฌ๊ฐ€ dig๋‹ค. ๋ฆฌ๋ˆ…์Šคยท๋งฅ์— ๊ธฐ๋ณธ ํƒ‘์žฌ๋ผ ์žˆ๊ณ , Windows์—์„œ๋„ BIND ์œ ํ‹ธ์„ ์„ค์น˜ํ•˜๋ฉด ์“ธ ์ˆ˜ ์žˆ๋‹ค(์—†์œผ๋ฉด nslookup).

# ๊ธฐ๋ณธ A ๋ ˆ์ฝ”๋“œ ์กฐํšŒ
dig example.com

# ํŠน์ • ๋ ˆ์ฝ”๋“œ ํƒ€์ž… ์ง€์ •
dig example.com MX
dig example.com TXT
dig example.com AAAA

# ํŠน์ • DNS ์„œ๋ฒ„์—๊ฒŒ ์ง์ ‘ ๋ฌป๊ธฐ (์บ์‹œ ์šฐํšŒ, ์ง„์งœ ๊ฐ’ ํ™•์ธ)
dig @8.8.8.8 example.com
dig @1.1.1.1 example.com

# authoritative ์„œ๋ฒ„์—๊ฒŒ ์ง์ ‘ ๋ฌผ์–ด ์บ์‹œ๋œ ๊ฐ’๊ณผ ๋น„๊ต
dig @<authoritative-ns> example.com

# ๋‹ต๋งŒ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ๋ณด๊ธฐ
dig +short example.com

# ์—ญ๋ฐฉํ–ฅ ์กฐํšŒ (IP โ†’ ์ด๋ฆ„)
dig -x 93.184.216.34

๊ฐ€์žฅ ๊ต์œก์ ์ธ ๊ฑด +trace ์˜ต์…˜์ด๋‹ค. recursive ๋ฆฌ์กธ๋ฒ„์— ๋งก๊ธฐ์ง€ ์•Š๊ณ , ๋ฃจํŠธ โ†’ TLD โ†’ authoritative๋ฅผ ์ง์ ‘ ํ•œ ๋‹จ๊ณ„์”ฉ ๋ฐŸ์•„๊ฐ€๋ฉฐ ์œ„์ž„ ๊ณผ์ •์„ ๊ทธ๋Œ€๋กœ ๋ณด์—ฌ์ค€๋‹ค.

dig +trace example.com

์ถœ๋ ฅ์„ ๋ณด๋ฉด ๋ฃจํŠธ ์„œ๋ฒ„๊ฐ€ .com NS๋ฅผ ์•Œ๋ ค์ฃผ๊ณ , .com์ด example.com์˜ NS๋ฅผ ์•Œ๋ ค์ฃผ๊ณ , ๋งˆ์ง€๋ง‰์— authoritative๊ฐ€ A ๋ ˆ์ฝ”๋“œ๋ฅผ ์ฃผ๋Š” ํ๋ฆ„์ด ์ˆœ์„œ๋Œ€๋กœ ์ฐํžŒ๋‹ค. ์œ„์—์„œ ์„ค๋ช…ํ•œ ๋ฐ˜๋ณต ์งˆ์˜๋ฅผ ๋ˆˆ์œผ๋กœ ๋ณด๋Š” ์…ˆ์ด๋‹ค.

dig ์‘๋‹ต์—์„œ ๋ˆˆ์—ฌ๊ฒจ๋ณผ ์„น์…˜:

;; ANSWER SECTION:
example.com.   300   IN   A   93.184.216.34
   ^๋„๋ฉ”์ธ       ^TTL      ^ํƒ€์ž… ^๊ฐ’

;; flags: qr rd ra;   โ† qr=์‘๋‹ต, rd=์žฌ๊ท€์š”์ฒญ, ra=์žฌ๊ท€๊ฐ€๋Šฅ
;; Query time: 24 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)   โ† ์–ด๋А ๋ฆฌ์กธ๋ฒ„๊ฐ€ ๋‹ตํ–ˆ๋‚˜

flags์—์„œ aa(authoritative answer)๊ฐ€ ๋ณด์ด๋ฉด authoritative ์„œ๋ฒ„๊ฐ€ ์ง์ ‘ ์ค€ ๊ถŒํ•œ ์žˆ๋Š” ๋‹ต์ด๊ณ , ์—†์œผ๋ฉด ์บ์‹œ๋œ ๋‹ต์ผ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’๋‹ค. TTL ๊ฐ’์ด ์กฐํšŒํ•  ๋•Œ๋งˆ๋‹ค ์ค„์–ด๋“ค๊ณ  ์žˆ์œผ๋ฉด ์บ์‹œ์—์„œ ๋‚˜์˜จ ๊ฒƒ์ด๋‹ค(๋ฆฌ์กธ๋ฒ„๊ฐ€ ๋‚จ์€ ์œ ํšจ์‹œ๊ฐ„์„ ์นด์šดํŠธ๋‹ค์šดํ•ด์„œ ๋ณด์—ฌ์ค€๋‹ค).


๋ณด์•ˆ ๊ด€์  โ€” DNS๋ฅผ ๋…ธ๋ฆฌ๋Š” ๊ณต๊ฒฉ๋“ค

์—ฌ๊ธฐ์„œ๋ถ€ํ„ฐ๊ฐ€ ๋ณด์•ˆ ์—”์ง€๋‹ˆ์–ด๊ฐ€ ์ฃผ๋ชฉํ•  ๋ถ€๋ถ„์ด๋‹ค. DNS๋Š” ์ธ์ฆ๋„ ์•”ํ˜ธํ™”๋„ ์—†์ด ์„ค๊ณ„๋๋‹ค. ์งˆ์˜๋Š” ํ‰๋ฌธ์œผ๋กœ ์˜ค๊ฐ€๊ณ , ์‘๋‹ต์ด ์ง„์งœ authoritative์—์„œ ์˜จ ๊ฒƒ์ธ์ง€ ๊ฒ€์ฆํ•  ๋ฐฉ๋ฒ•์ด ์›๋ž˜ ์—†์—ˆ๋‹ค. ์ด ๊ตฌ์กฐ์  ์•ฝ์ ์„ ๋…ธ๋ฆฌ๋Š” ๋Œ€ํ‘œ์ ์ธ ๊ณต๊ฒฉ๋“ค์„ ์ •๋ฆฌํ•œ๋‹ค.

DNS ์Šคํ‘ธํ•‘ / ์บ์‹œ ํฌ์ด์ฆˆ๋‹

๊ณต๊ฒฉ ๋ชฉํ‘œ: recursive ๋ฆฌ์กธ๋ฒ„์˜ ์บ์‹œ์— ๊ฐ€์งœ ๋ ˆ์ฝ”๋“œ๋ฅผ ์‹ฌ๋Š”๋‹ค. ์„ฑ๊ณตํ•˜๋ฉด bank.com์„ ์กฐํšŒํ•œ ๋ชจ๋“  ์‚ฌ์šฉ์ž๊ฐ€ ๊ณต๊ฒฉ์ž ์„œ๋ฒ„๋กœ ์œ ๋„๋œ๋‹ค.

์›๋ฆฌ: UDP DNS ์‘๋‹ต์€ **ํŠธ๋žœ์žญ์…˜ ID(TXID, 16๋น„ํŠธ)**์™€ ์ถœ๋ฐœ์ง€ ํฌํŠธ๋กœ๋งŒ ๋งค์นญ๋œ๋‹ค. ๊ณต๊ฒฉ์ž๊ฐ€ ๋ฆฌ์กธ๋ฒ„๋ณด๋‹ค ๋จผ์ €, ์˜ฌ๋ฐ”๋ฅธ TXID๋ฅผ ๋งž์ถ˜ ๊ฐ€์งœ ์‘๋‹ต์„ ๋ณด๋‚ด๋ฉด ๋ฆฌ์กธ๋ฒ„๊ฐ€ ๊ทธ๊ฑธ ์ง„์งœ๋กœ ๋ฏฟ๊ณ  ์บ์‹ฑํ•œ๋‹ค. ์ธ์ฆ์ด ์—†๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

2008๋…„ Kaminsky ๊ณต๊ฒฉ์ด ์ด ์œ„ํ˜‘์„ ๊ฒฐ์ •์ ์œผ๋กœ ๋“œ๋Ÿฌ๋ƒˆ๋‹ค. ์ด๋ฏธ ์บ์‹ฑ๋œ ์ด๋ฆ„์„ ๋…ธ๋ฆฌ๋Š” ๋Œ€์‹  aaa.bank.com, aab.bank.com์ฒ˜๋Ÿผ ์กด์žฌํ•˜์ง€ ์•Š๋Š” ๋ฌด์ž‘์œ„ ์„œ๋ธŒ๋„๋ฉ”์ธ์„ ์—ฐ์†์œผ๋กœ ์กฐํšŒํ•˜๊ฒŒ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ํ•ต์‹ฌ ํŠธ๋ฆญ์ด๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ๋ฆฌ์กธ๋ฒ„๊ฐ€ authoritative์— ๊ณ„์† ์ƒˆ ์งˆ์˜๋ฅผ ๋˜์ง€๊ณ , ๊ณต๊ฒฉ์ž๋Š” ์งˆ์˜๋งˆ๋‹ค ์œ„์กฐ ์‘๋‹ต์„ ์Ÿ์•„๋ถ€์œผ๋ฉฐ TXID๋ฅผ ๋งž์ถœ ๊ธฐํšŒ๋ฅผ ๋Œ€๋Ÿ‰์œผ๋กœ ์–ป๋Š”๋‹ค. ๊ฒŒ๋‹ค๊ฐ€ ์œ„์กฐ ์‘๋‹ต์— "bank.com์˜ NS๋Š” ๋‚ด ์„œ๋ฒ„"๋ผ๋Š” ์œ„์ž„ ์ •๋ณด๋ฅผ ๋ผ์›Œ ๋„ฃ์–ด, ํ•œ ๋ฒˆ ์„ฑ๊ณตํ•˜๋ฉด ๋„๋ฉ”์ธ ์ „์ฒด๋ฅผ ํƒˆ์ทจํ•  ์ˆ˜ ์žˆ๋‹ค.

๋Œ€์‘:

  • ์ถœ๋ฐœ์ง€ ํฌํŠธ ๋ฌด์ž‘์œ„ํ™”(Source Port Randomization): TXID 16๋น„ํŠธ๋งŒ์œผ๋กœ๋Š” ๋ถ€์กฑํ•˜๋‹ˆ, ์งˆ์˜์˜ UDP ์ถœ๋ฐœ์ง€ ํฌํŠธ๊นŒ์ง€ ๋ฌด์ž‘์œ„ํ™”ํ•ด ๊ณต๊ฒฉ์ž๊ฐ€ ๋งž์ถฐ์•ผ ํ•  ์—”ํŠธ๋กœํ”ผ๋ฅผ ์•ฝ 32๋น„ํŠธ๋กœ ๋Š˜๋ฆฐ๋‹ค. Kaminsky ์ดํ›„ ํ‘œ์ค€ ๋Œ€์‘์ด ๋๋‹ค.
  • 0x20 ์ธ์ฝ”๋”ฉ: ์งˆ์˜ ๋„๋ฉ”์ธ ์ด๋ฆ„์˜ ๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๋ฌด์ž‘์œ„๋กœ ์„ž์–ด(ExAmPle.CoM) ์ถ”๊ฐ€ ์—”ํŠธ๋กœํ”ผ๋ฅผ ์ค€๋‹ค. ์‘๋‹ต์ด ๊ฐ™์€ ๋Œ€์†Œ๋ฌธ์ž๋กœ ๋Œ์•„์™€์•ผ ์œ ํšจ๋กœ ์ธ์ •ํ•œ๋‹ค.
  • DNS Cookies(RFC 7873): ํด๋ผ์ด์–ธํŠธยท์„œ๋ฒ„๊ฐ€ ๊ฐ€๋ฒผ์šด ์ฟ ํ‚ค๋ฅผ ๊ตํ™˜ํ•ด ์œ„์กฐ ์‘๋‹ต์„ ๊ฑธ๋Ÿฌ๋‚ธ๋‹ค7.
  • ๊ทผ๋ณธ ๋Œ€์‘์€ DNSSEC(์‘๋‹ต์— ์„œ๋ช…). ๋’ค์—์„œ ๋‹ค๋ฃฌ๋‹ค.

โš ๏ธ ์ถœ๋ฐœ์ง€ ํฌํŠธ ๋ฌด์ž‘์œ„ํ™”๋„ ๋งŒ๋Šฅ์€ ์•„๋‹ˆ๋‹ค. 2020๋…„ SAD DNS(CVE-2020-25705)๋Š” ICMP rate limit์„ ์‚ฌ์ด๋“œ์ฑ„๋„๋กœ ์•…์šฉํ•ด8 NAT ๋’ค ๋ฆฌ์กธ๋ฒ„์˜ ์ถœ๋ฐœ์ง€ ํฌํŠธ๋ฅผ ์—ญ์ถ”์ ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ์ฃผ๋ฉฐ Kaminsky์‹ ๊ณต๊ฒฉ์„ ๋˜์‚ด๋ ธ๋‹ค. NAT๊ฐ€ UDP ์ถœ๋ฐœ์ง€ ํฌํŠธ๋ฅผ ์ •๊ทœํ™”(์žฌ์ž‘์„ฑ)ํ•ด ๋ฌด์ž‘์œ„์„ฑ์„ ๊นŽ์•„๋ฒ„๋ฆฌ๋Š” ํ™˜๊ฒฝ์ด ํŠนํžˆ ์ทจ์•ฝํ•˜๋‹ค.

DNS ํ•˜์ด์žฌํ‚น (๊ฒฝ๋กœยท์„ค์ • ๋ณ€์กฐ)

์บ์‹œ ํฌ์ด์ฆˆ๋‹์ด ์‘๋‹ต์„ ์œ„์กฐํ•˜๋Š” ๊ฒƒ์ด๋ผ๋ฉด, ํ•˜์ด์žฌํ‚น์€ DNS ์„ค์ • ์ž์ฒด๋ฅผ ๋ฐ”๊พธ๋Š” ๊ณต๊ฒฉ์ด๋‹ค.

  • ๋ฆฌ์กธ๋ฒ„ ๋ณ€์กฐ: ์•…์„ฑ์ฝ”๋“œ๊ฐ€ ๊ฐ์—ผ PC์˜ DNS ์„œ๋ฒ„ ์„ค์ •์„ ๊ณต๊ฒฉ์ž ๋ฆฌ์กธ๋ฒ„๋กœ ๋ฐ”๊พผ๋‹ค. ์ดํ›„ ๋ชจ๋“  ์กฐํšŒ๊ฐ€ ๊ณต๊ฒฉ์ž๋ฅผ ๊ฑฐ์นœ๋‹ค.
  • ๋ผ์šฐํ„ฐ/๊ณต์œ ๊ธฐ DNS ๋ณ€์กฐ: ์ทจ์•ฝํ•œ ๊ณต์œ ๊ธฐ์˜ DNS ์„ค์ •์„ ๋ฐ”๊ฟ” ๊ฐ€์ •ยท์†Œ๊ทœ๋ชจ ์‚ฌ๋ฌด์‹ค ์ „์ฒด ํŠธ๋ž˜ํ”ฝ์„ ์œ ๋„ํ•œ๋‹ค.
  • ๋ ˆ์ง€์ŠคํŠธ๋ผ ๊ณ„์ • ํƒˆ์ทจ: ๋„๋ฉ”์ธ ๋“ฑ๋ก๊ธฐ๊ด€ ๊ณ„์ •์„ ํ„ธ์–ด NS ๋ ˆ์ฝ”๋“œ๋ฅผ ํ†ต์งธ๋กœ ๋ฐ”๊พผ๋‹ค. ๋„๋ฉ”์ธ ์ „์ฒด๊ฐ€ ๋„˜์–ด๊ฐ„๋‹ค. 2019๋…„๊ฒฝ ๋‹ค์ˆ˜ ๊ธฐ๊ด€์„ ๋…ธ๋ฆฐ ๋Œ€๊ทœ๋ชจ DNS ํ•˜์ด์žฌํ‚น ์บ ํŽ˜์ธ์ด ์ด ๋ฐฉ์‹์ด์—ˆ๋‹ค.

๋Œ€์‘: ๋ ˆ์ง€์ŠคํŠธ๋ผ ๊ณ„์ • MFAยท๋ ˆ์ง€์ŠคํŠธ๋ฆฌ ์ž ๊ธˆ(Registry Lock), ๊ณต์œ ๊ธฐ ํŽŒ์›จ์–ด ์ตœ์‹ ํ™”์™€ ๊ด€๋ฆฌ์ž ๋น„๋ฐ€๋ฒˆํ˜ธ ๋ณ€๊ฒฝ, ์—”๋“œํฌ์ธํŠธ ๋ณดํ˜ธ, ๊ทธ๋ฆฌ๊ณ  CAA ๋ ˆ์ฝ”๋“œ๋กœ ์ž„์˜ ์ธ์ฆ์„œ ๋ฐœ๊ธ‰ ์ฐจ๋‹จ.

DNS ํ„ฐ๋„๋ง โ€” ๋ฐฉํ™”๋ฒฝ์„ ํ†ต๊ณผํ•˜๋Š” ์€๋‹‰ ์ฑ„๋„

์•„์ด๋””์–ด: DNS๋Š” ๊ฑฐ์˜ ๋ชจ๋“  ๋„คํŠธ์›Œํฌ์—์„œ ์—ด๋ ค ์žˆ๋‹ค. ์›นยทSSH๋Š” ๋ง‰์•„๋„ DNS 53์„ ์™„์ „ํžˆ ๋ง‰๋Š” ๊ณณ์€ ๋“œ๋ฌผ๋‹ค. ๊ณต๊ฒฉ์ž๋Š” ์ด ์ ์„ ์•…์šฉํ•ด DNS ์งˆ์˜ยท์‘๋‹ต ์•ˆ์— ๋ฐ์ดํ„ฐ๋ฅผ ์‹ค์–ด ํ†ต์‹  ์ฑ„๋„์„ ๋งŒ๋“ ๋‹ค.

๋™์ž‘ ๋ฐฉ์‹:

[๊ฐ์—ผ ํ˜ธ์ŠคํŠธ] ํƒˆ์ทจ ๋ฐ์ดํ„ฐ๋ฅผ ์ธ์ฝ”๋”ฉํ•ด ์„œ๋ธŒ๋„๋ฉ”์ธ์œผ๋กœ ์งˆ์˜
   โ†’ c2VjcmV0ZGF0YQ.attacker-c2.com  (Base32/Base64 ์ธ์ฝ”๋”ฉ)

[๊ณต๊ฒฉ์ž authoritative ์„œ๋ฒ„] ์งˆ์˜์˜ ์„œ๋ธŒ๋„๋ฉ”์ธ์„ ๋””์ฝ”๋”ฉํ•ด ๋ฐ์ดํ„ฐ ์ˆ˜์‹ 
   โ†’ TXT/NULL ๋ ˆ์ฝ”๋“œ ์‘๋‹ต์— ๋ช…๋ น์„ ์‹ค์–ด ๋˜๋Œ๋ ค์คŒ
  • ๋ฐ์ดํ„ฐ ์œ ์ถœ(Exfiltration): ํ›”์นœ ๋ฐ์ดํ„ฐ๋ฅผ ์„œ๋ธŒ๋„๋ฉ”์ธ์— ์ž˜๊ฒŒ ์ชผ๊ฐœ ์ธ์ฝ”๋”ฉํ•ด ๋‚ด๋ณด๋‚ธ๋‹ค. ์ •์ƒ DNS ์งˆ์˜์ฒ˜๋Ÿผ ๋ณด์ธ๋‹ค.
  • C2 ์ฑ„๋„: ์‘๋‹ต ๋ ˆ์ฝ”๋“œ(ํŠนํžˆ ์ž์œ  ํ…์ŠคํŠธ์ธ TXT, ๋˜๋Š” NULL)์— ๋ช…๋ น์„ ์‹ค์–ด ๊ฐ์—ผ ํ˜ธ์ŠคํŠธ๋ฅผ ์›๊ฒฉ ์ œ์–ดํ•œ๋‹ค.
  • ๋„๊ตฌ: iodine, dnscat2 ๋“ฑ์ด ์ด ๊ณผ์ •์„ ์ž๋™ํ™”ํ•œ๋‹ค. APT ๊ทธ๋ฃน์ด ์ฆ๊ฒจ ์“ฐ๋Š” ์€๋‹‰ ์ฑ„๋„์ด๋‹ค.

ํƒ์ง€ยท๋Œ€์‘:

  • ๋น„์ •์ƒ์ ์œผ๋กœ ๊ธด ์„œ๋ธŒ๋„๋ฉ”์ธ, ํ•œ ๋„๋ฉ”์ธ์— ๋ชฐ๋ฆฌ๋Š” ๊ณผ๋„ํ•œ ์งˆ์˜๋Ÿ‰, ๋†’์€ NXDOMAIN ๋น„์œจ, ๋“œ๋ฌธ ๋ ˆ์ฝ”๋“œ ํƒ€์ž…(TXT/NULL) ๊ธ‰์ฆ์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•œ๋‹ค.
  • DNS ์งˆ์˜ ๋กœ๊ทธ๋ฅผ SIEM์œผ๋กœ ์ˆ˜์ง‘ํ•ด ์—”ํŠธ๋กœํ”ผยท๋นˆ๋„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ด์ƒ ํƒ์ง€.
  • ๋‚ด๋ถ€ ํ˜ธ์ŠคํŠธ๋Š” ์ง€์ •๋œ ๋‚ด๋ถ€ ๋ฆฌ์กธ๋ฒ„๋กœ๋งŒ ์กฐํšŒํ•˜๊ฒŒ ๊ฐ•์ œํ•˜๊ณ , ์™ธ๋ถ€๋กœ ์ง์ ‘ ๋‚˜๊ฐ€๋Š” DNS(53)๋ฅผ ์ฐจ๋‹จ.

DNS ๋ฆฌ๋ฐ”์ธ๋”ฉ โ€” ๋ธŒ๋ผ์šฐ์ €๋ฅผ ๋‚ด๋ถ€๋ง ํ”„๋ก์‹œ๋กœ

๋ชฉํ‘œ: ์™ธ๋ถ€ ์›น์‚ฌ์ดํŠธ๊ฐ€ ํ”ผํ•ด์ž์˜ ๋ธŒ๋ผ์šฐ์ €๋ฅผ ๋ฐœํŒ ์‚ผ์•„ ๋‚ด๋ถ€๋ง ์„œ๋น„์Šค(๊ณต์œ ๊ธฐ ๊ด€๋ฆฌ ํŽ˜์ด์ง€, ๋‚ด๋ถ€ API, 127.0.0.1์˜ ๊ฐœ๋ฐœ ์„œ๋ฒ„ ๋“ฑ)์— ์ ‘๊ทผํ•œ๋‹ค. ์„œ๋ฒ„ ์ทจ์•ฝ์ ์ด ์•„๋‹ˆ๋ผ **๋™์ผ ์ถœ์ฒ˜ ์ •์ฑ…(SOP)**์˜ ํ—ˆ์ ์„ ํŒŒ๊ณ ๋“ ๋‹ค9.

๋™์ž‘ ๋ฐฉ์‹:

  1. ํ”ผํ•ด์ž๊ฐ€ ๊ณต๊ฒฉ์ž ๋„๋ฉ”์ธ evil.com์— ์ ‘์†. ์ด๋•Œ DNS ์‘๋‹ต์˜ TTL์„ ์งง๊ฒŒ(์˜ˆ: 1์ดˆ) ์ค€๋‹ค.
  2. ์ฒ˜์Œ์—” evil.com์ด ๊ณต๊ฒฉ์ž ์„œ๋ฒ„ IP๋กœ ํ•ด์„๋ผ ์•…์„ฑ JavaScript๊ฐ€ ๋กœ๋“œ๋œ๋‹ค.
  3. ์ž ์‹œ ํ›„ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๊ฐ™์€ ๋„๋ฉ”์ธ์„ ๋‹ค์‹œ ์กฐํšŒํ•˜๋ฉด, ์ด๋ฒˆ์—” evil.com์„ 192.168.0.1์ด๋‚˜ 127.0.0.1 ๊ฐ™์€ ๋‚ด๋ถ€ IP๋กœ ํ•ด์„ํ•ด์ค€๋‹ค(๋ฆฌ๋ฐ”์ธ๋”ฉ).
  4. ๋ธŒ๋ผ์šฐ์ € ์ž…์žฅ์—์„œ๋Š” ์—ฌ์ „ํžˆ "๊ฐ™์€ ์ถœ์ฒ˜(evil.com)"๋ผ์„œ SOP๋ฅผ ํ†ต๊ณผํ•œ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ ์•…์„ฑ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ๋‚ด๋ถ€ ์„œ๋น„์Šค์— ์š”์ฒญ์„ ๋ณด๋‚ด๊ณ  ์‘๋‹ต์„ ์ฝ์–ด๋‚ธ๋‹ค.

๋Œ€์‘:

  • DNS ๋ฆฌ๋ฐ”์ธ๋”ฉ ๋ณดํ˜ธ: ๋ฆฌ์กธ๋ฒ„ยท๋ฐฉํ™”๋ฒฝ์—์„œ ์™ธ๋ถ€ ๋„๋ฉ”์ธ์ด ์‚ฌ์„ค IP ๋Œ€์—ญ(RFC 1918)์ด๋‚˜ 127.0.0.0/8๋กœ ํ•ด์„๋˜๋Š” ์‘๋‹ต์„ ์ฐจ๋‹จํ•œ๋‹ค(dnsmasq์˜ stop-dns-rebind ๋“ฑ).
  • ๋‚ด๋ถ€ ์„œ๋น„์Šค์— Host ํ—ค๋” ๊ฒ€์ฆ๊ณผ ์ธ์ฆ์„ ๋ถ™์ธ๋‹ค. IP๋งŒ์œผ๋กœ ์ ‘๊ทผ์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.
  • ๊ฐœ๋ฐœ ์„œ๋ฒ„ยท๊ด€๋ฆฌ ์ฝ˜์†”์„ 0.0.0.0์ด ์•„๋‹Œ ํŠน์ • ์ธํ„ฐํŽ˜์ด์Šค์—๋งŒ ๋ฐ”์ธ๋”ฉ.

DDoS โ€” ์ฆํญยท๋ฐ˜์‚ฌ ๊ณต๊ฒฉ๊ณผ ๋ฌผ๊ณ ๋ฌธ

DNS๋Š” ์ฆํญ(Amplification) ๊ณต๊ฒฉ์˜ ๋‹จ๊ณจ ๋„๊ตฌ๋‹ค. NAT ํŽธ์—์„œ ๋ฐ˜์‚ฌ ๊ณต๊ฒฉ์„ ์ž ๊น ์–ธ๊ธ‰ํ–ˆ๋Š”๋ฐ, DNS๊ฐ€ ๋Œ€ํ‘œ์  ์‚ฌ๋ก€๋‹ค.

  • ์ฆํญยท๋ฐ˜์‚ฌ: ๊ณต๊ฒฉ์ž๊ฐ€ ์ถœ๋ฐœ์ง€ IP๋ฅผ ํ”ผํ•ด์ž๋กœ ์œ„์กฐํ•ด ๊ณต๊ฐœ ๋ฆฌ์กธ๋ฒ„์— ์ž‘์€ ์งˆ์˜๋ฅผ ๋ณด๋‚ธ๋‹ค. ๋ฆฌ์กธ๋ฒ„๋Š” ํ›จ์”ฌ ํฐ ์‘๋‹ต(ํŠนํžˆ EDNS0ยทDNSSEC ์„œ๋ช…์ด ๋ถ™์œผ๋ฉด ์ˆ˜์‹ญ ๋ฐฐ)์„ ํ”ผํ•ด์ž์—๊ฒŒ ์Ÿ์•„๋ถ“๋Š”๋‹ค. ์ž‘์€ ํž˜์œผ๋กœ ํฐ ํŠธ๋ž˜ํ”ฝ์„ ๋งŒ๋“ ๋‹ค.
  • DNS Water Torture(๋ฌด์ž‘์œ„ ์„œ๋ธŒ๋„๋ฉ”์ธ ๊ณต๊ฒฉ): ์กด์žฌํ•˜์ง€ ์•Š๋Š” ๋ฌด์ž‘์œ„ ์„œ๋ธŒ๋„๋ฉ”์ธ์„ ๋Œ€๋Ÿ‰ ์งˆ์˜ํ•ด authoritative ์„œ๋ฒ„๊ฐ€ ๊ณ„์† NXDOMAIN์„ ์ฒ˜๋ฆฌํ•˜๊ฒŒ ๋งŒ๋“ค์–ด ๊ณ ๊ฐˆ์‹œํ‚จ๋‹ค.

๋Œ€์‘: ๊ณต๊ฐœ ๋ฆฌ์กธ๋ฒ„์˜ ๊ฐœ๋ฐฉํ˜• ์žฌ๊ท€(open resolver) ๋น„ํ™œ์„ฑํ™”, Response Rate Limiting(RRL), BCP38 ๊ธฐ๋ฐ˜ ์ถœ๋ฐœ์ง€ IP ์œ„์กฐ ์ฐจ๋‹จ(NAT ํŽธ์—์„œ ๋‹ค๋ฃฌ uRPFยทegress ํ•„ํ„ฐ๋ง), Anycast๋กœ ๋ถ€ํ•˜ ๋ถ„์‚ฐ.

๊ณ„์ธต๋ณ„๋กœ ๋ณธ DNS ์œ„ํ˜‘ ์š”์•ฝ

๊ณต๊ฒฉ ๋…ธ๋ฆฌ๋Š” ๊ฒƒ ํ•ต์‹ฌ ๋Œ€์‘
์บ์‹œ ํฌ์ด์ฆˆ๋‹ ๋ฆฌ์กธ๋ฒ„ ์บ์‹œ์— ๊ฐ€์งœ ๋ ˆ์ฝ”๋“œ ํฌํŠธ ๋ฌด์ž‘์œ„ํ™”ยท0x20ยทDNSSEC
DNS ํ•˜์ด์žฌํ‚น ๋ฆฌ์กธ๋ฒ„/NS ์„ค์ • ๋ณ€์กฐ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ ์ž ๊ธˆยทMFAยทCAA
DNS ํ„ฐ๋„๋ง ์€๋‹‰ C2ยท๋ฐ์ดํ„ฐ ์œ ์ถœ ์งˆ์˜ ์ด์ƒํƒ์ง€ยท์™ธ๋ถ€ 53 ์ฐจ๋‹จ
DNS ๋ฆฌ๋ฐ”์ธ๋”ฉ SOP ์šฐํšŒยท๋‚ด๋ถ€๋ง ์ ‘๊ทผ ๋ฆฌ๋ฐ”์ธ๋”ฉ ๋ณดํ˜ธยทHost ๊ฒ€์ฆ
์ฆํญยท๋ฐ˜์‚ฌ DDoS ๋Œ€์—ญํญ ๊ณ ๊ฐˆ open resolver ์ฐจ๋‹จยทRRLยทBCP38
์กด ์ „์†ก ๋…ธ์ถœ ์ „์ฒด ๋ ˆ์ฝ”๋“œ ์œ ์ถœ AXFR๋ฅผ secondary๋กœ๋งŒ ์ œํ•œ

๋ฐฉ์–ด ๊ธฐ์ˆ  โ€” DNSSEC, DoT, DoH

์œ„ ๊ณต๊ฒฉ๋“ค์˜ ๋ฟŒ๋ฆฌ๋Š” ๋‘ ๊ฐ€์ง€๋‹ค. DNS ์‘๋‹ต์— **โ‘  ๋ฌด๊ฒฐ์„ฑ(์ง„์งœ authoritative์˜ ๋‹ต์ด ๋งž๋‚˜)**๊ณผ **โ‘ก ๊ธฐ๋ฐ€์„ฑ(์ค‘๊ฐ„์—์„œ ์—ฟ๋ณด๊ฑฐ๋‚˜ ์กฐ์ž‘ ๋ชป ํ•˜๋‚˜)**์ด ์—†๋‹ค๋Š” ๊ฒƒ. ์ด ๋‘˜์„ ๊ฐ๊ฐ ๋ฉ”์šฐ๋Š” ๊ธฐ์ˆ ์ด ์žˆ๋‹ค.

DNSSEC โ€” ์‘๋‹ต์— ์„œ๋ช…ํ•ด์„œ ์œ„์กฐ๋ฅผ ๋ง‰๋Š”๋‹ค (๋ฌด๊ฒฐ์„ฑ)

**DNSSEC(DNS Security Extensions)**๋Š” DNS ๋ ˆ์ฝ”๋“œ์— ๋””์ง€ํ„ธ ์„œ๋ช…์„ ๋ถ™์—ฌ, ์‘๋‹ต์ด ์ง„์งœ authoritative์—์„œ ์™”๊ณ  ๋ณ€์กฐ๋˜์ง€ ์•Š์•˜์Œ์„ ๊ฒ€์ฆํ•œ๋‹ค6. ์บ์‹œ ํฌ์ด์ฆˆ๋‹์˜ ๊ทผ๋ณธ ๋Œ€์‘์ด๋‹ค.

ํ•ต์‹ฌ ๋ ˆ์ฝ”๋“œ:

๋ ˆ์ฝ”๋“œ ์—ญํ• 
DNSKEY ์กด์˜ ๊ณต๊ฐœํ‚ค
RRSIG ๊ฐ ๋ ˆ์ฝ”๋“œ ์ง‘ํ•ฉ์˜ ์„œ๋ช…
DS (Delegation Signer) ๋ถ€๋ชจ ์กด์— ์ €์žฅ๋œ, ์ž์‹ DNSKEY์˜ ํ•ด์‹œ
NSEC / NSEC3 "๊ทธ๋Ÿฐ ์ด๋ฆ„์€ ์—†๋‹ค"๋Š” ๋ถ€์žฌ ์ฆ๋ช…(์กด์žฌํ•˜์ง€ ์•Š๋Š” ๋ ˆ์ฝ”๋“œ๊นŒ์ง€ ์ธ์ฆ)

๋™์ž‘์˜ ์š”์ฒด๋Š” **์‹ ๋ขฐ ์ฒด์ธ(Chain of Trust)**์ด๋‹ค. ๋ฃจํŠธ ์กด์˜ ํ‚ค๋ฅผ ์‹ ๋ขฐ ์•ต์ปค๋กœ ์‚ผ์•„, ๋ฃจํŠธ๊ฐ€ .com์˜ ํ‚ค๋ฅผ ๋ณด์ฆํ•˜๊ณ (DS), .com์ด example.com์˜ ํ‚ค๋ฅผ ๋ณด์ฆํ•œ๋‹ค. ๋ฆฌ์กธ๋ฒ„๋Š” ์ด ์ฒด์ธ์„ ๋ฃจํŠธ๊นŒ์ง€ ๋”ฐ๋ผ ์˜ฌ๋ผ๊ฐ€ ๊ฒ€์ฆํ•œ๋‹ค. ์ค‘๊ฐ„์— ์„œ๋ช…์ด ์•ˆ ๋งž์œผ๋ฉด ์‘๋‹ต์„ ๊ฑฐ๋ถ€ํ•œ๋‹ค.

์ค‘์š”ํ•œ ํ•œ๊ณ„: DNSSEC์€ ๋ฌด๊ฒฐ์„ฑ๋งŒ ์ œ๊ณตํ•œ๋‹ค. ์‘๋‹ต์ด ์œ„์กฐ๋˜์ง€ ์•Š์•˜์Œ์€ ๋ณด์žฅํ•˜์ง€๋งŒ, ์งˆ์˜ยท์‘๋‹ต์€ ์—ฌ์ „ํžˆ ํ‰๋ฌธ์ด๋ผ ์ค‘๊ฐ„์—์„œ "๋ˆ„๊ฐ€ ๋ฌด์—‡์„ ์กฐํšŒํ–ˆ๋Š”์ง€"๋Š” ๋‹ค ๋ณด์ธ๋‹ค. ๊ธฐ๋ฐ€์„ฑ์€ DNSSEC์˜ ์˜์—ญ์ด ์•„๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋‹ค์Œ ๋‘ ๊ธฐ์ˆ ์ด ํ•„์š”ํ•˜๋‹ค.

DoT / DoH โ€” ์งˆ์˜๋ฅผ ์•”ํ˜ธํ™”ํ•œ๋‹ค (๊ธฐ๋ฐ€์„ฑ)

  • DoT (DNS over TLS, RFC 7858): DNS๋ฅผ TLS๋กœ ๊ฐ์‹ธ TCP 853๋ฒˆ ํฌํŠธ๋กœ ์ฃผ๊ณ ๋ฐ›๋Š”๋‹ค4. DNS ์ „์šฉ ํฌํŠธ๋ผ ๋„คํŠธ์›Œํฌ์—์„œ DNS ํŠธ๋ž˜ํ”ฝ์ž„์ด ์‹๋ณ„๋˜์ง€๋งŒ, ๋‚ด์šฉ์€ ์•”ํ˜ธํ™”๋œ๋‹ค.
  • DoH (DNS over HTTPS, RFC 8484): DNS๋ฅผ HTTPS ์š”์ฒญ์— ์‹ค์–ด 443๋ฒˆ ํฌํŠธ๋กœ ์ฃผ๊ณ ๋ฐ›๋Š”๋‹ค5. ์ผ๋ฐ˜ ์›น ํŠธ๋ž˜ํ”ฝ๊ณผ ์„ž์—ฌ์„œ, DNS๋ผ๋Š” ์‚ฌ์‹ค ์ž์ฒด๋„ ์ž˜ ๋“œ๋Ÿฌ๋‚˜์ง€ ์•Š๋Š”๋‹ค.
๊ตฌ๋ถ„ ๋ณดํ˜ธ ๋Œ€์ƒ ํฌํŠธ ํŠน์ง•
DNSSEC ๋ฌด๊ฒฐ์„ฑ(์œ„์กฐ ๋ฐฉ์ง€) 53 (๊ธฐ์กด) ์‘๋‹ต ์„œ๋ช…ยท๊ฒ€์ฆ, ๋‚ด์šฉ์€ ํ‰๋ฌธ
DoT ๊ธฐ๋ฐ€์„ฑ(๋„์ฒญ ๋ฐฉ์ง€) 853 DNS ์ „์šฉ, ํŠธ๋ž˜ํ”ฝ ์‹๋ณ„์€ ๊ฐ€๋Šฅ
DoH ๊ธฐ๋ฐ€์„ฑ(๋„์ฒญ ๋ฐฉ์ง€) 443 ์›น ํŠธ๋ž˜ํ”ฝ์— ์€๋‹‰, ์‹๋ณ„ ์–ด๋ ค์›€

์„ธ ๊ธฐ์ˆ ์€ ๊ฒฝ์Ÿ์ด ์•„๋‹ˆ๋ผ ์ƒํ˜ธ ๋ณด์™„์ด๋‹ค. DNSSEC๋กœ ์œ„์กฐ๋ฅผ ๋ง‰๊ณ , DoT/DoH๋กœ ๋„์ฒญยท์กฐ์ž‘์„ ๋ง‰๋Š”๋‹ค. ์ด์ƒ์ ์œผ๋กœ๋Š” ํ•จ๊ป˜ ์“ด๋‹ค.

โš ๏ธ ๋ณด์•ˆ ๋‹ด๋‹น์ž์—๊ฒŒ DoH๋Š” ์–‘๋‚ ์˜ ๊ฒ€์ด๋‹ค. ์‚ฌ์šฉ์ž ํ”„๋ผ์ด๋ฒ„์‹œ๋Š” ์ง€์ผœ์ฃผ์ง€๋งŒ, ๋™์‹œ์— ์กฐ์ง์˜ DNS ๊ธฐ๋ฐ˜ ํ†ต์ œ(์•…์„ฑ ๋„๋ฉ”์ธ ์ฐจ๋‹จ, ํ„ฐ๋„๋ง ํƒ์ง€)๋ฅผ ์šฐํšŒํ•œ๋‹ค. ์•ž์„œ ๋ณธ DNS ํ„ฐ๋„๋ง์ด DoH๋กœ ์ด๋ค„์ง€๋ฉด 443 ์•”ํ˜ธํ™” ํŠธ๋ž˜ํ”ฝ์— ์ˆจ์–ด ํƒ์ง€๊ฐ€ ํ›จ์”ฌ ์–ด๋ ค์›Œ์ง„๋‹ค. ๊ทธ๋ž˜์„œ ๋งŽ์€ ์กฐ์ง์ด ์—”๋“œํฌ์ธํŠธ๋ฅผ ์ง€์ •๋œ ๋‚ด๋ถ€ DoH/DoT ๋ฆฌ์กธ๋ฒ„๋กœ๋งŒ ํ–ฅํ•˜๊ฒŒ ๊ฐ•์ œํ•˜๊ณ , ์™ธ๋ถ€ ๊ณต๊ฐœ DoH ์„œ๋ฒ„๋กœ์˜ ์ง์ ‘ ์—ฐ๊ฒฐ์„ ์ฐจ๋‹จํ•œ๋‹ค.


์‹ค๋ฌด ํŠธ๋Ÿฌ๋ธ”์ŠˆํŒ… ์‹œ๋‚˜๋ฆฌ์˜ค

DNS ๋ฌธ์ œ๋Š” "์ธํ„ฐ๋„ท์ด ์•ˆ ๋ผ์š”"๋ถ€ํ„ฐ "ํŠน์ • ์‚ฌ์ดํŠธ๋งŒ ์•ˆ ๋ผ์š”"๊นŒ์ง€ ์ฆ์ƒ์ด ๋‹ค์–‘ํ•˜๋‹ค. ๊ณ„์ธต์ ์œผ๋กœ ์ขํ˜€๊ฐ€๋Š” ์ ‘๊ทผ์„ ์‹œ๋‚˜๋ฆฌ์˜ค๋กœ ์ •๋ฆฌํ–ˆ๋‹ค.

์‹œ๋‚˜๋ฆฌ์˜ค 1: "ํ•‘์€ IP๋กœ๋Š” ๋˜๋Š”๋ฐ ๋„๋ฉ”์ธ์œผ๋กœ๋Š” ์•ˆ ๋œ๋‹ค"

ping 93.184.216.34   โ†’ ์„ฑ๊ณต
ping example.com     โ†’ "์ด๋ฆ„์„ ํ™•์ธํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค" / unknown host

๋ถ„์„: IP ํ†ต์‹ (3๊ณ„์ธต)์€ ์ •์ƒ. ์ด๋ฆ„ ํ•ด์„(DNS)๋งŒ ์‹คํŒจํ•œ๋‹ค. DNS ์„ค์ • ๋ฌธ์ œ๋กœ ์ขํ˜€์ง„๋‹ค.

# ํ˜„์žฌ ๋ฆฌ์กธ๋ฒ„ ์„ค์ • ํ™•์ธ (๋ฆฌ๋ˆ…์Šค)
cat /etc/resolv.conf
resolvectl status          # systemd-resolved ํ™˜๊ฒฝ

# ๋ฆฌ์กธ๋ฒ„๊ฐ€ ์‘๋‹ตํ•˜๋Š”์ง€ ์ง์ ‘ ํ™•์ธ
dig @8.8.8.8 example.com   # ๊ณต๊ฐœ DNS๋กœ๋Š” ๋˜๋‚˜?
dig example.com            # ์„ค์ •๋œ ๋ฆฌ์กธ๋ฒ„๋กœ๋Š”?

๊ฐ€๋Šฅํ•œ ์›์ธ: /etc/resolv.conf์˜ nameserver๊ฐ€ ๋น„์—ˆ๊ฑฐ๋‚˜ ์ž˜๋ชป๋จ, ๋‚ด๋ถ€ ๋ฆฌ์กธ๋ฒ„ ๋‹ค์šด, ๋ฐฉํ™”๋ฒฝ์ด 53์„ ๋ง‰์Œ.

์‹œ๋‚˜๋ฆฌ์˜ค 2: "DNS ๋ฐ”๊ฟจ๋Š”๋ฐ ์˜›๋‚  ์„œ๋ฒ„๋กœ ๊ฐ„๋‹ค"

๋ถ„์„: ์บ์‹œ ๋ฌธ์ œ์ผ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’๋‹ค. ์บ์‹œ๋ฅผ ์šฐํšŒํ•ด ์ง„์งœ ๊ฐ’์„ ํ™•์ธํ•œ๋‹ค.

# authoritative์— ์ง์ ‘ ๋ฌผ์–ด ์ง„์งœ ๊ฐ’ ํ™•์ธ
dig @<authoritative-ns> example.com +short

# ์—ฌ๋Ÿฌ ๊ณต๊ฐœ ๋ฆฌ์กธ๋ฒ„ ์บ์‹œ ์ƒํƒœ ๋น„๊ต
dig @8.8.8.8 example.com +short
dig @1.1.1.1 example.com +short

# ๋‚จ์€ TTL ํ™•์ธ (์บ์‹œ๊ฐ€ ์–ธ์ œ ๋งŒ๋ฃŒ๋˜๋‚˜)
dig example.com | grep -A1 "ANSWER SECTION"

# ๋กœ์ปฌ ์บ์‹œ ๋น„์šฐ๊ธฐ
sudo resolvectl flush-caches      # ๋ฆฌ๋ˆ…์Šค(systemd)
ipconfig /flushdns                # Windows

authoritative๋Š” ์ƒˆ ๊ฐ’์„, ๊ณต๊ฐœ ๋ฆฌ์กธ๋ฒ„๋Š” ์˜› ๊ฐ’์„ ์ฃผ๊ณ  ์žˆ๋‹ค๋ฉด TTL ๋งŒ๋ฃŒ๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๋Š” ๊ฒƒ ์™ธ์—” ๋ฐฉ๋ฒ•์ด ์—†๋‹ค. ๊ทธ๋ž˜์„œ ๋ณ€๊ฒฝ ์ „ TTL์„ ๋ฏธ๋ฆฌ ๋‚ฎ์ถ”๋Š” ๊ฒŒ ์ค‘์š”ํ•˜๋‹ค.

์‹œ๋‚˜๋ฆฌ์˜ค 3: "๊ฐ„ํ—์ ์œผ๋กœ ํŠน์ • ์‚ฌ์ดํŠธ๋งŒ ๋А๋ฆฌ๋‹ค"

# ์กฐํšŒ ์‹œ๊ฐ„ ์ธก์ • (Query time ํ™•์ธ)
dig example.com | grep "Query time"

# +trace๋กœ ์–ด๋А ๋‹จ๊ณ„๊ฐ€ ๋А๋ฆฐ์ง€ ํ™•์ธ
dig +trace example.com

# ์—ฌ๋Ÿฌ ๋ฆฌ์กธ๋ฒ„ ์‘๋‹ต ์†๋„ ๋น„๊ต
dig @8.8.8.8 example.com | grep "Query time"
dig @1.1.1.1 example.com | grep "Query time"

ํŠน์ • ๋ฆฌ์กธ๋ฒ„๋งŒ ๋А๋ฆฌ๋ฉด ๋ฆฌ์กธ๋ฒ„๋ฅผ ๋ฐ”๊พธ๋Š” ๊ฒƒ๋งŒ์œผ๋กœ ํ•ด๊ฒฐ๋˜๊ธฐ๋„ ํ•œ๋‹ค. authoritative ๋‹จ๊ณ„๊ฐ€ ๋А๋ฆฌ๋ฉด ๊ทธ ๋„๋ฉ”์ธ ์šด์˜ ์ธก ๋ฌธ์ œ๋‹ค.

์‹œ๋‚˜๋ฆฌ์˜ค 4: "๋ฉ”์ผ์ด ์ž๊พธ ์ŠคํŒธ์œผ๋กœ ๋ถ„๋ฅ˜๋œ๋‹ค"

DNS๋Š” ์ด๋ฉ”์ผ ์‹ ๋ขฐ์„ฑ์˜ ํ•ต์‹ฌ์ด๋‹ค.

# SPF ํ™•์ธ (ํ—ˆ๊ฐ€๋œ ๋ฐœ์‹  ์„œ๋ฒ„ ๋ชฉ๋ก)
dig example.com TXT | grep spf

# DKIM ํ™•์ธ (์…€๋ ‰ํ„ฐ ์ง€์ •)
dig <selector>._domainkey.example.com TXT

# DMARC ์ •์ฑ… ํ™•์ธ
dig _dmarc.example.com TXT

# ์—ญ๋ฐฉํ–ฅ(PTR) ์กฐํšŒ โ€” ๋ฉ”์ผ ์„œ๋ฒ„ IP๊ฐ€ ์ด๋ฆ„์„ ๊ฐ–๋Š”์ง€
dig -x <mail-server-ip>

SPFยทDKIMยทDMARC(๋ชจ๋‘ TXT/DNS ๊ธฐ๋ฐ˜)์™€ PTR์ด ์ œ๋Œ€๋กœ ์„ค์ •๋ผ์•ผ ๋ฉ”์ผ์ด ์ •์ƒ ๋„๋ฉ”์ธ์œผ๋กœ ์ธ์ •๋ฐ›๋Š”๋‹ค.


์ •๋ฆฌ

๊ฐœ๋… ํ•œ ์ค„ ์š”์•ฝ
DNS ๋„๋ฉ”์ธ ์ด๋ฆ„ โ†” IP๋ฅผ ๋งคํ•‘ํ•˜๋Š” ๋ถ„์‚ฐยท๊ณ„์ธตํ˜• ์‹œ์Šคํ…œ
์žฌ๊ท€ vs ๋ฐ˜๋ณต ์งˆ์˜ ํด๋ผ์ด์–ธํŠธ๋Š” ํ•œ ๋ฒˆ ๋ฌป๊ณ (์žฌ๊ท€), ๋ฆฌ์กธ๋ฒ„๊ฐ€ ๋ฃจํŠธโ†’TLDโ†’authoritative๋ฅผ ํ›‘๋Š”๋‹ค(๋ฐ˜๋ณต)
๋ ˆ์ฝ”๋“œ ํƒ€์ž… A/AAAA(์ฃผ์†Œ), CNAME(๋ณ„์นญ), MX(๋ฉ”์ผ), NS(์œ„์ž„), TXT(์ธ์ฆยท๋ณด์•ˆ) ๋“ฑ
TTLยท์บ์‹ฑ ๋‹ต์˜ ์œ ํšจ๊ธฐ๊ฐ„. ๋ณ€๊ฒฝ ์ „ TTL์„ ๋‚ฎ์ถฐ์•ผ ์ „ํ™˜์ด ๋น ๋ฅด๋‹ค
UDP 53 / TCP 53 ๊ธฐ๋ณธ์€ UDP, 512๋ฐ”์ดํŠธ ์ดˆ๊ณผยท์กด ์ „์†ก์€ TCP. EDNS0๋กœ ํฐ UDP ํ˜‘์ƒ
์บ์‹œ ํฌ์ด์ฆˆ๋‹ ๊ฐ€์งœ ์‘๋‹ต์œผ๋กœ ์บ์‹œ ์˜ค์—ผ โ†’ ํฌํŠธ ๋ฌด์ž‘์œ„ํ™”ยทDNSSEC๋กœ ๋ฐฉ์–ด
DNS ํ„ฐ๋„๋ง/๋ฆฌ๋ฐ”์ธ๋”ฉ ์€๋‹‰ ์ฑ„๋„ยท๋‚ด๋ถ€๋ง ์šฐํšŒ โ†’ ์ด์ƒํƒ์ง€ยท๋ฆฌ๋ฐ”์ธ๋”ฉ ๋ณดํ˜ธ
DNSSEC ์‘๋‹ต ์„œ๋ช…(๋ฌด๊ฒฐ์„ฑ). ๊ธฐ๋ฐ€์„ฑ์€ ์—†์Œ
DoT / DoH ์งˆ์˜ ์•”ํ˜ธํ™”(๊ธฐ๋ฐ€์„ฑ). 853 / 443

DNS๋Š” "์ด๋ฆ„์„ IP๋กœ ๋ฐ”๊พผ๋‹ค"๋Š” ํ•œ ์ค„๋กœ ์š”์•ฝ๋˜์ง€๋งŒ, ๊ทธ ํ•œ ์ค„ ๋’ค์— ๋ถ„์‚ฐ ๊ณ„์ธต ๊ตฌ์กฐ, ์บ์‹ฑ, ์ „์†ก ๊ณ„์ธต ํด๋ฐฑ, ๊ทธ๋ฆฌ๊ณ  ์ธ์ฆ ์—†๋Š” ์„ค๊ณ„์—์„œ ๋น„๋กฏ๋œ ์˜จ๊ฐ– ๊ณต๊ฒฉ๊ณผ ๋ฐฉ์–ด๊ฐ€ ์–ฝํ˜€ ์žˆ๋‹ค. ๋„คํŠธ์›Œํฌ์—์„œ "์ด๋ฆ„์ด ์•ˆ ํ’€๋ฆฐ๋‹ค"๋Š” ๋ฌธ์ œ๋ฅผ ๋งŒ๋‚˜๋ฉด, ์ด ๊ธ€์—์„œ ๋ณธ ์ˆœ์„œ๋Œ€๋กœ ๋ฆฌ์กธ๋ฒ„ ์„ค์ • โ†’ ์บ์‹œ โ†’ authoritative ๊ฐ’ โ†’ ์ „์†ก ๊ฒฝ๋กœ๋ฅผ ์ขํ˜€๊ฐ€๋ฉด ์›์ธ์„ ๋น ๋ฅด๊ฒŒ ์ฐพ์„ ์ˆ˜ ์žˆ๋‹ค.


์‹ค๋ฌด ์ ๊ฒ€ ์ฒดํฌ๋ฆฌ์ŠคํŠธ

์•ž์—์„œ ๋‹ค๋ฃฌ ํ•ญ๋ชฉ์„ ์ ๊ฒ€ ์ˆœ์„œ๋กœ ์ •๋ฆฌํ–ˆ๋‹ค. ๋„๋ฉ”์ธ์„ ์šด์˜ํ•˜๊ฑฐ๋‚˜ DNS ์ธํ”„๋ผ๋ฅผ ์ ๊ฒ€ํ•  ๋•Œ ํ›‘์–ด๋ณผ ๋ชฉ๋ก์ด๋‹ค.

authoritative ์„œ๋ฒ„ (๋‚ด๊ฐ€ ์šด์˜ํ•˜๋Š” ๋„๋ฉ”์ธ)

  • ์กด ์ „์†ก(AXFR)์ด ์•„๋ฌด์—๊ฒŒ๋‚˜ ์—ด๋ ค ์žˆ์ง€ ์•Š์€๊ฐ€ โ€” ์ง€์ •ํ•œ secondary๋กœ๋งŒ ํ—ˆ์šฉ. dig @ns AXFR example.com์ด ์กด ์ „์ฒด๋ฅผ ๋ฑ‰์œผ๋ฉด ์ฆ‰์‹œ ์กฐ์น˜
  • DNSSEC ์„œ๋ช…์ด ์ ์šฉ๋ผ ์žˆ๊ณ  DS ๋ ˆ์ฝ”๋“œ๊ฐ€ ๋ถ€๋ชจ ์กด์— ๋“ฑ๋ก๋๋Š”๊ฐ€ โ€” ์„œ๋ช…๋งŒ ํ•˜๊ณ  DS๋ฅผ ์•ˆ ์˜ฌ๋ฆฌ๋ฉด ์‹ ๋ขฐ ์ฒด์ธ์ด ๋Š๊ฒจ ๊ฒ€์ฆ๋˜์ง€ ์•Š๋Š”๋‹ค
  • CAA ๋ ˆ์ฝ”๋“œ๋กœ ์ธ์ฆ์„œ ๋ฐœ๊ธ‰ CA๋ฅผ ์ œํ•œํ–ˆ๋Š”๊ฐ€
  • SPFยทDKIMยทDMARC(TXT)์™€ ๋ฉ”์ผ ์„œ๋ฒ„ PTR์ด ์„ค์ •๋๋Š”๊ฐ€
  • ๋ ˆ์ง€์ŠคํŠธ๋ผ ๊ณ„์ •์— MFA + ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ ์ž ๊ธˆ์ด ๊ฑธ๋ ค ์žˆ๋Š”๊ฐ€ โ€” NS๋ฅผ ํ†ต์งธ๋กœ ๋ฐ”๊พธ๋Š” ํ•˜์ด์žฌํ‚น์˜ ๋ฐฉ์–ด์„ 

recursive ๋ฆฌ์กธ๋ฒ„ (๋‚ด๊ฐ€ ์šด์˜ํ•˜๋Š” ๋ฆฌ์กธ๋ฒ„)

  • ๊ฐœ๋ฐฉํ˜• ์žฌ๊ท€(open resolver)๊ฐ€ ์•„๋‹Œ๊ฐ€ โ€” ์™ธ๋ถ€ ์•„๋ฌด๋‚˜ ์“ธ ์ˆ˜ ์žˆ์œผ๋ฉด ์ฆํญ DDoS์˜ ๋ฐœํŒ์ด ๋œ๋‹ค
  • ์ถœ๋ฐœ์ง€ ํฌํŠธ ๋ฌด์ž‘์œ„ํ™”์™€ Response Rate Limiting(RRL)์ด ์ผœ์ ธ ์žˆ๋Š”๊ฐ€
  • DNS ๋ฆฌ๋ฐ”์ธ๋”ฉ ๋ณดํ˜ธ๊ฐ€ ์ผœ์ ธ ์žˆ๋Š”๊ฐ€ โ€” ์™ธ๋ถ€ ๋„๋ฉ”์ธ์ด ์‚ฌ์„ค IPยท๋ฃจํ”„๋ฐฑ์œผ๋กœ ํ•ด์„๋˜๋Š” ์‘๋‹ต ์ฐจ๋‹จ
  • DNSSEC ๊ฒ€์ฆ(validating resolver)์„ ํ•˜๋Š”๊ฐ€ โ€” ์„œ๋ช…์ด ์žˆ์–ด๋„ ๊ฒ€์ฆํ•˜์ง€ ์•Š์œผ๋ฉด ์˜๋ฏธ๊ฐ€ ์—†๋‹ค

๋„คํŠธ์›Œํฌยท์—”๋“œํฌ์ธํŠธ ํ†ต์ œ

  • TCP 53์ด ๋ฐฉํ™”๋ฒฝ์—์„œ ๋ง‰ํ˜€ ์žˆ์ง€ ์•Š์€๊ฐ€ โ€” ๋ง‰์œผ๋ฉด 512๋ฐ”์ดํŠธ ์ดˆ๊ณผ ์‘๋‹ต(DNSSEC ๋“ฑ)์ด ์‹คํŒจํ•œ๋‹ค
  • ๋‚ด๋ถ€ ํ˜ธ์ŠคํŠธ๊ฐ€ ์ง€์ •๋œ ๋‚ด๋ถ€ ๋ฆฌ์กธ๋ฒ„๋กœ๋งŒ ์กฐํšŒํ•˜๊ฒŒ ๊ฐ•์ œ๋˜๋Š”๊ฐ€ โ€” ์™ธ๋ถ€๋กœ ์ง์ ‘ ๋‚˜๊ฐ€๋Š” 53 ์ฐจ๋‹จ
  • ์™ธ๋ถ€ ๊ณต๊ฐœ DoH ์„œ๋ฒ„๋กœ์˜ ์ง์ ‘ ์—ฐ๊ฒฐ์ด ์ฐจ๋‹จ๋˜๋Š”๊ฐ€ โ€” DoH๋Š” 443์— ์ˆจ์–ด DNS ๊ธฐ๋ฐ˜ ํ†ต์ œ๋ฅผ ์šฐํšŒํ•œ๋‹ค
  • DNS ์งˆ์˜ ๋กœ๊ทธ๋ฅผ ์ˆ˜์ง‘ยท๋ถ„์„ํ•˜๋Š”๊ฐ€ โ€” ๊ธด ์„œ๋ธŒ๋„๋ฉ”์ธ, ๋†’์€ NXDOMAIN ๋น„์œจ, TXT/NULL ๊ธ‰์ฆ์€ ํ„ฐ๋„๋ง ์‹ ํ˜ธ
  • ์ถœ๋ฐœ์ง€ IP ์œ„์กฐ ์ฐจ๋‹จ(BCP38, uRPF)์ด ์ ์šฉ๋๋Š”๊ฐ€

๋ณ€๊ฒฝ ์ž‘์—… ์ „

  • IPยท์„œ๋ฒ„ ์ด์ „ ๋ฉฐ์น  ์ „์— TTL์„ ๋‚ฎ์ท„๋Š”๊ฐ€ โ€” ์ „ํ™˜ ํ›„ ๋‹ค์‹œ ์›๋ณต
  • ๋ณ€๊ฒฝ ํ›„ authoritative์™€ ๊ณต๊ฐœ ๋ฆฌ์กธ๋ฒ„ ๊ฐ’์„ ๋”ฐ๋กœ ํ™•์ธํ–ˆ๋Š”๊ฐ€ โ€” dig @authoritative-ns vs dig @8.8.8.8

์ด ์‹œ๋ฆฌ์ฆˆ์˜ ๋‹ค์Œ ๊ธ€: DNS๋กœ IP๋ฅผ ์ฐพ๊ณ  TCP๋กœ ์—ฐ๊ฒฐ์„ ๋งบ์—ˆ๋‹ค๋ฉด, ๊ทธ ์œ„์—์„œ ์‹ค์ œ ๋ฐ์ดํ„ฐ๊ฐ€ ์˜ค๊ฐ€๋Š” HTTP์™€ HTTPS/TLS ํ•ธ๋“œ์…ฐ์ดํฌ๋ฅผ ๋œฏ์–ด๋ณผ ์˜ˆ์ •์ด๋‹ค. TLS๊ฐ€ ์–ด๋–ป๊ฒŒ ํ‚ค๋ฅผ ๊ตํ™˜ํ•˜๊ณ  ์‹ ์›์„ ๊ฒ€์ฆํ•˜๋Š”์ง€, ์ธ์ฆ์„œ ์ฒด์ธ์€ ์–ด๋–ป๊ฒŒ ์‹ ๋ขฐ๋˜๋Š”์ง€, ๊ทธ๋ฆฌ๊ณ  ๊ทธ ์‚ฌ์ด์˜ ๊ณต๊ฒฉ(๋‹ค์šด๊ทธ๋ ˆ์ด๋“œยทMITM)๊นŒ์ง€ ๋‹ค๋ฃฌ๋‹ค.


์ฐธ๊ณ ๋ฌธํ—Œ


๊ด€๋ จ ๊ธ€


  1. RFC 1034. "Domain Names โ€” Concepts and Facilities." IETF, 1987. https://www.rfc-editor.org/rfc/rfc1034โ†ฉ
  2. RFC 1035. "Domain Names โ€” Implementation and Specification." IETF, 1987. https://www.rfc-editor.org/rfc/rfc1035โ†ฉ
  3. RFC 6891. "Extension Mechanisms for DNS (EDNS(0))." IETF, 2013. https://www.rfc-editor.org/rfc/rfc6891โ†ฉ
  4. RFC 7873. "Domain Name System (DNS) Cookies." IETF, 2016. https://www.rfc-editor.org/rfc/rfc7873โ†ฉ
  5. Cloudflare. "SAD DNS Explained." Cloudflare Blog. https://blog.cloudflare.com/sad-dns-explained/โ†ฉ
  6. Palo Alto Networks. "What Is DNS Rebinding?" Cyberpedia. https://www.paloaltonetworks.com/cyberpedia/what-is-dns-rebindingโ†ฉ
  7. RFC 4033. "DNS Security Introduction and Requirements (DNSSEC)." IETF, 2005. https://www.rfc-editor.org/rfc/rfc4033โ†ฉ
  8. RFC 7858. "Specification for DNS over Transport Layer Security (TLS)." IETF, 2016. https://www.rfc-editor.org/rfc/rfc7858โ†ฉ
  9. RFC 8484. "DNS Queries over HTTPS (DoH)." IETF, 2018. https://www.rfc-editor.org/rfc/rfc8484โ†ฉ

@leekh8
๋ณด์•ˆ, ์›น ๊ฐœ๋ฐœ, Python์„ ๋‹ค๋ฃจ๋Š” ๊ธฐ์ˆ  ๋ธ”๋กœ๊ทธ