DNS 설정 · 3 min read · Oct 03, 2025

동적 DNS 구성 방법 (페도라 코어 4 설정)

동적 DNS 구성 방법 (페도라 코어 4 설정)

작성자: Sohail Riaz

이 방법에서는 동적 DNS 서버를 구축하는 방법을 배웁니다. 일반적으로 DNS를 구성할 때는 모든 FQDN을 해결하기 위해 정적 항목을 사용합니다. 네트워크에서 DHCP를 사용하여 켜지거나 요청하는 모든 컴퓨터에 동적 IP를 제공하는 경우, DNS를 정적으로 구성하는 것은 불가능합니다. 따라서 컴퓨터가 새 IP를 받을 때마다 DNS에서 FQDN이 자동으로 새 IP로 업데이트되도록 DHCP와 함께 DNS를 구성해야 합니다. ### 1 패키지 설치 페도라 코어 4에는 DNS(Bind) 및 DHCP(dhcp) 패키지가 포함되어 있습니다. 페도라 코어 4 CD에서 설치하거나 다음 명령을 사용하여 인터넷에서 다운로드할 수 있습니다. ``` yum –y install bind bind-chroot bind-utils bind-libs caching-nameserver dhcp ``` 여기서 bind ----- DNS 서버 패키지 bind-chroot ----- DNS가 chroot(감옥) 환경에서 실행됩니다. bind-libs ----- bind, bind-utils 사용에 필요한 라이브러리 bind-utils ----- nslookup, host, dig 등과 같은 유틸리티가 포함되어 있습니다. caching-nameserver ----- 레코드를 캐시에 저장하는 캐싱 기능을 제공합니다. dhcp ----- 동적 호스트 구성 프로토콜 패키지. ### 2 BIND(DNS) 구성 BIND에 다른 애플리케이션이 업데이트할 수 있도록 허용하라고 알려야 합니다. 저는 BIND 구성에 다음을 추가했으며, 나머지는 기본 페도라 코어 4로 남겨두었습니다. 여기 내 로컬 존 세부정보가 적절하게 수정되어 있습니다. 여기서 BIND에 어떤 도메인을 업데이트할 수 있는지 알려줍니다. 제 경우에는 처리할 도메인이 하나뿐입니다. 이 단계에서 공유 비밀 키도 로드하고 있습니다. 제 DHCP 서버와 DNS 서버는 동일한 박스에 있으므로 여기서는 localhost만 업데이트를 수행하도록 허용하고 있습니다. 파일 rndckey는 BIND가 지침을 보내는 승인된 애플리케이션임을 알 수 있도록 하는 공유 비밀이 포함된 파일입니다. ``` vi /etc/named.conf ``` ``` controls { inet 127.0.0.1 allow {localhost; } keys { "rndckey"; }; }; // 여기에 로컬 존 정의 추가. zone "example.com" { type master; file "example.com.zone"; allow-update { key "rndckey"; }; notify yes; }; zone "0.168.192.in-addr.arpa" { type master; file "0.168.192.in-addr.arpa.zone"; allow-update { key "rndckey"; }; notify yes; }; include "/etc/bind/rndc.key"; ``` 비밀 키는 설치 시 생성됩니다. 여기서 아무것도 할 필요는 없지만… 참고: DHCP 및 DNS 서버가 별도의 머신에 있는 경우 파일을 서로 복사해야 합니다. 두 머신 모두 동일한 파일 즉, /etc/rndc.key를 사용해야 합니다. #### 2.1 존 파일 존 데이터베이스를 일반적으로 설정합니다. 특별한 작업을 할 필요는 없습니다. DHCP 서버가 작업 스테이션에 할당된 새 IP에 따라 존 파일을 업데이트할 것입니다. ``` vi /var/named/chroot/var/named/example.com.zone ``` ``` $TTL 86400 @ IN SOA @ root ( 50 ; serial 28800 ; refresh (8 hours) 7200 ; retry (2 hours) 604800 ; retire (1 week) 86400 ; ttl (1 day) ) IN NS server server IN A 192.168.0.1 ``` ``` vi /var/named/chroot/var/named/0.168.192.in-addr.arpa.zone ``` ``` $TTL 86400 @ IN SOA @ root ( 50 ; serial 28800 ; refresh (8 hours) 7200 ; retry (2 hours) 604800 ; retire (1 week) 86400 ; ttl (1 day) ) IN NS server 1 IN PTR server.example.com. ``` 이제 /var/named 디렉토리에 동일한 이름으로 이러한 파일의 바로가기를 만듭니다. cd /var/named ln –s /var/named/chroot/var/named/example.com.zone example.com.zone ln –s /var/named/chroot/var/named/0.168.192.in-addr.arpa.zone 0.168.192.in-addr.arpa.zone ### 3 DHCP 서버 구성 기본적으로 페도라 코어 4에 제공되는 DHCP 서버는 동적 DNS 업데이트를 수행하지 않습니다. 이를 활성화해야 합니다. 아래는 제 시스템을 위해 선택한 옵션입니다. 제 DHCP 구성은 다음과 같습니다: ``` vi /etc/dhcpd.conf ``` ``` authoritative; include "/etc/rndc.key"; # 서버 구성: server-identifier server; ddns-domainname "example.com."; ddns-rev-domainname "in-addr.arpa."; ddns-update-style interim; ddns-updates on; ignore client-updates; # 이것은 통신 존입니다 zone example.com. { primary 127.0.0.1; key rndckey; } default-lease-time 21600; # 6 hours max-lease-time 43200; # 12 hours # 클라이언트 구성: option domain-name "example.com."; option ip-forwarding off; subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.100 192.168.0.200; option routers 192.168.0.1; # 기본 게이트웨이 option subnet-mask 255.255.255.0; option broadcast-address 192.168.0.255; option domain-name-servers 192.168.0.1; zone 0.168.192.in-addr.arpa. { primary 192.168.0.2; key rndckey; } zone localdomain. { primary 192.168.0.2; key rndckey; } } ``` 이제 다음 권한 변경 명령을 실행하여 이름과 IP 업데이트가 필요할 때 존 파일을 쓸 수 있도록 named 사용자에게 권한을 부여합니다. chmod 770 /var/named/chroot/var/named chmod 770 /var/named 이제 다음 명령으로 DNS 및 DHCP 서비스를 시작합니다: service named start service dhcp start 클라이언트 컴퓨터로 가서 DHCP 서버에서 IP를 받을 수 있도록 설정합니다. 다음 명령으로 클라이언트 컴퓨터 이름이 DNS에 업데이트되었는지 확인합니다. 새로 할당된 IP로 이름을 해결합니다. ``` slookup yourcomputername.example.com ``` 새로 생성된 동적 DNS 서버와 함께 행운을 빕니다.
Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.