IT 관련/리눅스

DNS를 사용 내부 네트워크 꾸미기

돌고래78 2025. 4. 10. 15:15

설치환경 :
우분투,데비안 계열
공유기,pc1,pc2,pc3

  1. bind9 설치

데비안에서 bind9을 설치하려면 터미널에서 다음 명령어를 실행하세요:

sudo apt update
sudo apt install bind9 bind9utils bind9-doc

설치가 완료되면 bind9 서비스가 자동으로 시작됩니다. 상태를 확인하려면:

sudo systemctl status bind9

  1. bind9 기본 설정

bind9의 설정 파일은 주로 /etc/bind/ 디렉토리에 있습니다. 기본적으로 내부 DNS 서버를 구축하려면 몇 가지 파일을 수정해야 합니다.
(1) 네임서버 설정 확인

/etc/bind/named.conf 파일을 열어 기본 설정을 확인하세요:

sudo nano /etc/bind/named.conf

이 파일은 named.conf.options, named.conf.local 등을 포함하고 있습니다.
(2) 옵션 설정

/etc/bind/named.conf.options 파일을 수정해서 DNS 서버가 내부 네트워크에서 작동하도록 설정합니다:

sudo nano /etc/bind/named.conf.options

예시 설정:

options {
directory "/var/cache/bind";
listen-on { 192.168.1.10; }; // DNS 서버의 IP 주소 (예: PC1의 IP)
allow-query { 192.168.1.0/24; }; // 내부 네트워크 대역 허용
forwarders { 8.8.8.8; 8.8.4.4; }; // 외부 DNS로 포워딩 (Google DNS)
recursion yes; // 재귀 쿼리 허용
};

listen-on: DNS 서버가 수신 대기할 IP (예: PC1의 IP).
allow-query: 쿼리를 허용할 네트워크 대역 (공유기, PC1, PC2가 속한 네트워크).
forwarders: 외부 도메인 해석을 위해 사용할 상위 DNS 서버.

(3) 로컬 존 설정

/etc/bind/named.conf.local 파일에 내부 네트워크용 도메인 존을 추가합니다:

sudo nano /etc/bind/named.conf.local

예시:

zone "mylan.local" {
type master;
file "/etc/bind/db.mylan.local";
};

mylan.local은 내부 도메인 이름으로, 원하는 이름으로 변경 가능.
  1. 존 파일 생성

위에서 지정한 존 파일(/etc/bind/db.mylan.local)을 생성합니다. 먼저 샘플 파일을 복사해서 수정하세요:

sudo cp /etc/bind/db.local /etc/bind/db.mylan.local
sudo nano /etc/bind/db.mylan.local

수정 예시:

$TTL 604800
@ IN SOA ns.mylan.local. admin.mylan.local. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns.mylan.local.
@ IN A 192.168.1.10 ; DNS 서버 IP
ns IN A 192.168.1.10 ; 네임서버 IP
pc1 IN A 192.168.1.11 ; PC1 IP
pc2 IN A 192.168.1.12 ; PC2 IP
router IN A 192.168.1.1 ; 공유기 IP

IP 주소는 네트워크 환경에 맞게 수정하세요.
Serial 값은 설정 변경 시마다 증가시켜야 합니다.
  1. 설정 확인 및 서비스 재시작

설정에 오류가 없는지 확인:

sudo named-checkconf
sudo named-checkzone mylan.local /etc/bind/db.mylan.local

문제가 없으면 bind9을 재시작:

sudo systemctl restart bind9

  1. 클라이언트 설정 (공유기, PC1, PC2)

DNS 서버를 사용하려면 각 장치에서 DNS 서버 IP(예: 192.168.1.10)를 수동으로 지정해야 합니다.
(1) 공유기

공유기 관리자 페이지에 접속해서 DNS 설정을 수동으로 변경:

Primary DNS: 192.168.1.10

(2) PC1, PC2

데비안 기반 PC라면 /etc/resolv.conf 파일을 수정:

sudo nano /etc/resolv.conf

추가:

nameserver 192.168.1.10

파일이 재부팅 시 덮어씌워진다면, 네트워크 설정에서 고정하도록 조정하세요.
6. 테스트

DNS가 제대로 작동하는지 확인:

nslookup pc1.mylan.local 192.168.1.10
nslookup pc2.mylan.local 192.168.1.10
nslookup router.mylan.local 192.168.1.10

응답이 올바른 IP로 나와야 합니다.
추가 팁

방화벽이 열려 있어야 함: sudo ufw allow 53 (DNS 포트).
로그 확인: /var/log/syslog에서 오류를 확인 가능.

'IT 관련 > 리눅스' 카테고리의 다른 글

사용자별 홈페이지 부여하기  (1) 2025.05.17
파일 압축하기, 풀기  (0) 2025.04.11
SSH server  (0) 2025.04.10
리눅스 기본 명령어 모음  (0) 2025.03.27
vi , vim 단축키 모음  (0) 2025.03.27