CS/네트워크

DNS 서버와 hosts 파일

zeomzzz 2024. 10. 16. 00:57
728x90

DNS(Domain Name System)란?

  • 도메인 주소를 ip주소로 변환하거나 그 반대의 역할을 수행하는 시스템
  • 사용하는 이유
    • IP 주소보다 도메인 주소를 이용하는 것이 사용자 입장에서 더 편리
    • 서버 IP 변경에 쉽게 대응할 수 있음
더보기

도메인으로 IP 주소 확인 방법

    • ping을 날려봄
    • ex. naver.com에 ping 날려서 ip 확인하기

 

 

DNS 작동 원리

1. 웹 브라우저에 http://www.naver.com을 입력하면 먼저 PC에 저장된 Local DNS에게 "http://www.naver.com"이라는 hostname에 대한 IP 주소를 요청
(만일, Local DNS에 해당 IP 주소가 없지만, 이전에 접속한 적이 있어 Local DNS에 접속정보가 캐싱이 되어있다면 바로 PC에 IP 주소를 주고 웹페이지에 접속)
없다면, Local DNS는 IP 주소를 찾아내기 위해 다른 DNS 서버들과 통신(DNS 쿼리)을 시작

 

2. Root DNS 서버에게 "http://www.naver.com의 IP 주소"를 요청

3. Root DNS 서버 는 "http://www.naver.com 의 IP 주소" 를 찾을 수 없어 Local DNS 서버에게 "http://www.naver.com의 IP 주소를 찾을 수 없음. 다른 DNS 서버에게 물어봐" 라고 응답

4. Local DNS 서버는 com 도메인을 관리하는 TLD DNS 서버(최상위 도메인 서버)에 IP 주소를 요청

5. TLD DNS 서버에도 해당 정보가 없으면, Local DNS 서버에게 "http://www.naver.com의 IP 주소를 찾을 수 없음. 다른 DNS 서버에게 물어봐" 라고 응답

6. Local DNS 서버는 naver.com DNS 서버(Authoritative DNS 서버)에게 다시 IP 주소를 요청

7. naver.com DNS 서버에는 "http://www.naver.com 의 IP 주소" 가 있음. 그래서 Local DNS 서버에게 IP 주소를 응답

8. 이를 수신한 Local DNS는 http://www.naver.com 의 IP 주소를 캐싱을 하고 이후 다른 요청이 있을시 응답할 수 있도록 IP 주소 정보를 단말(PC)에 전달

 

DNS 서버 구축하기

  • 서버에 직접 DNS 서버를 구축하여 사용할 수 있음
    • ex. Linux : bind 패키지 이용
  • IP 매핑 정보를 자동으로 업데이트하거나, 내부 관리자에 의해서만 업데이트 되도록 설정할 수 있음
    • 자동 업데이트 : DHCP, IPAM 등의 IP 할당 시스템이 연동된 경우

 

 

hosts 파일

  • 도메인과 IP 주소를 매핑한 파일로, DNS 기능이 개발되기 전부터 사용하던 방식
  • DNS에 대한 질의보다 우선순위가 높음
  • DNS에 매핑된 IP가 변경되어도 직접 업데이트 하지 않으면 IP 변경 사항을 반영할 수 없음
더보기

hosts 파일 확인하기

  • Linux : /etc/hosts

 

 


참고자료

 

728x90