본문 바로가기
OS/Cent OS

이론+실습] DNS -1

by 티옌.liy 2017. 2. 18.


Name Server - DNS 기능을 제공하는 서버.


# /etc/resolv.conf    로컬 DNS서버의 IP를 설정


1. 구성요소

- 도메인 이름

- 리소스 레코드

- DNS 영역 파일


2. 네임 서버

- 서버의 데몬 프로세스로 동작하는 네임서버 프로그램


2.1 권한 있는 네임 서버 ( Authoritative name Server )

- 특정 도메인에 대한 정보를 설정하고, 도메인에 대한 정보를 요청하는 클라이언트들에게

   독점적으로 해당하는 도메인에 대한 최종적인 정보를 제공하는 서버.

2.2 Master 서버

- Primary 또는 main 서버라도고 불리낟.

2.3 Slave 서버

- 서버들의 정보를 동기화 하는 서버

2.4 Caching-Only 서버

- DNS는 한번 검색한 결과는 메모리의 캐시에 기록된다.

- 같은 정보가 요청되면 캐시에 저장된 정보를 클라이언트에게 제공한다. 즉, 응답속도가 빨라진다.


3. 리졸버

- 클라이언트와 서버 사이의 정보를 제공하는 기능


도메인  <--  ( 번역 ) ----> IP 주소


▶ Forward Lookup ( 정방향 조회 )

- 도메인을 IP 주소로 변환

- 사용하는 DB 파일이름은 Forward Zone 이다.

▶ Reverse Looup ( 역방향 조회 )

- IP 주소를 도메인으로 변환

- 사용하는 DB 파일 이름은 Reverse Zone 이다.


▶ 정방향과 역방향의 차이


( 정방향 )


( 역방향 )



4. 리소스 레코드

- Zone 또는 도메인의 특성을 나타내는 용어


1. TTL

- Time To Live의 약어로서 네임 서버가 설정한 도메인에 대한 정보를 제공받은 클라이언트 들이

          얼마 동안 이정보를 캐시에 저장 할지 결정하는 시간이다.


2. serial

- 존 정보가 업데이트 되었는지를 슬레이브 네임 서버에 전달하기 위해 사용하는 숫자로서 

보통 YYYYMMDD 같은 날짜를 이용해 생성한다. 마스터 서버는 존 정보가 변경될 때마다 

이 번호를 증가 시킴으로써 슬레이브는 이정보를 받아올지 아닐지를 결정하게 된다.


3. refresh

- 슬레이브 네임 서버가 얼마의 주기로 마스터 서버에 접속해 정보가 변경되었는지를 점검하기 위해 

사용되는 시간을 의미한다.


4. retry

- 슬레이브 네임 서버가 마스터 서버로의 refresh 접근이 실패 할 경우 얼마 후에 다시 접근할지를 

결정하는 시간 단위이다.


5. expire

- 슬레이브 네임 서버가 retry를 얼마 동안 허용할지 결정하는 시간이며, 이 시간 이후 슬레이브 

네임서버는 마스터 서버로의 접근을 더 이상 시도하지 않고 현재의 정보도 클라이언트에게 제공하지 않는다.


6. minimum

- Negative Caching이라고 하며, NODATA, NXDOMAIN같은 존재하지 않거나 잘못된 호스트에 

대한 정보를 저장하기 위한 TTL을 의미한다.


7. NS

- 해당 도메인의 네임 서버를 지정하기 위해 사용한다.


8. MX

- 해당 도메인의 메일 서버 (Mail Exchange)를 지정하기 위해 사용한다.


9. A

- 도메인의 IP주소(IPv4-32bit)를 지정하기 위해 사용한다.


10. AAAA

- 도메인의 IP주소(IPv6-128bit)를 지정하기 위해 사용한다.


11. PTR

- Pointer의 약어로서 IP주소에 일치하는 도메인을 가리키기 위해 사용한다.


12. CNAME

- Canonical Name의 약어로서 기존 호스트의 다른 이름을 지정 하기 위해 사용한다.


13. TXT

- 해당 도메인의 Text정보를 설정하기 위해 사용한다.




Bind 설치와 DNS 서버 구축


BIND (Belkey Internet Name Domain )

- 패키지 설치 후 생성되는 주요 파일 및 디렉토리


# /etc/named.conf            네임 서버의 주 설정 파일

