우리는 도메인(www.naver.com) 를 통해 웹 브라우저에 접근한다.
하지만 실제로는 도메인이 가진 IP 주소로 웹브라우저에 접근한다.
우리가 입력한 도메인을 IP 주소로 변환되어 해당 웹 브라우저에 접근하는데, 이를 변환 시켜주는 시스템이 DNS
입력한 도메인을 IP 주소로 변환시켜주는 시스템 - DNS
도메인 네임 스페이스(Domain Name Space)
: 최상위 루트 DNS 서버가 존재 하고, 그 하위로 인터넷에 연결된 모든 노드가 연속해서 계층으로 구성
( 루트(최상위) - 탑레벨 하위노드 (net,com,org) - 세컨드레벨 하위노드 (secret) ) 연속된 노드로 구성
네임 서버(Name Service)
: 주소를 변환 시키기 위해 도메인 네임 스페이스의 트리구조에 대한 정보가 필요.
이 정보를 가진 서버 도메인 이름을 IP주소로 변환하는 것을 네임 서비스
- 도메인 네임 스페이스 트리구조에 대한 정보를 가지고 있는 서버,
이 서버에 접근 하기 위해
이 서버 도메인 이름을 IP주소로 변환 시키는것
DNS Query (from Web Browser to Local DNS) // 웹 브라우저가 로컬 DNS에게
: "제가 원하는 웹 사이트의 IP 주소를 알고 계신가요?" Local DNS 서버에게 전달
DNS Query (from Local DNS to Root DNS) // 로컬 DNS가 ROOT DNS 에게
: "제가 원하는 웹 사이트의 IP 주소를 알고 계신가요?" Root DNS서버에게 전달
DNS Response (from Root DNS to Local DNS) // ROOT DNS가 로컬 DNS 에게
: "저는 모르지만 , Com 도메인을 관리하는 네임서버의 이름과 IP 주소를 알려드릴 테니 거기에 물어보세요"
DNS Query (from Local DNS to com NS) // 로컬 DNS가 com NS에게 (ROOT DNS가 알려줌)
: “ 안녕하세요. www. naver. com의 IP 주소를 알고 계신가요?"
DNS Response (from com NS to Local DNS) // com NS 가 로컬 DNS에게
: "저는 모르지만 , Com 도메인을 관리하는 네임서버의 이름과 IP 주소를 알려드릴 테니 거기에 물어보세요"
DNS Query (from Local DNS to naver. com NS) // 로컬 DNS 가 naver.com NS 에게 (com NS 가 알려줌)
: “ 안녕하세요. www. Naver .com의 IP 주소를 알고 계신가요?"
DNS Response (from naver .com NS to Local DNS) // naver.com NS 가 로컬 DNS에게
: "저는 모르지만 해당 웹은 www. g.naver. com이라는 이름으로 통해요. g.naver .com 도메인을 관리하는 네임서버의 이름과 IP 주소를 알려드릴테니 거기에 물어보세요"
DNS Query (from Local DNS to g.naver. com NS) // 로컬 DNS 가 g.naver.com NS 에게
: “ 안녕하세요. www. g.naver. com의 IP 주소를 알고 계신가요?"
DNS Response (from g.naver .com NS to Local DNS) // g.naver.com NS 가 로컬 DNS 에게
: " 네 www. g.naver .com의 IP 주소는 222.222.222.22와 333.333.333.33입니다"
DNS Response (from Local DNS to Web Browser) // 로컬 DNS 가 웹 브라우저 에게
: "네 www. naver .com의 IP 주소는 222.222.222.22와 333.333.333.33입니다"