본문 바로가기

리눅스(Linux)/네임 서버 기본 개념및 구축

네임 서버3

3. 마스터 네임 서버

마스터 네임 서버는 도메인에 속해 있는 컴퓨터들의 이름을 관리하고, 외부에서 컴퓨터 IP주소를 알기 원할 때, 해당 컴퓨터의 IP 주소를 알려주는 네임 서버를 말한다. 다시 말하면, 자신이 별도로 관리하는 도메인이 있으며, 외부에서 자신이 관리하는 컴퓨터의 IP 주소를 물어볼 때, 자신의 DB에서 찾아서 알려주는 네임 서버를 마스터 네임 서버라고 부른다.

 

3.1 마스터 네임 서버 구성

 

마스터 네임 서버 구성도 

마스터 네임 서버 구성도의 설명은 다음과 같다.

a. Client에서 접속을 시도할 때 다음과 같은 순서로 진행된다.

  • 설정된 네임 서버인 192.168.111.100에게 www.nate.com의 IP 주소를 요청한다.
  • 192.168.111.100은 자신의 DB를 검색해 www.nate.com이 이 있는지 확인하고, 해당 내용이 없을 경우에 외부 인터넷에서 www.nate.com의 의 주소를 알아온다.
  • 알아온 www.nate.com의 IP 주소를 Client에게 알려준다.

b. Client에서 www.john.com의 의 접속을 시도할 떄의 과정을 알아보자.

  • 설정된 네임 서버인 192.168.111.100에게 www.john.com의 IP 주소를 요청한다.
  • 192.168.111.100은 자신의 DB를 검색해 www.john.com이 있는지 확인한다. 그런데 john.com은 자신이 관리하는 도메인으로, www.john.com의 IP 주소(192.168.111.100)와 ftp.john.com의 IP 주소(192.168.111.200)을 갖고 있기 때문에 외부 인터넷으로 나갈 필요 없이 바로 Client에게 해당 IP 주소를 알려준다.

c. 구성도 왼쪽 위에 표현한 외부 '인터넷 상의 컴퓨터'에서 ftp.john.com에 접속할 때의 순서를 알아보자.

  • 외부 인터넷상의 컴퓨터는 자신의 로컬 네임 서버에게 ftp.john.com의 IP 주소를 요청한다.
  • 로컬 네임 서버가 ftp.john.com의 IP 주소를 모를 경우, 'Root 네임 서버' 에게 IP 주소를 요청한다. Root 네임 서버는 'COM 네임 서버'의 주소를 알려주며 그 쪽에 요청하도록 한다.
  • 로컬 네임 서버는 다시 COM의 네임 서버에게 의뢰한다. COM 네임 서버는 john.com의 도메인을 관리하는 'john.com 네임 서버'의 IP 주소인 192.168.111.100을 로컬 네임 서버 A에게 알려준다.
  • 로컬 네임 서버는 john.com 네임 서버인 192.168.111.100에게 ftp.john.com의 IP 주소를 요청한다.
  • john.com 네임 서버는 자신의 DB에 ftp.john.com의 IP 주소가 있으므로, ftp.john.com의 IP 주소인 192.168.111.200을 알려준다.
  • 로컬 네임 서버는 ftp.john.com의 IP 주소인 192.168.111.200을 요청했던 인터넷상의 컴퓨터에게 알려준다.
  • 인터넷상의 컴퓨터는 192.168.111.200으로 접속한다.

3.2 마스터 네임 서버 구축 실습

목표: john.com의 마스터 네임 서버를 설치하고 운영해보자.

 

a. 지난 캐싱 네임 서버 실습에서 이어서 한다.

b. 웹 서버 설정하기.

  • rpm -qa httpd   // 웹 서버가 설치되었는지 확인.
  • yum -y install httpd  // 웹 서버가 설치되어 있지 않을 경우 웹 서버 패키지 설치.
  • systemctl start httpd   // 웹 서비스(httpd) 시작.
  • systemctl status httpd   // 웹 서비스가 잘 작동하는지 확인.