# /etc/named.rfc1912.zones        존 정보를 설정하기 위한 파일

# /var/named            네임서버의 DB파일을 보관하는 디렉토리

# /usr/sbin/named        네임 서버 데몬 파일






[ DNS 서버 구축 전 Bind 설치 ] 


1. 패키지 설치

# yum -y install bind bind-utils bind-libs bind-chroot

- bind : DNS 서버 구축 프로그램을 제공

- bind-utils : DNS 서버 질의에 사용되는 유틸리티 모음

- bind-libs : BIND 과 유틸리티 프로그램이 사용할 라이브러리 패키지

- bind-chroot : BIND의 chroot 환경에 사용되는 파일



2. 패키지가 정상적으로 설치 됬는지 확인하기.

# rpm -qa | grep bind





[ chroot 동작 확인 ]


1. chroot

# vi /etc/sysconfig/named

( /etc/named.conf를 최상위 디렉토리( / ) 로 인식시키는 설정 )



2. chroot가 있는 곳으로 이동 후 파일 확인

# cd /var/named

# ls



3. 최상위 디렉토리(/var/named)의 하위에 위치한 /etc 디렉토리로 이동후 경로확인

# cd /var/named/chroot/etc

# pwd



4. name 서비스 시작

# ls

# service named start



5. name 서비스 중지

# ls

# service named stop



named 서비스를 시작하면 /etc 디렉토리에 위치한 네임서버의 원본 설정 파일이 해당 디렉토리에 복사가 되어 동작한다.





[ DNS 서버 시작 ]


1. 데몬 시작

# service named start          데몬 시작

# service named status        데몬 정보


2. 데몬 설정

# chkconfig named on        재부팅 이후에도 자동으로 데몬 활성화

# chkconfig --list named        설정 확인



# netstat -antu | grep 53

# cat /etc/services | grep -w domain            정보 확인






[ Root 네임 서버 정보 갱신 ] 


# yum -y install wget        외부 사이트에서 다운할수 있는 명령어 ( wget ) 설치

# wget ftp://rs.internic.net/domain/named.root      wget 명령어로 root 네임서버정보파일을 다운

# mv named.root /var/named ; cd /var/named      다운한 named.root 파일을 /var/named/ 로 이동

# cp -p named.root named.ca                            다운한 파일을 기존 named.ca 파일에 덮어씌운다  



# tail -45 /var/log/messages    named 데몬 시작시 로그 파일에 내용 저장

# ps -ef | grep -v grep | grep named        ps 명령어로 named 데몬 동작 확인

# cat /etc/host.conf

# cat /etc/nsswitch.conf | grep hosts



1. 도메인 설정

# vim /etc/named.conf       네임 서버의 주 설정 파일



2. 도메인 추가

# vim /etc/named/rfc1912.zones





[ DB 파일  생성]


1. 디렉토리를 변경

# cd /var/named


2. 도메인에 대한 정보를 저장하는 Froward Zone DB 파일 생성

# cp named.empty tyen.zone


3. DB 파일 수정

# vim tyen.zone


FQDN : 전체 주소 도메인 네임

- DNS 트리 구조상에서 호스트네임 + 도메인 네임을 모두 포함하는 전체 이름이다.

- 반드시 도메인 뒤에 루트도메인( . )을 붙여서 작성해야 한다. ex) www.naver.com.

PQDN : 부분 주소 도메인 네임



4. 

# cp tyen.zone tyen.rev.zone

# vim 





[ DB 파일 확인 ]


1. named 데몬이 접근이 가능하도록 Forward Zone File 소유권 변경

# chown root:named tyen.zone

:

2. named 데몬이 접근이 가능하도록 Reverse Zone File 소유권 변경

# chown root:named tyen.rev.zone


3. 설정 후 재시작

# service named restart


4. 문법 검사.

# named-checkconf /etc/named/rfc1912.zones


5. 존 설정 검사

# named-checkzone tyen.zone tyen.rev.zone



'OS > Cent OS' 카테고리의 다른 글

FTP  (0) 2017.03.04
DHCP  (0) 2017.02.19
이론+실습] DNS -2  (0) 2017.02.19
Telnet  (0) 2017.02.18
IP 확인을 위한 Ping 과 ifconfig  (0) 2017.02.12
VMware에서 Bonding으로 서버 구축하기  (0) 2017.02.12

댓글