진짜 개발자
본문 바로가기

Linux/CentOS

CentOS7 - DNS서버 구축

728x90

1. DNS Server

1. DNS 설치

- yum install -y bind*


2. DNS 설정

1. /etc/named.conf 파일 설정

- 이파일을 설정하지 않으면 다른 네트워크의 노드에서 요청하는 쿼리를 응답하지 않는다

1) vi /etc/named.conf

2) 아래와 같이 설정

listen-on port 53 any; : 53 port로 오는 어떠한 것이든 듣겠다

allow-query any; : 어떠한 곳에서 요청하는 쿼리든 허용하겠다


2. /etc/named.rfc1912.zone 파일 설정

-  vi /etc/named.rfc1912.zone 파일을 편집하여 새로운 jjy.com에 대한 Zone을 추가한다

- zone영역 파일의 이름은 "jjy.com.zone" 으로 한다 

- zone 영역 파일은 /var/named/ 하위에 존재해야 한다.

3. /var/named/ 디렉토리 하위에 DNS 존파일 생성

1) 존파일을 처음부터 만들기는 어려우므로 named.localhost 파일을 복사하여 편집한다


2) 아래와 같이 변경한다   


4. /var/named 권한 설정

- chmod -R 754 /var/named


3. DNS 서비스 방화벽 설정

1. 53/udp에 대한 방화벽을 열어준다

- 53/udp 를 보통 사용하기 때문에 


2. 53/tcp 또한 열어준다

- 전송데이터가 512바이트를 넘어가는 경우와 zone영역을 전송하는경우 53/tcp 를 사용한다


3. 방화벽 설정후에는 항상 reload 한다


4. DNS 서비스 시작

- systemctl start named


5. ERROR

1. systemctl start named 시 시작안되는 에러

1) systemctl status named 를 통해 어디서 에러가 나는지 파악


2) permission 오류인 경우 /var/named에 대한 권한 설정을 다시한다

- chmod 754 -R /var/named (-R 옵션은 재귀적명령으로 내부 디렉토리 및 파일까지 모두 같은 권한을 부여하는 옵션)


2. named 서비스도 에러없이 시작이 되었으나 클라이언트에서 조회가 안되는 경우

1) dns가 우리가 구축한 서버로 지정되어있는지 확인 후 NIC카드를 재시작

2) DNS Server의 /etc/named.conf의 allow-query, listen port 가 any로 지정되어있는지 확인


2. DNS Client

1. nslookup을 위한 bind-utils 설치

- yum install -y bind-utils


2. dns 서버를 우리가 구축한 서버로 지정

- vi /etc/sysconfig/network-scripts/ifcfg-ens33


3. 네트워크 설정 후에는 항상 NIC를 내렸다 올린다


4. nslookup을 통해 확인한다