현재 위치 - 중국 분류 정보 발표 플랫폼 - 비즈니스 서비스 정보 - Linux에서 DNS 서버를 구성하는 방법은 무엇입니까?

Linux에서 DNS 서버를 구성하는 방법은 무엇입니까?

Linux DNS 서버 구성

기본 이론:

DNS 시스템의 기능은 도메인 이름과 IP를 일치시키는 것입니다.

정방향 해결: 도메인 이름(호스트 이름)을 기준으로 해당 IP 주소를 찾습니다.

역분석: IP 주소를 기준으로 해당 도메인 이름(호스트 이름)을 쿼리합니다.

쿼리

재귀 쿼리: 대부분의 클라이언트가 도메인 이름을 DNS 서버로 확인하는 방식입니다.

반복 쿼리: 대부분의 DNS 서버가 도메인 이름을 다른 DNS 서버로 확인하는 방식입니다.

DNS 서버 유형

캐싱 도메인 이름 서버: 캐시 전용 서버라고도 합니다. 다른 도메인 이름 서버에 질의하여 도메인 이름 및 IP 주소의 해당 레코드를 얻고, 도메인 이름 질의 결과를 로컬에 캐시하여 반복 질의 속도를 향상시킵니다.

주 도메인 이름 서버: 고유한 특정 DNS 영역의 공식 서버입니다. 해당 지역의 모든 도메인 이름과 IP의 매핑 기록을 유지 관리하는 역할을 담당합니다.

슬레이브 도메인 이름 서버: 보조 도메인 이름 서버라고도 합니다. 유지 관리하는 도메인 이름과 IP 주소 간의 매핑 기록은 기본 도메인 이름 서버에서 나옵니다.

환경 준비:

selinux 및 iptables 임시 종료

#setenforce 0

#service iptables stop

관련 소프트웨어 패키지 쿼리:

[root@localhost ~]# yum search bin

로드된 플러그인: product-id,refresh-packagekit,subscription-manager

Red Hat 리포지토리 업데이트.

===================================== === ============================================== = N/ S 일치: 바인딩 =========================================== === =======================================

PackageKit-device -rebind.i686: PackageKit용 장치 리바인드 기능

bind.i686: BIND(Berkeley Internet Name Domain) DNS(Domain Name System) 서버

bind-chroot. i686: ISC BIND DNS 서버용 chroot 런타임 환경(named(8))

bind-utils.i686: DNS 이름 서버 쿼리를 위한 유틸리티

각 소프트웨어 패키지의 기능은 다음과 같습니다.

p>

bind: 도메인 이름 서비스를 제공하는 주요 프로그램 및 관련 문서입니다.

bind-chroot: 보안 강화를 위해 바인드용으로 위장된 루트 디렉터리를 제공합니다.

bind-utils: DNS 서버 테스트용 도구(예: nslookup, dig 등)를 제공합니다.

BIND 소프트웨어 패키지 설치 #yum install *bind*

DNS 서버 구성:

서버측 프로그램 바인딩

주 실행 프로그램: /usr/sbin/named

서비스 스크립트: etc/init.d/named

기본 수신 포트: 53

주 구성 파일: / etc/named.conf

DNS 확인 레코드를 저장하는 데이터 파일: /var/named/chroot/var/named

바인드 프로그램의 구성 파일 목록 조회

[ root@localhost ~]# rpm -qc 바인딩

/etc/logrotate.d/named

/etc/named.conf

/ etc/named.iscdlv.key

/etc/named.rfc1912.zones

/etc/named.root.key

/etc/rndc.conf

/etc/rndc.key

/etc/sysconfig/named

/var/named/named.ca

/var /named/named .empty

/var/named/named.localhost

/var/named/named.loopback

라는 이름의 기본 구성 파일을 봅니다. conf

#vim /etc/named.conf

주요 구성 파일 분석:

전역 구성 섹션:

기본 전역 구성 항목은 다음과 같습니다:

p>

10 options {

11 Listen-on port 53 { 127.0.0.1 } //수신 포트 및 인터페이스 IP 주소

< p> 12 Listen-on-v6 포트 53 {::1; };

13 디렉토리 "/var/named"; //DNS 영역의 데이터 파일 기본 저장 위치

< p> 14 덤프 파일 "/var/named/data/cache_dump.db";

15 통계 파일 "/var/named/data/named_stats.txt";

16 memstatistics-file "/var/named/ data/named_mem_stats.txt";

17 make-query { localhost }; //DNS 쿼리를 허용하는 클라이언트 목록, 모두를 의미합니다

18 재귀 yes; //클라이언트가 재귀 쿼리를 수행하도록 허용할지 여부

19

20 dnssec-enable yes;

21 d

nssec-validation yes;

22 dnssec-lookaside auto;

23

24 /* ISC DLV 키 경로 */

25 bindkeys-file "/etc/named.iscdlv.key";

26 }

