line 13 - UDP(53) 포트로 들어오는 모든 트래픽을 허용한다. 기본설정은 127.0.0.1에 리스닝이기 때문에, 외부에서 접속이 불가능하므로 모든 ip로 들어올 수 있도록 any로 설정한다. line 14 - ip v6 도메인을 사용하지 않으니 none으로 설정한다. line 21 - 네임서버에 설정된 도메인을 모두(any) 응답하도록 설정한다. line 33 - 주 네임서버는 캐싱 네임서버 역할이 필요하지 않으므로 no로 설정한다.
이제 정방향 설정 정보를 만들 차례다.
맨 밑에 줄로 이동하여 zone을 추가하자.
정방향 = 도메인 -> ip 변환 역방향 = ip -> 도메인 변환
도메인 : jdh5202.com 서버타입 : master zone 파일 : "jdh5202.com.zone" zone 파일의 이름은 본인이 원하는 대로 설정한다. allow-update : none이면 동기화 할 slave 서버를 정하지 않는다.
/var/named - zone 파일 생성
/var/named 디렉토리로 이동하여 정방향 설정에서 지정했던 zone 파일 이름을 그대로 만든다. # vim jdh5202.com.zone
그리고 아래 내용을 입력해준다. IN A 오른쪽에는 본인의 DNS 서버 IP를 입력한다.
TTL : 데이터 유지 시간 @ : 기본 도메인 설정 IN : 인터넷 SOA : 레코드 등록 NS : 해당 도메인의 네임서버 A : 도메인과 연결 될 IP 주소
ி DNS 설정 파일 점검
DNS 설정 파일에 오류가 있는지 확인한다.
① named-checkconf /etc/named.conf
② named-checkzone jdh5202.com jdh5202.com.zone OK 메시지가 떠야한다.
③ zone 파일 권한 수정 존 파일 소유권을 660, 그룹을 named로 설정한다. # chown root:named jdh5202.com.zone # chmod 660 jdh5202.com.zone
④ nameserver 설정 /etc/resolve.conf 파일에 첫 번째 nameserver는 DNS 자기 자신의 ip가 되어야한다. 이 파일은 네트워크 설정 파일(/etc/sysconfig/network-script/ifcfg-네트워크 장치명)과 동기화 된다. 저 파일에서 DNS를 주면 /etc/resolve.conf 파일에도 설정 값이 반영된다.
ி DNS 실행
① 재시작 systemctl restart named
② 부팅 후 자동 실행 systemctl enable named
③ DNS 포트 개방 # firewall-cmd --permanent --zone=public --add-port=53/tcp # firewall-cmd --permanent --zone=public --add-port=53/udp # firewall-cmd --reload
④ DNS 동작 여부 확인 + 53번(DNS) 포트 열림 확인 systemctl status named.service netstat -ln | grep 53
ி 도메인 접속 확인
① nslookup으로 도메인이 변환되는지 확인한다.
② 터미널에서 웹 접속할 수 있는 lynx를 이용한다. # lynx jdh5202.com
③ 윈도우에서 접속되는지 확인하려면 네트워크 DNS 주소를 리눅스의 DNS 서버 ip로 바꾼 후 시도한다.