웹 서비스가 잘 작동하고 있음을 확인.

  • firewall-cmd --permanent --add-service=http   //firewall 설정 
  • firewall-cmd --reload   
  • 'gedit /var/www/html/index.html'를 입력해 /var/www/html/ 디렉터리에 index.html 파일을 만든다. 그리고 '<h1> CentOS 7. 웹 서버입니다. <h1>'을 입력 후 저장.

초기 웹 페이지 작성 

  • 이로써 간단한 웹 서버 구축이 완료됨.

c. FTP 서버를 설치 및 설정하기. (Server (B))

  • yum -y install vsftpd    // FTP 서버 설치.
  • firewall-cmd --permanent --add-service=ftp  //firewall 설정
  • firewall-cmd --reload
  • cd /var/ftp/        // /var/ftp/ 디렉터리로 이동
  • vi welcome.msg         // welcome.msg라는 빈 파일을 생성.
  • 다음 내용을 채운 후 저장 후 닫기.

외부에서 FTP 서버로 접속했을 때, 위의 내용을 환영 메시지로 보여주라는 의미.

 

  • systemctl restart vsftpd        //FTP 서버 시작.
  • 이로써 간단한 FTP 서버 구축이 완료됨.

d. john.com 도메인에 대한 설정

  • vi /etc/named.conf            //named.conf 파일 열기            

/etc/named.conf 편집 

 

 

  • type master; = 마스터 네임 서버는 master
  • file "john.com.db"; = options의 directory에 생성될 "도메인 이름"의 상세 설정 파일
  • allow-update { none; }; = 2차 네임 서버의 주소. 생략하면 none으로 됨 

 

  • named-checkconf         //문법상 틀리지 않았는지 확인.
  • cd /var/named/           // 해당 디렉터리로 이동.
  • touch john.com.db       // joh.com.db라는 이름의 빈 파일을 생성. 이 파일을 포워드 존 파일이라고 한다.
  • gedit john.com.db로  파일을 열고 다음 내용을 입력.

john.com.db 파일 편집

  • $TTL : Time To Live의 약자로 www.john.com의 호스트 이름을 질의해갔을 때, 질의해간 다른 네임 서버가 해당 IP 주소를 캐시에 저장하는 시간. 3H는 3시간을 의미.
  • @: /etc/named.conf에 정의된 john.com을 의미.
  • IN: 클래스 이름으로 internet을 의미.
  • SOA: Start Of Authority 약자로 권한의 시작을 뜻한다. 또, 괄호 안의 숫자는 시간을 의미하는데 차례로 '버전 정보', '상위 네임 서버에 업데이트된 정보를 요청하는 간격', '상위 네임 서버에 문제가 발생했을 때 재 접속 간격', '상위 네임 서버에 접속하지 못할 경우 이전의 정보를 파기하는 간격', '이 시간 이후에 정보가 삭제됨'을 말한다. 여기서 D는 Day, W는 Week, H는 Hour를 의미.
  • NS: Name Server의 약자로 설정된 도메인의 네임 서버 역할을 하는 컴퓨터를 지정한다.
  • MX: Mail Exchanger의 약자로 메일 서버 컴퓨터를 설정한다.
  • A: 호스트 이름에 상응하는 IP 주소를 지정한다.
  • CNAME: 호스트 이름에 별칭을 부여할 때 사용.

 

  • named-checkzone john.com john.com.db         //설정한 파일의 문법에 이상이 없는지 확인

문법 체크 

 

  • systemctl restart named               //네임 서비스 시작
  • firewall-cmd --permanent --add-service=dns        //firewall 설정

e. Client에서 마스터 네임 서버의 정상적인 작동을 확인해보기

  • cat /etc/resolv.conf을 입력해서 네임 서버가 192.168.111.100으로 변경 되어 있는지 확인.

 

 

  • 웹 브라우저에서 www.john.com으로 접속해보기 

www.john.com에 접속

 

  • su -c 'yum -y install ftp'         //root권한을 부여받아 ftp 패키지 설치
  • ftp.john.com으로 접속해보기

ftp.john.com에 접속.

 

 

 

'리눅스(Linux) > 네임 서버 기본 개념및 구축 ' 카테고리의 다른 글

네임 서버 2  (0) 2019.06.25
네임 서버 1  (0) 2019.06.25