- google.com에 접속할 때 IP 주소로 변환되어 접속이 이루어진다.
- 애초에 모든 IP를 알고 있을 수는 없다. 따라서 사람은 DNS 주소로 접근
- DNS(도메인 네임 시스템) 서버를 통해 IP를 알게 되고 그 IP를 통해 접근
hosts file(보안에 신경써야 함)
: 네트워크 내의 host들의 도메인 이름이 각각 어떤 IP를 갖는가?
DNS가 있기 전, hosts file이 있었고, 여기에 적혀있는 도메인의 IP를 보고 해당 IP에 접근을 했었음.
도메인 네임과 IP의 맵핑을 마음대로 변조할 수 있음
sudo nano /etc/hosts
- 접근하고싶은 IP에 대한 (로컬에서 사용할)도메인을 여기에 등록해놓을 수 있음만약 여기에 접속하고자하는 도메인의 IP가 존재한다면, DNS 서버에 접속하지 않고 여기껄 그대로 쓴다.
그러나 네트워크가 커지면서, 전 세계 네트워크의 호스트를 관리하기가 불가능
어떠한 경우에 사용?
- 어떠한 특정한 도메인의 IP를 나만 변조해서 사용하고자 할 때
hosts file을 이용한 해커의 공격
- google.com에 해당하는 hosts file의 내용을 바꾸어 놓고
- google과 똑같은 사이트의 이미지를 제공한다.
- 이 때 로그인 정보 등 개인정보를 얻음
DNS Server
: 예전에는 네트워크가 크지 않았고 호스트가 많지 않았기 때문에 호스트 파일로 관리가 가능했었음. 네트워크가 커지면서, 전 지구적인 규모의 이름을 기억하기 위해 만들어짐
/etc/resolv.conf
의 nameserver에 해당하는 것이 DNS 서버의 IP해당 DNS 서버에게 나의 DNS가 IP에 해당한다는 것을 알려주려면 도메인을 구입해야함.
순서: 1. 도메인 가능한지 조회 2. 마음에 드는 것 구매
공짜 ~ 10만원정도로 다양한데 거의 한달에 22000
서브 도메인
: myDomain.com
도메인을 샀다고 할 때, blog.myDomain.com
/ admin.myDomain.com
과 같이 서브 도메인을 이용하면, 하나의 도메인을 구입해 여러 사이트를 운영할 수 있는 장점
DNS 서버 찾기 과정
: 루트 도메인 (뒷쪽) -> 서브 도메인 순으로 IP를 찾는다.
e. g) google.com.
- root dns 서버 : 루트 도메인인
.com
을 관리하는 dns 서버가 누구인지를 물어본다. .com
의 dns 서버 : 서브 도메인인google.com
을 관리하는 dns 서버가 누구인지를 물어본다.google.com
의 dns 서버: 이 도메인의 IP가 무엇인지 물어본다.
Reference)
https://opentutorials.org/course/2598/14471