전역 구성에는 다음 옵션도 있습니다:

Forwarders {202.102 .24.68; 12.3.3.3; //이 도메인 이름 서버에서 확인할 수 없는 항목을 다른 DNS 서버의 IP 주소로 전달합니다.

기본 영역 구성 항목은 다음과 같습니다.< /p>

35 zone "." IN {

36 유형 힌트; 힌트는 루트 영역이고, 마스터는 기본 영역이고, 슬레이브는 보조 영역입니다.

37 file "named.ca"; //이 영역에 해당하는 영역 데이터 구성 파일의 이름

38 };

영역 구성에는 다음과 같은 옵션도 있습니다:

allow-transfer {189.98.90.23;} //슬레이브 도메인 이름 다운로드 허용 영역 데이터베이스의 서버 IP 주소

allow-update {none;}; //동적으로 업데이트된 클라이언트 IP 주소를 허용합니다(없음은 모두 금지됨을 의미함)

다음 영역 구성을 추가합니다.

zone "my.com" IN {

type master; //메인 영역

file “my.com”; 이 영역에 해당하는 데이터 구성 파일

allow- transfer {192.168.153.1;} //슬레이브 도메인 이름 서버의 IP 주소가 지역 데이터베이스를 다운로드하도록 허용합니다.

허용- update {none;};

};

zone “153.168.192.in-addr.arpa” IN { //IP192.168.153.130에 대한 역분석을 나타냅니다.

type master; //Main zone

file “ 192.168.153.my.arpa"; //이 영역에 해당하는 지역 데이터 구성 파일의 이름

};

구성이 완료된 후 다음 명령을 실행하여 명명된.conf 파일의 구문을 검사할 수 있습니다.

#named-checkconf

참고: 역방향 네트워크 주소.in-addr.arpa는 역방향 영역을 나타냅니다.

기본 구성 파일의 마지막 줄은 다음과 같습니다. < /p>

include "/etc/named.rfc1912.zones" //이 파일에는 /etc/named.rfc1912.zones 파일이 포함되어 있습니다.

영역 데이터 구성 파일:

< p> 먼저 명명된.localhost의 내용을 살펴보세요:

$TTL 1D // 생존 시간

@ IN SOA @ rname.invalid ( //” rname.invalid”DNS 영역 주소

0; 일련번호 //일련번호 업데이트

1D; 새로고침 //업데이트 시간

1H;

1W; 만료 //만료 시간

3H); 최소 //잘못된 주소 확인 레코드에 대한 기본 캐시 시간

NS @ //이름 서버 도메인 이름 서비스 레코드

p>

127.0.0.1 //주소는 순방향 구문 분석 영역 데이터 파일에만 사용됩니다.

AAAA::1

해당 영역 데이터 2개 생성 구성 파일 :

#touch my.com

#touch 192.168.153.my.arpa

#vim my.com

$TTL 86400

@ IN SOA my.com. ( //admin.myNaN은 지역 관리자의 이메일 주소입니다.

200900201

3H

15M

1W

1D

)

@ IN NS ns1.my.com. // 현재 도메인의 DNS 서버 주소

IN MX 10 mail.my.com. //현재 도메인의 메일 서버 도메인 이름 주소를 설정하는 데 사용됩니다. 숫자가 높을수록 우선순위가 낮아집니다.

ns1 IN A 192.168.153.130

mail IN A 192.168.153.130

www IN A 192.168.153.130

ftp IN CNAME www //CNAME 별칭(표준 이름) 레코드, ftp.my.com 및 www.my.com은 동일한 IP에 해당합니다.

[root@localhostnamed]# vim 192.168.153.my.arpa

$TTL 86400

@ IN SOA my.com.(

200900201

3H

15M

1W

1D

)

@ IN NS ns1.my.com.

130 IN PTR ftp.my.com

시작 DNS 서비스

[root@localhost ~]# 서비스 이름은 start입니다.

테스트:

테스트용 FTP 서버 구성:

# service vsftpd start //vsftpd 서비스 시작

현재 네트워크 카드 구성:

eth0: 192.168.0.1/24

eth1: 192.168.153.130/24< /p>

[root@localhost 이름]# nslookup 192.168.153.130

서버: 127.0.0.1

주소: 127.0.0.1#53

130.153.168.192.in-addr.arpa 이름 = www.my.com.

[root@localhost ~]# nslookup ftp.my.com

서버: 127.0.0.1< /p>

주소: 127.0.0.1#53

ftp.my.com 정식 이름 = www.my.com.

이름: www.my.com

주소: 192.168.153.130

테스트 성공