또 뭐하지
[포너블 기초] 생활코딩 리눅스 섹션 10. 도메인 domain 본문
Domain
1. DNS (Domain name system)
서버에 접속할 때 서버의 이름이 google.com이라고 할 때, 실제로는 google.com의 IP Address로 접속을 하게된다.
브라우저를 통해 google.com에 접속을 시도하면, 먼저 DNS의 IP Address로 접속해 google.com의 IP Address를 묻게되고 응답 받은 값으로 서버에 접속하게 된다.
2, hosts 파일
: 도메인 네임과 IP Address를 매핑하는 파일
각각의 컴퓨터마다 hosts 파일을 가짐. DNS 이전에는 hosts 파일을 통해 접속.
elinks google.com
: google 홈페이지에 접속elinks http://localhost
: 로컬 서버에 접속sudo nano /etc/hosts
: hosts 파일 열람
-> 여기에 127.0.0.1 google.com
을 추가하면 google.com을 입력하면 로컬서버로 접속하게 변조할 수 있다. 이런 특성 때문에 hosts에 대한 악의적인 변조 공격이 있을 수 있다.
어떤 도메인에 접속 시도를 하면 local의 hosts 파일부터 살피게 된다. 찾는 내용이 없을 때 DNS에 접속한다.
network : 각 host의 모임
internet : network의 모임
3. 도메인 구입
cat /etc/resolv.conf
: 접속한 인터넷 서비스 회사에서 제공하는 DNS 서버 주소 열람
도메인 구입 : 도메인 네임과 IP Address를 매핑시키기 위해
도메인 이름의 체계에 따라 관리하는 주체가 다르다 (co.kr , co.jp 등등)
도메인 네임을 독점적으로 사용하고자 한다면 구입해야 한다. com, net, ga 등에서 구입가능하다.
도메인 네임을 구입하고 curl
명령어를 통해 나온 IP 주소를 등록하면 사용 가능하다.
host egoing.ga
: 해당 도메인의 IP 주소를 알 수 있음
4. 서브 도메인
하나의 서버는 하나의 도메인과 매칭
서브 도메인 : 서버가 여러개일때 도메인을 재사용
ex) egoing.ga -> admin.egoing.ga, blog.egoing.ga 등등
5. DNS의 동작 원리
dig +trace egoing.ga
: 도메인의 IP 주소를 리턴하기 위해 거쳐가는 서버들을 알려줌
egoing.ga. : 마지막의 .을 root라고 함
root DNS server : 여러대의 서버로 전세계에 흩어져 있음. 그 리스트를 우리 컴퓨터는 기본적으로 알고 있음.
(1) egoing.ga. 에 접속한다.
(2) root DNS에.ga를 담당하는 DNS 서버 목록을 물어본다.
(3) 반환받은 DNS 서버(ga DNS 서버) 중에 하나에 egoing.ga.를 관리하는 DNS 서버를 물어본다.
(4) 반환받은 DNS 서버(egoing.ga DNS 서버)에 최종적으로 IP 주소를 묻게된다.-> 최종적으로 IP 주소가 나올 때까지 DNS 서버에 묻는 것을 반복한다.
직접 DNS 서버를 구축할 수도 있다!
'I.sly() > 9기 기초 - 포너블' 카테고리의 다른 글
[포너블 기초] 생활코딩 리눅스 섹션 12. 로그인 없이 로그인 하기 ssh key (0) | 2024.04.01 |
---|---|
[포너블 기초] 생활코딩 리눅스 섹션 11. 인터넷을 통한 서버간 동기화 rsync (0) | 2024.04.01 |
[포너블 기초] 생활코딩 리눅스 섹션 9. 인터넷, 네트워크 그리고 서버 (0) | 2024.04.01 |
[포너블 기초] 생활코딩 리눅스 섹션 8. 그룹 (0) | 2024.03.29 |
[포너블 기초] 생활코딩 리눅스 섹션 7. 권한 (0) | 2024.03.29 |