[Linux] DNS 설정(feat. bind9)

로그zip·2024년 2월 13일

서버 PC에 서브도메인을 이용하여 테스트가 필요한 경우
아이피주소로는 불가하여 DNS 서버 설정이 필요하다.
이때 구해만 도메인이 없을 경우 아래 방법을 통해 DNS 설정이 가능하다.

환경

서버PC "A" 와 클라이언트PC "B"가 동일한 라우터의 사설망으로 연결되어 있음

서버

bind9 설치 (DNS 설정해주는 패키지 프로그램)

sudo apt(yum) update # 패키지 업데이트
sudo apt(yum) install bind9 # bind9 패키지 설치

설치경로 이동

sudo chown -R bind:bind /etc/bind # (선택) 접근권한 부여
vim /etc/bind/named.conf.options # named(실행) 기본설정
	allow-query { any; } # DNS 질의허용 {모두}
    listen-on { any; } # 허용 IP {모두}
    forwarders { IP 주소; } # 외부 DNS IP (복수가능) : 인터넷 엑세스 및 부하분산 목적
vim /etc/bind/named.conf.local # DNS ZONE 경로설정
	zone "example.com" {
    	type master(or slave); # 메인(보조) 서버 역할 (1*n)
        file "/etc/bind/db.example.com; # ZONE 파일경로 (자유롭게 설정가능)
    };    
touch /etc/bind/db.example.com # 설정파일 생성 (db.local 파일 복사해서 사용해도 무관함)
vim /etc/bind/db.example.com
	$ORIGIN example.com  # 기본 도메인
    $TTL 3600 # 캐시 유효시간(seconds)
    @	IN	SOA	ns.example.com. admin.example.com. ( 
    # @(최상위레벨) IN(인터넷) SOA(권한) ns.example.com(주서버) admin.example.com(관리자: admin@example.com)
                                3       ; Serial             # ZONE 파일 고유값
                            604800      ; Refresh            # ZONE 정보 갱신 간격
                             86400      ; Retry              # ZONE 정보 재시도 간격
                           2419200      ; Expire             # ZONE 파일 유효시간
                            604800 )    ; Negative Cache TTL # 찾는 캐시가 없을 때 상태 보존 시간
	IN	NS		ns.example.com # 도메인 네임서버
ns	IN	A		192.168.0.1    # IPv4 주소
www	IN	CNAME	example.com    # 별칭 도메인 주소
*	IN	A		example.com

bind9 재시작

sudo systemctl restart bind9

위 서버 설정 완료 후 클라이언트 측의 DNS 서버 추가에 상기 서버 IP 주소 추가 후
DNS 경로에 네임서버 입력하면 해당 경로로 이동합니다.

profile
로그하우스

0개의 댓글