🐧DNS 란?
- 도메인 네임 시스템(Domain Name System, DNS) 은 호스트의 도메인네임을 네트워크 주소(192.168.1.0)로 변환 하거나 그 반대의 역할의 수행하는 시스템
- 자주 접할 수 있는 www.naver.com , www.google.com, www.daum.net 등 모두 DNS를 가진 DN(Domain Name)이라고 할 수 있다.
사용자가 도메인을 입력하면 위와 같은 과정을 거치게 된다 .
🐤 DNS 동작 순서
[출처](https://inpa.tistory.com/entry/WEB-%F0%9F%8C%90-DNS-%EA%B0%9C%EB%85%90-%EB%8F%99%EC%9E%91-%EC%99%84%EB%B2%BD-%EC%9D%B4%ED%95%B4-%E2%98%85-%EC%95%8C%EA%B8%B0-%EC%89%BD%EA%B2%8C-%EC%A0%95%EB%A6%AC)
- 웹 브라우저에 주소를 입력하면 먼저 PC에 저장된
Local DNS
에게 IP주소 요청한다.
Local DNS???
: 인터넷을 사용하기 위해선 IP를 할당해주는 통신사(KT, SK, LG 등...)에 등록하게 된다.
컴퓨터의 LAN선을 통해 인터넷이 연결되면, 가입했던 각 통신사의 기지국 DNS 서버가 등록되게 된다.
그러니까 KT를 사용하는 집이면 KT DNS가 되고, SK통신사 사용하는 집이면 SK DNS가 자동으로 셋팅 된다.
- Local DNS 는 IP주소를 찾아내기 위해 다른 DNS 서버들과 통신을 시작한다.
Root DNS
서버에게 IP주소를 요청한다.
Root DNS???
: 인터넷의 도메인 네임 시스템의 루트 존!!!!!
ICANN이 직접 관리하는 절대 존엄 서버로, TLD DNS 서버 IP들을 저장해두고 안내하는 역할을 한다.
전세계에 961개의 루트 DNS가 운영되고 있다.
-
Root DNS 서버가 찾을수 없어 Local 에게 주소를 찾을 수 없으니 다른 서버에게 물어봐라고 응답한다.
-
com 도메인을 관리하는 TLD DNS 서버(최상위 도메인 서버) 에게 다시 IP주소를 요청한다.
-
com 서버가 찾을수 없어 Local 에게 주소를 찾을 수 없으니 다른 서버에게 물어봐라고 응답한다.
-
Local DNS 서버는 DNS 서버(Authoritative DNS 서버)
에게 다시 "www.naver.com 의 IP 주소" 를 요청한다.
-
naver.com DNS 서버 에는 "www.naver.com 의 IP 주소" 가 있다.그래서 Local DNS 서버에게 "www.naver.com에 대한 IP 주소는 222.122.195.6" 라는 응답을 한다.
-
이를 수신한 Local DNS는 www.naver.com 의 IP 주소를 캐싱
을 하고 이후 다른 요청이 있을시 응답할 수 있도록 IP 주소 정보를 단말(PC)에 전달해 준다
💡 Local DNS 서버가 여러 DNS 서버에 차례대로 (Root DNS 서버 → TLD DNS 서버(.com) → Authoritative DNS 서버(naver.com) 요청하여 그 답을 찾는 과정을 **재귀적 쿼리 Recursive Query**라고 부른다.
🐧DNS/load balancing
[출처](http://gigatera.co.kr/wp/dns%EB%A5%BC-%ED%99%9C%EC%9A%A9%ED%95%9C-%EB%A1%9C%EB%93%9C%EB%B0%B8%EB%9F%B0%EC%8B%B1load-balancing/)
- 2대 이상의 서버를 운용하여 트래픽을 몰릴경우를 대비해 분산시켜주는 경우, 이런 기술들을 로드밸런싱이라고 한다.
- 로드밸런싱을 위한 대부분의 응용 프로그램은 다수의 서버를 가지고 한가지 종류의 인터넷 서비스를 지원하는 방식이다. 보통 트래픽이 많은 웹 사이트, IRC 네트워크, FTP 사이트, NNTP 서버, 그리고 DNS 서버에 적용이 되고 있다.
- 인터넷 서비스를 위해서는 소프트웨어를 이용한 로드밸런싱이 적용되며, 이 소프트웨어는 중간에 위치해 실제 서비스하는 서버와 클라이언트를 포트를 이용해 중개하고 있다. 그러나 사용자들은 이를 알아차리지 못하며, 이를 투명성이라고 한다.
- 또한, 보안이라는 측면에서 내부 네트워크 구조를 숨김으로서 크래킹을 막을 수 있다.