1. 네트워크 구성
2. 장비 및 IP 정보
- CentOS Master_DNS_Server (172.16.150.1/24)
- CentOS DHCP_Server, Slave_DNS_Server (172.16.150.2/24)
- Window7 Client (DHCP 구성)
- 해당 네트워크는 172.16.150.0/24 대역 네트워크를 사용하고 있고 스위치, 라우터를 통해서 외부 네트워크로 통신이 가능하다.
- DNS_Server(172.16.150.1/24)에 DNS 서버를 구축한 후 Window_Client와 DHCP_Server에서 DNS 조회가 가능하도록 설정하려고 한다.
DNS 동작 과정이 궁금하다면 아래 링크 클릭
3. DNS 서버 IP 설정 확인
- IP 확인 명령어를 입력하여 172.16.150.1로 정상적으로 설정되어 있는지 확인한다.
ifconfig
- DNS 서버 주소가 자신의 IP 주소(172.16.150.1)로 설정되어 있는지 확인하기 위해서 resolv.conf 파일에 들어가서 확인한다.
vi /etc/resolv.conf
4. DNS 서버 설치
- DNS 서버를 dnf 명령어를 통해 설치한다.
dnf -y install bind*
- 다운로드를 완료하였다면 bind 관련 파일들이 설치되었는지 확인한다.
rpm -qa | grep bind
1) Named.conf 파일 수정 (환경설정)
- DNS 설정 파일로 들어간 후 몇 가지 항목들을 수정해 준다.
vi /etc/named.conf
Listen-on port 53: UDP 53번 포트로 들어오는 것은 어떤 것이든(any) 듣겠다는 의미이다.
allow-query: 어떠한 것이든(any) 요청하는 쿼리를 허용하겠다는 의미이다.
2) 도메인 생성
- 정방향 조회 영역 파일과 역방향 조회 영역을 파일을 지정하기 위해 named.rfc1912.zones 파일을 수정한다.
- 원본파일을 /etc/named.conf.origin 경로에 백업해둔다.
cp -p /etc/named.conf /etc/named.conf.origin
vi /etc/named.rfc1912.zones
- 정방향 조회 영역(sunkistlike.com)을 설정한 후 파일 이름을 sunkistlike.com.db로 설정한다.
- 역방향 조회 영역(1.150.16.172)을 설정한 후 파일 이름을 sunkistlike.com.rdb로 설정한다.
- 해당 두 파일이 /var/named 경로 안에 존재해야 한다.
- 입력을 완료한 이후에 아래 명령어를 친 후 문제가 없다면 아무런 출력이 뜨지 않는다.
- 만약 오류가 뜬다면 이전 파일로 돌아가서 오류를 찾은 후 다시 실행한다.
named-checkconf /etc/named.rfc1912.zones
named-checkconf /etc/named.conf
- 조회영역 설정 파일이 있는 /var/named 로 이동한 후 named.rfc1912.zones에서 지정한 파일을 생성해준다.
- named.localhost라는 정방향 조회 영역 sample 파일을 권한까지 복사해 오기 위해서 pv 옵션을 주고 정방향 조회영역 파일을 복사한다.
- named.loopback이라는 역방향 조회 영역 또한 같은 방식으로 역방향 조회영역 파일을 복사한다.
권한까지 복사하지 않으면 소유그룹이 named에서 root로 변경되어서 DNS조회가 실행되지 않는다.
cd /var/named
cp -pv named.localhost sunkist.like.com.db
cp -pv named.loopback sunkist.like.com.rdb
3) 정방향 조회영역 설정
vi sunkistlike.com.db
- www.sunkistlike.com.항목 DNS zone의 기본 이름을 식별하기 위한 항목이다. (FQDN으로 작성)
- 일련번호 (수정 시 증가), 새로고침 시간, 다시 시도 간격, 만료시간 등을 설정할 수 있다.
- 호스트의 이름을 정의하기 위해서 A레코드를 추가해준 후 자신의 IP 주소를 적는다. (sunkistlike.com)
- ns.sunkistlike.com으로도 조회가 가능하도록 도메인의 네임서버도 등록한다. (ns.sunkistlike.com)
- 만약 메일 서버를 구축했다면 mail 레코드를 적고 mail서버의 IP주소를 등록한다. (mail.sunkistlike.com)
4) 역방향 조회 영역 설정
vi sunkistlike.com.rdb
- ns.sunkistlike.com 도메인이 IP주소로도 인식할 수 있도록 PTR레코드를 등록한다.
5. DNS 서버 구동
- 모든 설정이 완료되었다면 systemctl명령어를 통해서 DNS 서버를 구동시킨다.
systemctl restart named
systemctl enable named
- 방화벽에서 DNS가 UDP 53번 포트를 사용하므로 방화벽을 열어준다.
firewalld-cmd --permanet --add-service=dns
6. Client에서 nslookup 테스트
- Window Client에서 nslookup을 통해 정방향, 역방향 조회가 정상적으로 이루어지는 것을 확인할 수 있다.
7. Zone-Transfer (영역 전송)
DHCP 서버(172.16.150.2)에 부 DNS를 생성하려고 한다.
1) 영역전송 설정 내용 추가
- rfc1912.zones파일에 영역 전송 IP를 설정한다.
- 완료되었다면 named-checkconf를 통해 오류가 있는지 확인하고 없다면 서비스를 재시작 한다.
(dapara.com으로 도메인을 추후에 변경하였으니 dapara.com 을 sunkistlike.com으로 바꿔서 입력하면 된다.)
vi /etc/named.rfc1912.zones
2) DHCP 서버에 DNS 설치
- bind, bind-chroot 를 설치한다.
dnf -y install bind bind-chroot
3) named.conf 파일 수정
- 주서버와 동일하게 윗 부분을 수정해준다.
- 밑으로 내려가서 Slave설정을 입력한다.
- 설정이 완료되면 named-checkconf를 통해 이상이 있는지 확인하고 없다면 서비스를 시작하고 방화벽을 열어준다.
8. 기타 DNS 설정 파일들
1) Root Hint 확인
- name.ca 파일 안에 Root Hint 정보가 들어있다.
less /var/named/name.ca
'Server > Linux' 카테고리의 다른 글
[Linux] Umask, 특수 권한 설정 (setUID, setGID, sticky) (0) | 2020.01.30 |
---|---|
[Linux] 디렉터리, 파일 권한 설정 (0) | 2020.01.30 |
[Linux] su, sudo 명령어 설명, 일반 사용자에게 Root 권한 부여 방법 (0) | 2020.01.29 |
[Linux] 사용자 그룹 관리 (groupadd, groupmod, groupdel) (0) | 2020.01.29 |
[Linux] CentOS 8 DHCP 서버 구축 (0) | 2019.12.27 |
공부&일상 블로그
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요! 질문은 언제나 환영입니다😊