DNS (Domain Name System)
Contents
- Introduction
- IP주소와 Hosts
- Security
- before DNS
- DNS (Domain Name System)
- Public DNS
1. Introduction
IP address를 어떻게 다 외워??
use DNS (Domain Name System)
DNS server에는 수 많은 ip 주소의 domain name이 저장되어있다.
- ip 주소 : 192.0.43.7
- doman name : www.icann.org
2. IP 주소와 Hosts
두 대의 컴퓨터가 서로 통신하기 위해서는 반드시 IP 주소를 가지고 있어야 한다.
각각의 인터넷에 연결된 컴퓨터 하나하나를 “host”라고 한다.
Client의 컴퓨터 내에는 hosts라는 파일 ( = 전화번호부 )이 저장되어 있고,
이 안에는 IP주소:Domain Name 쌍이 저장되어 있다.
- ex) 93.184.216.34 : example.com
내 컴퓨터 내에 hosts가 위치한 곳은? Google it!
- ex) windows hosts file location
- ex) hosts wikipedia
3. Security
만약, 누가 내 컴퓨터 안에 있는 hosts파일을 해킹해서 (피싱) ….
- 93.184.216.34 : example.com 에서
- 18.18.18.18 : example.com 로 변경해놓았다면…?
내가 방문하려던 사이트가 아닌, 엉뚱한 다른 사이트에 접속하게 될 수 있다!
hosts파일은 매우 취약하고, 변조되지 않도록 잘 관리해야 한다!
http”s” : 여기서 s는 “secure”하다는 뜻이다.
- 보안이 잘 되어 있는 사이트라는 뜻!
4. before DNS
DNS가 있기 이전엔 (현재는 사용X 방법)…
- hosts라는 파일에 ip주소&DNS를 개인적으로 저장/관리할 수 있었다.
BUT..이거는 오직 “내” 컴퓨터만 그렇게 접속하게 되는 것!
모든 컴퓨터가 그럴 수 없을까?
Stanford Resaerch Institute라는 곳에서, 전 세계의 hosts파일을 관리했었다.
Example )
-
NAVER : SRI님, 93.184.216.34의 domain name을 naver.com으로 해주세요
-
SRI : 오케이. 갱신완료
( 전 세계의 컴퓨터들이 SRI의 hosts파일을 받아온 다음, 접속을 하게 되는 구조 )
BUT….수작업 변경 과정을 통해 수 많은 시간/비용 소모…
이를 극복하기 위해 등장한 것이 DNS(Domain Name System, 1983)이 등장하게 된 것!
5. DNS (Domain Name System)
Setting
-
컴퓨터 A (client)
- 컴퓨터 B (server)
- DNS 서버
[1] 컴퓨터 B는 DNS 서버에게 :
“저 93.184.216.34는, example.com라는 domain name을 가지고 싶습니다!”라고 전달
[2] DNS 서버는 :
“OK. 저장 완료”
(참고) 컴퓨터 A에는 DNS 서버의 ip주소가 자동으로 세팅된다
[3] 컴퓨터 A는 :
- 우선 hosts 파일에, 요청한 domain name의 IP를 찾아본다. 만약 없으면…
- DNS 서버에게 물어본다!
6. Public DNS
DNS 서버 또한 컴퓨터이기 때문에, 자신만의 IP주소를 가지고 있다.
따라서, 내 컴퓨터도 당연히 DNS 서버의 IP 주소 를 알아야 한다
유명한 대표적인 여러 public DNS 서버들이 있다.
-
구글링 : “Free and Public DNS Server”
ex) 구글 (8.8.8.8)