1. dns 설치

yum install -y bind bind-utils

2. 설정 파일 수정

vi /etc/named.conf

options {
    listen-on port 53 { 127.0.0.1; any; };  # 모든 인터페이스에서 DNS 요청을 수신
    allow-query { any; };  # 모든 클라이언트의 질의를 허용
    recursion yes;         # 캐시된 결과를 클라이언트에게 제공
};

zone "21tcu.co.kr" { # 21tcu.co.kr을 예로 설명
    type master;
    file "/var/named/21tcu.co.kr.zone";
    allow-update { none; };
};

3. zone 파일 생성

vi /var/named/21tcu.co.kr.zone

$TTL 86400
@   IN  SOA ns1.21tcu.co.kr. admin.21tcu.co.kr. (
        2023102101  ; Serial (날짜 형식 YYYYMMDDnn, 변경할 때마다 증가)
        3600        ; Refresh (1시간마다 갱신)
        1800        ; Retry (30분 후 재시도)
        1209600     ; Expire (2주 후 만료)
        86400 )     ; Minimum TTL (1일)
        
@       IN  NS      ns1.21tcu.co.kr.  ; 네임 서버 설정
@       IN  A       192.168.10.132   ; 기본 도메인에 대한 A 레코드 설정
ns1     IN  A       192.168.10.132   ; 네임 서버에 대한 A 레코드 설정
www     IN  A       192.168.10.132   ; www.21tcu.co.kr에 대한 A 레코드 설정

4. 서비스 재시작

service named restart

5. 확인

dig @localhost 21tcu.co.kr

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.5 <<>> @localhost 21tcu.co.kr
; (2 servers found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24386
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;21tcu.co.kr.                   IN      A

;; ANSWER SECTION:
21tcu.co.kr.            3600    IN      A       192.168.10.132

;; AUTHORITY SECTION:
21tcu.co.kr.            86400   IN      NS      ns1.uhost.co.kr.
21tcu.co.kr.            86400   IN      NS      ns2.uhost.co.kr.

;; ADDITIONAL SECTION:
ns1.uhost.co.kr.        86400   IN      A       202.31.187.220
ns2.uhost.co.kr.        86400   IN      A       219.251.156.14

;; Query time: 248 msec
;; SERVER: ::1#53(::1)
;; WHEN: Mon Oct 21 11:07:12 2024
;; MSG SIZE  rcvd: 119