DNS(바인딩) 서버를 설정 중이며 기본적으로 /etc/named.conf에는 다음 항목이 있습니다.
zone "." IN {
type hint;
file "named.root";
};
zone "localdomain." IN {
type master;
file "localdomain.zone";
allow-update { none; };
};
zone "localhost." IN {
type master;
file "localhost.zone";
allow-update { none; };
};
zone "255.in-addr.arpa." IN {
type master;
file "named.broadcast";
allow-update { none; };
};
zone "0.in-addr.arpa." IN {
type master;
file "named.zero";
allow-update { none; };
};
을(를) 시작하려고 하면 named
5개 파일(named.root, 명명된.zero, 명명된.broadcast, localhost.zone 및 localdomain.zone)이 이 서버의 어디에도 존재하지 않기 때문에 실패합니다. 그래서 해당 항목을 삭제하고 named
정상적으로 실행되기 시작했습니다. DNS가 예상대로 작동하고 있습니다. 조사를 해보니 이러한 파일이 localhost
도메인을 확인하는 데 사용된다는 사실을 알게 되었습니다. 몇 가지 다른 DNS 서버를 확인한 결과 이러한 파일에는 기본적으로 localhost를 가리키는 레코드가 있음을 발견했습니다 A
. NS
내 질문은 다음과 같습니다
이 파일 없이 프로덕션 환경에서 이 DNS를 계속 실행해도 괜찮습니까? 부작용은 무엇입니까?
내
named.ca
서버에는 있지만named.root
. 다른 DNS 서버(두 파일 모두 존재함)를 확인한 결과 동일한 내용(루트 네임서버를 가리키는 레코드)이 있음을 발견했습니다. 루트 네임서버 항목이 있으므로 명명된.ca를 사용할 수 있습니까? 예 더 이상 사용되지 않습니다.named.root
어떤 버전을 사용하고 있습니까?named.ca
?에 전달자를 설정하지 않았지만
named.conf
외부 도메인은 모두 잘 확인됩니다. 아직도 화물 운송업자가 필요한가요? 다른 오래된 DNS 서버 중 일부에는 서버가 있는 랙 공간을 가리키는 전달자가 설정되어 있습니다.
답변1
첫째, 배포판에서 named.conf
이러한 영역 파일을 참조하는 기본 파일을 제공하거나 설치하는 경우 해당 파일이 시스템에 확실히 있어야 합니다. 패키지를 다시 설치해야 할까요? (아니면 소스에서 설치하셨나요?)
DNS 서버가 권한만 있는 경우
(외부 도메인 해결에 대해 말씀하셨는데, 그건 아닌 것 같습니다.)
"자리 표시자" 영역 "localhost", "localdomain", "0.in-addr.arpa" 및 "255.in-addr.arpa"는 확실히 필요하지 않습니다. 그들은 결코 질문을 받지 않을 것입니다.
루트 힌트 영역에 대해 잘 모르겠습니다. BIND가 권한 전용 구성에서도 여전히 이를 사용하지 않는지 궁금합니다. 차라리 안에 보관하는 게 낫겠어요.
DNS 서버에 재귀가 활성화된 경우
루트 힌트 영역이 필요합니다. BIND에는 기본값이 내장되어 있으므로 기본값 없이도 계속 작동할 수 있습니다. 그러나 루트 프롬프트 정보는 때때로 변경되며 내장 프롬프트가 오래될 수 있습니다. 루트 힌트가 너무 많이 변경되어 기본 제공 힌트와 현재 루트 서버 위치 사이에 더 이상 겹치는 부분이 없어 서버가 실패하기 시작할 가능성은 없지만 루트 힌트 파일을 계속 유지해야 합니다. 지금까지 날짜는 (아주) 가끔입니다.
다른 자리 표시자 영역이 없으면 아무런 문제가 없지만 서버가 이러한 도메인 아래의 이름에 대한 "정크" 쿼리를 받으면 이를 인터넷으로 전달한다는 의미입니다. 자리 표시자 영역을 사용할 때 이를 인터넷으로 전달합니다. 부정적인 답변이 더 빨리 나올 수도 있었습니다.
루트 힌트 파일 이름
named.root
루트 힌트 파일 이름에 대한 두 번째 질문과 관련하여 올바른 파일 이름으로 참조하는 named.ca
한 해당 파일을 호출하든 다른 이름으로 호출하든 상관없습니다 . named.conf
루트 프롬프트는 자주 변경되지 않으므로 다른 서버에 동일한 복사본이 있다는 것을 알 수 있습니다.
위에서 언급한 것처럼 컴파일된 기본값에 의존하기보다는 루트 힌트 파일을 사용해야 합니다.
배송 대리점
필요한 경우 전달자를 구성할 수 있습니다. 루트 서버에서 소량의 트래픽을 멀리하여 업스트림 서버로 직접 보내지만 서버 수가 적은 경우에는 큰 문제가 되지 않습니다. 일반적으로 전달자를 구성하고 최신 상태로 유지하며 전달자가 실패할 경우 서버 실패의 위험을 감수하는 것은 가치가 없습니다. 수백 또는 수천 대의 서버를 관리하고 있거나 최종 사용자 시스템에서 사용할 기본 구성을 생성하고 있다면 반드시 고려해 볼 것입니다.