CentOS 로컬 DNS 서버 설정

CentOS에서 로컬 DNS 서버를 설정하는 방법에 대해 알아보겠습니다. 로컬 DNS 서버를 설정하면 네트워크 내의 컴퓨터들이 도메인 이름을 IP 주소로 해석할 수 있습니다. 이를 통해 네트워크 트래픽을 효율적으로 관리하고, 속도를 개선할 수 있습니다.

1. Bind 설치하기

로컬 DNS 서버를 설정하기 위해선 Bind (Berkeley Internet Name Domain) 소프트웨어를 설치해야 합니다. 다음 명령어를 사용하여 Bind를 설치합니다.

sudo yum install bind bind-utils

2. DNS 구성 파일 설정하기

Bind의 DNS 구성 파일인 named.conf를 편집하여 DNS 서버를 구성합니다. 파일을 편집하기 전에 백업을 해두는 것이 좋습니다.

sudo cp /etc/named.conf /etc/named.conf.bak
sudo vi /etc/named.conf

named.conf 파일 내에서 다음 항목들을 수정합니다.

예시:

options {
    //...
    allow-query { localhost; 192.168.1.0/24; };
    listen-on { 127.0.0.1; 192.168.1.100; };
    forwarders { 8.8.8.8; 8.8.4.4; };
    //...
}

예시:

zone "example.com" IN {
    type master;
    file "example.com.zone";
    allow-update { none; };
};

3. DNS 존 파일 생성하기

DNS 존 파일은 로컬 DNS 서버가 도메인 이름과 IP 주소를 매핑하는 데 사용하는 파일입니다. 존 파일을 생성하고 편집하여 필요한 도메인 이름을 설정합니다.

sudo vi /var/named/example.com.zone

다음과 같이 example.com.zone 파일을 작성합니다.

$TTL 86400
@       IN      SOA     ns1.example.com. admin.example.com. (
                                        2017010101 ; Serial
                                        3600 ; Refresh
                                        1800 ; Retry
                                        604800 ; Expire
                                        86400 ; Minimum TTL
)
@       IN      NS      ns1.example.com.

ns1     IN      A       192.168.1.100
www     IN      A       192.168.1.101

4. 방화벽 설정하기

로컬 DNS 서버를 사용하기 위해 방화벽을 설정해야 합니다. CentOS 7에서는 firewalld를 사용하므로 다음 명령어를 사용하여 필요한 포트를 열어줍니다.

sudo firewall-cmd --permanent --add-service=dns
sudo firewall-cmd --reload

5. DNS 서비스 시작 및 활성화하기

DNS 서비스를 시작하고 부팅 시 자동으로 실행되도록 설정합니다.

sudo systemctl start named
sudo systemctl enable named

이제 CentOS에서 로컬 DNS 서버를 설정하는 방법에 대해 알아보았습니다. 로컬 네트워크 내의 컴퓨터들은 설정된 DNS 서버를 사용하여 도메인 이름을 IP 주소로 해석할 수 있습니다. 이를 통해 네트워크의 효율성과 속도를 향상시킬 수 있습니다.