week11 junghyunlyoo dns - GANGNAM-JAVA/JAVA-STUDY GitHub Wiki

DNS(Domain Name System)?

Domainκ³Ό Ip Address의 mapping μ‹œμŠ€ν…œ

DNS ꡬ성

  • 도메인 λ„€μž„ 슀페이슀(Domain Name Space)
도메인 λ„€μž„ μ‹œμŠ€ν…œμ—μ„œ μ‚¬μš©ν•  데이터 자료ꡬ쑰λ₯Ό μ •μ˜ν•˜λŠ” 사항에 ν•΄λ‹Ή. 

도메인 λ„€μž„ 곡간은 도메인 λ„€μž„μ„ μ€‘λ³΅λ˜μ§€ μ•Šκ²Œ λ„€μž„μ„ μƒμ„±ν•˜μ—¬ μ‚¬μš©ν•˜λ„λ‘ μ •μ˜λœ 도메인 λ„€μž„ ꡬ성 체계.

도메인 λ„€μž„ μ‹œμŠ€ν…œμ—μ„œ ν•˜λ‚˜μ˜ 도메인 λ„€μž„μ€ μœ μΌν•œ 값을 κ°–λŠ”λ‹€.
  • λ„€μž„ μ„œλ²„(Name Server)
λ„€μž„μ„œλ²„λŠ” λ„λ©”μΈμ˜ 데이터λ₯Ό λ³΄μœ ν•œλ‹€. 그리고 μ™ΈλΆ€ μΈν„°λ„·μœΌλ‘œλΆ€ν„° 도메인 λ„€μž„κ³Ό κ·Έ λ„€μž„μ— λŒ€ν•œ 데이터 질의λ₯Ό μˆ˜μ‹ ν–ˆμ„ λ•Œ

λ³΄μœ ν•œ 데이터λ₯Ό κ²€μƒ‰ν•˜μ—¬ μ‘°νšŒν•˜κ³  μ‘λ‹΅ν•˜λŠ” 역할을 λ‹΄λ‹Ήν•˜λ„λ‘ κ΅¬ν˜„ν•œ μ„œλ²„ ν”„λ‘œκ·Έλž¨.
  • 리쑸버(Resolver)
λ¦¬μ‘Έλ²„λŠ” μ›Ή λΈŒλΌμš°μ €μ™€ 같은 DNS ν΄λΌμ΄μ–ΈνŠΈμ˜ μš”μ²­μ„ λ„€μž„ μ„œλ²„λ‘œ μ „λ‹¬ν•˜κ³  

λ„€μž„ μ„œλ²„λ‘œλΆ€ν„° 정보(도메인 이름과 IP μ£Όμ†Œ)λ₯Ό λ°›μ•„ ν΄λΌμ΄μ–ΈνŠΈμ—κ²Œ μ œκ³΅ν•˜λŠ” κΈ°λŠ₯을 μˆ˜ν–‰ν•œλ‹€.

이 κ³Όμ •μ—μ„œ λ¦¬μ‘Έλ²„λŠ” ν•˜λ‚˜μ˜ λ„€μž„ μ„œλ²„μ—κ²Œ DNS μš”μ²­μ„ μ „λ‹¬ν•˜κ³  ν•΄λ‹Ή μ„œλ²„μ— 정보가 μ—†μœΌλ©΄ 

λ‹€λ₯Έ λ„€μž„ μ„œλ²„μ—κ²Œ μš”μ²­μ„ 보내 정보λ₯Ό λ°›μ•„ μ˜¨λ‹€.

ν•˜μ§€λ§Œ μ΄λŸ¬ν•œ λ¦¬μ‘Έλ²„μ˜ λͺ¨λ“  κΈ°λŠ₯을 단말에 κ΅¬ν˜„ν•˜λŠ”κ²ƒμ€ μžμ›μ˜ ν•œκ³„κ°€ μžˆμœΌλ―€λ‘œ λ¦¬μ‘Έλ²„μ˜ λŒ€λΆ€λΆ„μ˜ κΈ°λŠ₯을 DNS μ„œλ²„μ— κ΅¬ν˜„ν•˜κ³ 

ν΄λΌμ΄μ–ΈνŠΈ ν˜ΈμŠ€νŠΈμ—λŠ” λ‹¨μˆœν•œ κΈ°λŠ₯λ§Œμ„ μ§€λ‹Œ 리쑸버가 κ΅¬ν˜„λ˜μ–΄μžˆλ‹€.

μ΄λŸ¬ν•œ λ‹¨μˆœν™”λœ κΈ°λŠ₯의 리쑸버λ₯Ό μŠ€ν„°λΈŒ 리쑸버(Stub Resolver)라고 ν•˜λ©°, μŠ€ν„°λΈŒ λ¦¬μ‘Έλ²„λŠ” 수 λ§Žμ€ λ„€μž„ μ„œλ²„μ˜ ꡬ쑰λ₯Ό νŒŒμ•…ν•  ν•„μš” 없이 

리쑸버가 κ΅¬ν˜„λœ λ„€μž„ μ„œλ²„μ˜ IP μ£Όμ†Œλ§Œ νŒŒμ•…ν•˜λ©΄ λœλ‹€.

DNS λ™μž‘ κ³Όμ •

  1. Local λ„€μž„ μ„œλ²„μ— www.url.com에 λŒ€ν•œ 정보λ₯Ό μš”μ²­
  2. Local λ„€μž„ μ„œλ²„λŠ” www.url.com에 λŒ€ν•œ 정보가 μ—†κΈ° λ•Œλ¬Έμ— root λ„€μž„ μ„œλ²„μ— λ‹€μ‹œ 질의
  3. root λ„€μž„ μ„œλ²„λŠ” www.url.com에 λŒ€ν•œ μ •λ³΄λŠ” μ—†μ§€λ§Œ, λŒ€μ‹  .com 도메인을 κ΄€λ¦¬ν•˜κ³  μžˆλŠ” μ„œλ²„ 정보λ₯Ό λ°˜ν™˜
  4. Local λ„€μž„ μ„œλ²„λŠ” .com λ„€μž„ μ„œλ²„μ— www.url.com에 λŒ€ν•œ 정보 μš”μ²­
  5. .com λ„€μž„ μ„œλ²„λŠ” url 도메인을 κ΄€λ¦¬ν•˜κ³  μžˆλŠ” λ„€μž„ μ„œλ²„ 정보 λ°˜ν™˜
  6. Local λ„€μž„ μ„œλ²„λŠ” url.com λ„€μž„ μ„œλ²„μ— www.url.com에 λŒ€ν•œ 정보λ₯Ό μš”μ²­
  7. url.com λ„€μž„μ„œλ²„λŠ” Local λ„€μž„ μ„œλ²„μ— www.url.com에 λŒ€ν•œ IP λ°˜ν™˜
  8. Local λ„€μž„ μ„œλ²„λŠ” www.url.com의 IP 정보λ₯Ό μ‚¬μš©μž PC에 λ°˜ν™˜
  9. www.url.com에 접속